シングルサインオン(SSO)とは?
シングルサインオン(SSO)とは、ユーザーが複数のアプリケーションやシステムにログインする際に、一度の認証ですべてのアプリケーションやシステムにアクセスできる仕組みです。
ユーザーは、各アプリケーションやシステムに個別のユーザーIDとパスワードを設定する必要がなく、利便性が向上します。また、SSOを導入することで、セキュリティも向上します。ユーザーが各アプリケーションやシステムに個別のユーザーIDとパスワードを設定する必要がなくなるため、パスワードの漏洩リスクが低減します。
シングルサインオン(SSO)の認証と認可の違い
- 認証とは、ユーザーがシステムやサービスにアクセスする際に、そのユーザーが誰であるかを特定するプロセスです。認証には、ユーザーIDとパスワードの入力、指紋認証、顔認証などの方法があります。
- 認可とは、ユーザーがシステムやサービスにアクセスする際に、そのユーザーにどのような権限を付与するかを決定するプロセスです。認可は、ユーザーの役職、所属部署、アクセスするデータの種類などに基づいて決定されます。
シングルサインオン(SSO)の導入メリット
ユーザーは、各アプリケーションやシステムに個別のユーザーIDとパスワードを設定する必要がなく、利便性が向上します。ユーザーは、一度のログインですべてのアプリケーションやシステムにアクセスできるため、ログイン時間の削減やパスワードの管理が楽になります。
ユーザーが各アプリケーションやシステムに個別のユーザーIDとパスワードを設定する必要がなくなるため、パスワードの漏洩リスクが低減します。ユーザーは、パスワードを使い回す可能性がなくなるため、パスワードの漏洩による不正アクセスのリスクが軽減されます。
IT管理者は、各アプリケーションやシステムのユーザーアカウントを管理する必要がなくなるため、管理の効率化が図れます。IT管理者は、SSOを導入することで、ユーザーアカウントの作成や削除、パスワードの変更などの作業を自動化することができます。
SSOを導入することで、パスワード管理ツールやID管理ツールなどのコストを削減することができます。また、SSOを導入することで、ユーザーサポートのコストも削減することができます。
シングルサインオン(SSO)の導入デメリット
SSOシステムが攻撃を受けると、ユーザーのアカウント情報やパスワード情報が漏洩する可能性があります。Google Workspace では不正ログイン防止のために2段階認証機能がありますので、セキュリティを高めるためにも設定しましょう。
2段階認証プロセスについてはこちらから
Google Workspace のシングルサインオン(SSO)を設定する手順
それでは、実際にシングルサインオンを設定していきます。
今回は、Google Workspace をIdp(IDプロバイダ)として他のクラウドサービス(SP:サービスプロバイダ)へログインするための設定方法です。
200以上のクラウドサービスの中からシングルサインオンするために必要な設定がプリセットされているものを選択する方法と、プリセットがないサービスに対してシングルサインオンを設定する際に使用する「カスタムSAML」の2つがありますが、ここでは「カスタムSAML」の設定方法について解説していきます。
カスタムSAMLを設定するにあたって、以下の要件を想定し設定していきます。
・ログインIDがメールアドレスではない(NameIDの値として特定の値を指定したい)
例:Google Workspace はメールアドレスだが、連携先のクラウドサービスでは
メールアドレス@より前の値をログインIDとして指定している。
・プリセットされたアプリ一覧に追加したいアプリが存在しない
例:自社のクラウドサービスなど
1. ユーザー情報に対してカスタム属性を追加する(必要に応じて)
メールアドレス以外の値をログインIDとして指定するために、ユーザー情報のカスタム属性を追加します。
「ディレクトリ」>「ユーザー」>「その他のオプション」>「カスタム属性を管理します」>「カスタム属性を追加」
2. 追加したカスタム属性に値を指定する
[1]で作成したカスタム属性に対して、連携したい値を指定します。
3. カスタムSAMLアプリの追加
ここから実際にカスタムSAMLアプリを追加していきます。
「アプリ」>「ウェブアプリとモバイルアプリ」>「カスタムSAML アプリの追加」
4. 連携に必要な情報の取得
アプリ名を入力後、Google のSSO URLやエンティティID、証明書の情報を取得します。
連携先がメタデータでの取り込みが可能な場合は「メタデータをダウンロード」からファイルをダウンロードすることが可能です。
5. 連携先情報の入力
クラウドサービス(サービスプロバイダ)側のACS URLやエンティティIDを入力します。
名前ID(NameID)には[1]で作成したカスタム属性を指定します。
その他、必要情報を入力後、「完了」をクリックします。
6. クラウドサービス側の設定
最後に、事前に[4]でコピーしたGoogle の情報をクラウドサービス側へ設定し、作業完了です。
以下はCybozu を例としています。
補足
最後にシングルサインオンを設定するにあたっていくつか補足をしていきます。
1. まずは社内同意を得る。
※基本的には利用者からすると便利になる。
2. シングルサインオンできなかった時に、クラウドサービス側で回避方法を事前に確認する。
※管理者だけ従来のIDとパスワードでログインできるといった仕組みもある。
3. シングルサインオンできない場合は、ログインIDとして正しい値が設定されているか確認する。
シングルサインオンを設定する際に、ACSやEntity ID、NameIDといったキーワードがでてきますが、それらの意味を理解しておくことでスムーズに設定できます。
ACS URL:Google Workspace (Idp)からの応答(SAMLレスポンス)を受け取るURL
EntityID:サービスプロバイダ(SP)の一意の識別子
NameID:ユーザーを指定するための識別子
メタデータ:上記の情報に加えて、証明書情報が含まれているものもある
Google Workspace のSSO エディションによる違い
- Google Idpを使用したSSO
Essentials Starter を除くすべてのエディションで、Google WorkspaceのすべてのアプリケーションへのSSOがサポートされています。
- サードパーティーIdpを使用したSSO
すべてのエディションで、Google WorkspaceのすべてのアプリケーションへのSSOがサポートされています。
※Essentials StarterはMicrosoft(OIDC)のみ
- サポート
Essentials Starter を除くすべてのエディションで、24時間365日のサポートが提供されます。
Google Workspace のSSO と2段階認証プロセス
Google Workspace の2段階認証プロセスについて、くわしくはこちらの記事をご参照ください。
【管理者向け】Google Workspace の 2 段階認証プロセス導入手順を解説
Google Workspace の2段階認証プロセスとSSOはどちらも、アカウントのセキュリティを強化する有効な手段です。どちらがおすすめかは、組織のニーズによって異なります。
2段階認証プロセスは、パスワードが盗まれた場合でも、アカウントへの不正アクセスを防ぐことができるため、セキュリティを重視する組織におすすめです。一方、SSOは、ユーザーが複数のアプリケーションやシステムに簡単にログインできるため、利便性を重視する組織におすすめです。
以下のような組織には2段階認証プロセスがおすすめです。
- 機密情報を取り扱う組織
- 多くのユーザーが利用する組織
- サイバー攻撃のリスクが高い組織
以下のような組織にはSSOがおすすめです。
- 多くのアプリケーションやシステムを利用する組織
- ユーザーの利便性を重視する組織
- 複数の組織が連携して業務を行う組織
- 最終的に、どちらの機能を使用するかは、組織のニーズによって異なります。
まとめ
本記事では、Google Workspace のシングルサインオン(SSO)のメリット、デメリット、そして設定手順について詳しく解説しました。SSOは、一度のログインで複数のサービスにアクセスできるようにする認証システムで、ログイン情報の管理を一元化し、パスワードの忘失や管理の手間を大幅に減らすことができます。また、セキュリティ面でも、一度の認証で全てのアプリケーションにアクセスできるため、不正アクセスのリスクも低減されます。
しかしながら、SSOにもデメリットが存在します。それは、一度認証情報が漏洩すると、全てのアプリケーションにアクセス可能となってしまうというリスクです。このようなメリットとデメリットを理解した上で、自社の状況に合わせた適切な設定が求められます。
吉積情報では、Google Workspace をよりセキュアに利用できるツールや、セキュアな運用のための管理者講習などをご用意しております。
吉積情報へのお問い合わせはこちら(https://www.yoshidumi.co.jp/contact)