自シングル・サインオンシステム利用者が、相手シングル・サインオンシステムのサービスを利用する場合、自シングル・サインオンシステムで管理しているユーザIDやロールなどのユーザ情報が、相手シングル・サインオンシステムに通知され、相手シングル・サインオンシステムでは、通知されたユーザ情報を元に利用者のアクセスが制御されます。
また、相手シングル・サインオンシステム利用者が、自シングル・サインオンシステムのサービスを利用する場合も同様に、相手シングル・サインオンシステムのユーザ情報は、自シングル・サインオンシステムに通知され、自シングル・サインオンシステムでは、取得したユーザ情報を元に利用者のアクセスを制御します。
しかし、ユーザ情報は、各システムによって独自に管理されており、別システムでそのままアクセス制御できるとは限りません。また、システム内で重要な情報を管理していた場合、そのまま通知してしまうと、セキュリティ上、問題となる場合があります。
上記のような問題点を回避するために、認証サーバ間連携を行う場合、SSO管理者は、ユーザ情報カスタマイズ定義ファイルを使用して、ユーザ情報を変換するルールを設定し、ユーザ情報を運用に合わせて変換してください。
ユーザ情報は、以下の場合に変換されます。
相手シングル・サインオンシステムへのユーザ情報の送信時
相手シングル・サインオンシステムからのユーザ情報の受信時
また、カスタマイズモジュールを使用することで、変換ルールを拡張し、ユーザ情報を詳細にカスタマイズすることもできます。
ユーザ情報カスタマイズ定義ファイルへの変換ルールの設定方法、およびカスタマイズモジュールの作成方法については、“7.4.1 ユーザ情報のカスタマイズ”を参照してください。
通知するユーザ情報は、セキュリティを考慮し、必要に合わせて変換してください。
業務サーバ上のWebアプリケーションでユーザ情報を利用している場合、Webアプリケーションには変換されたユーザ情報が通知されます。Webアプリケーションでのユーザ情報の利用方法を考慮(例えば、ユーザIDの一意性の必要など)して、変換してください。
以下にロール名、およびユーザIDを変換する場合の変換ルールの例を示します。
ユーザ情報 | 変換ルール | |||
自シングル・サインオンシステム | 相手シングル・サインオンシステム | |||
変換前 | 変換後 | 変換前 | 変換後 | |
ロール名 | “一般利用者” | “role_no_1” | “role_no_1” | “guest” |
“管理者” | “role_no_2” | “role_no_2” | “admin” | |
ユーザID | 変換なし | ユーザID | “partner_”+ユーザID |
ロール名の変換ルール例
自シングル・サインオンシステムで管理しているロール名“一般利用者”を“role_no_1”に変換し、相手シングル・サインオンシステムに通知します。これによって、ロール名“一般利用者”を隠蔽します。
相手シングル・サインオンシステムでは、受け取ったロール名“role_no_1”を、相手シングル・サインオンシステムで管理しているロール名“guest”に変換します。
ユーザIDの変換ルール例
本例では、自シングル・サインオンシステムでユーザIDを変換せず、そのまま相手シングル・サインオンシステムに通知します。
相手シングル・サインオンシステムでは、自シングル・サインオンシステムからユーザIDを取得する時に、プレフィックス“partner_”をユーザIDに付加するよう変換します。これによって、サービス利用者を自シングル・サインオンシステム利用者と相手シングル・サインオンシステム利用者に区別します。
上記変換ルールにてユーザ情報を変換し、通知する場合に、自シングル・サインオンシステム利用者tarouが、相手シングル・サインオンシステムのサービスを利用する際のユーザ情報の流れを図に示します。
なお、tarouのユーザ情報が以下の場合を例に説明します。
ユーザ情報 | 設定値 |
ユーザID | tarou |
ロール名 | 一般利用者 |