シングルサインオン
Version 22.0.8483
Version 22.0.8483
シングルサインオン
CData Sync は、OpenID 規格によるシングルサインオン(SSO)をサポートします。Azure Active Directory(Azure AD)のようなOpenID を実装したID プロバイダーは、Sync のSSO プラットフォームとして利用可能です。
概要
シングルサインオンを有効にするには、設定ページのSSO タブで項目を設定する必要があります。これらの個々の設定については、次のセクションで説明します。
SSO の設定後、Sync で作成されるユーザーにはフェデレーションID を指定する必要があります。このフェデレーションID は、Sync のユーザー名とID プロバイダーエンティティを関連付けます。Sync ユーザーがアプリケーションにログインしようとすると、SSO プラットフォームにリダイレクトされ、そこで適切なID の資格情報を入力する必要があります。
SSO が設定され、Sync ユーザーがID プロバイダーと関連付けるためのフェデレーションID 値を取得したら、SSO ユーザー管理のための追加の高度な設定はSSO プラットフォームで直接実行する必要があります。
Note:現在、Sync は個人ユーザーのみサポートしており、ユーザーグループはサポートしていません。SSO プラットフォームがユーザーグループへのアクセスを提供する場合、グループ内の個々のユーザーは、ログインするためにSync の設定ページでユーザーとして追加される必要があります。各ユーザーは、ID プロバイダーでフェデレーションID を参照する必要があります(後述)。
SSO の設定
このセクションでは、SSO の各設定と、それらがSync で何を意味しているかについての詳細を説明します。これらの設定の詳細は、利用するID プロバイダーに依存する場合があります。具体的なAzure AD のガイドは、このページの後半で説明しています。
SSO URI
オーディエンスURI
この設定値は、SSO ログイントークンの対象となる受信者を識別します。すなわち、SSO プラットフォームによって生成されたトークンが、Sync で使用するためのものであることを保証します。この値を、SSO プラットフォームでSync を信頼できるアプリケーションとして識別するURI に設定します(例えば、SSO プラットフォームがSync 用に生成するアプリケーションID を設定します)。
この値をカンマ区切りのリストで設定すると、複数の関連するURI に対応することができます。
認可URL
この設定値は、ユーザーがID プロバイダーを経由して認可を実行する必要があるURL です。SSO ユーザーがSync にログインしようとすると、アプリケーションはユーザーをこのURL にリダイレクトし、ユーザーはSSO プラットフォームの資格情報を入力することができます。
通常、この値には利用するID プロバイダーのOAuth 認可エンドポイントを設定する必要があります。
トークンURL
この設定値は、ID プロバイダーから安全な認証トークンを取得することができるURL です。ユーザーが認可URL 設定を経由して認証したのち、ID プロバイダーはこのURL にリダイレクトし、ユーザーが入力した資格情報からトークンを生成します。
ログオフURL
この設定値は、アプリケーションからログアウトした後のSync ユーザーのリダイレクト先を決定します。
リダイレクトURI
リダイレクトURI は(Sync ではなく)ID プロバイダーで設定され、ユーザーがID プロバイダーに対して認証したのち、どこに戻るかを指定します。
Sync のための適切なリダイレクトURI の構文は以下のとおりです。
base_sync_url/src/ssoCallback.rst
例えば、Sync がポート8019 で_mydomain_.com にホストされている場合、以下のリダイレクトURI を使用する必要があります。
https://mydomain.com:8019/src/ssoCallback.rst
SSO 発行者の設定
発行者証明書
この設定値は、ID プロバイダーがJSON Web Token(JWT)で署名するために使用する証明書の公開部分です。この値は、要求を受けたID プロバイダーによって生成されたトークンのみが受け入れられることを保証するのに役立ちます。
トークン発行者識別子
この設定値は、ID プロバイダーがJWT トークンを生成するために使用する識別子です。Sync は、トークンがこの識別子を含むことを確認するために検証します。この値は、要求を受けたID プロバイダーによって生成されたトークンのみが受け入れられることを保証するのに役立ちます。
フェデレーションID の設定
Key Claim
この設定では、ID プロバイダーからどの値をフェデレーションID として扱うべきかを指定します。具体的には、ID プロバイダーからSync ユーザー名へユーザーをマッピングする際に、フェデレーションID として使用するクレームを指定します。
Sync ユーザーがID プロバイダーを経由してログインすると、Sync はそのローカルユーザーのフェデレーションID とプロバイダーからのアイデンティティクレームを比較します。Key Claim 設定は、Sync がこの比較に使用するID プロバイダーからの値を決定します。
このフィールドの推奨値はoid です。ただし、ユーザー固有の値であれば、Key Claim に任意の値を設定することができます。
OAuth の設定
OAuth クライアントID
この設定値は、ID プロバイダーで作成されるOAuth アプリケーションに関連付けられたクライアントId です。
OAuth クライアントシークレット
この設定値は、ID プロバイダーで作成されるOAuth アプリケーションに関連付けられたクライアントシークレットです。
デフォルトスコープ
この設定値は、ID プロバイダーに要求するスコープ(すなわち、アクセス許可のセット)のスペース区切りのリストです。通常、スコープリストには少なくともprofile openidが含まれ、本人確認を要求する必要があります。
その他の設定
トークン署名アルゴリズム
この設定は、署名されたJWT トークンからどの署名アルゴリズムを受け入れるかを決定します。署名のないトークンは認められません。
Azure Active Directory の設定
このセクションでは、Azure AD をID プロバイダーとして利用する場合の各設定値について説明します。
- オーディエンスURI - 必要なURI は1つだけで、Azure AD がSync に割り当てるアプリケーションId(クライアントId)です。
- 認可URL - このURL は、Azure AD のエンドポイントリストに表示されるOAuth 2.0 承認エンドポイント(v2)と同じです。
- デフォルトスコープ - profile およびopenid のみが必要です。必要に応じて、さらにスコープを追加することができます。
- 発行者証明書 - Azure AD が使用する可能性のある公開証明書は、こちらから入手できます。
- Key Claim - この値は、特別な状況を除いて、オブジェクトId のoid に設定します。
- OAuth クライアントID - この値は、プラットフォームでOAuth アプリケーションを作成するとAzure AD によって割り当てられます。
- OAuth クライアントシークレット - この値は、プラットフォームでOAuth アプリケーションを作成するとAzure AD によって割り当てられます。
- トークン発行者識別子 - この値は、次のサブセクションで説明するAzure AD メタデータドキュメントで取得できます。
- トークン署名アルゴリズム - デフォルト値RS256 を使用します。
- トークンURL - この値は、次のサブセクションで説明するAzure AD メタデータドキュメントで取得できます。
- ログオフURL - この値は、ユーザーがログオフした後に転送される任意のURL です。
メタデータドキュメント
Azure AD ポータルには_メタデータドキュメント_があり、SSO を設定する際に使用する重要な値がリストされています。ポータルでエンドポイント -> OpenID メタデータドキュメントに移動して、このドキュメントを見つけます。
先述のトークン発行者識別子およびトークンURL フィールドの値について、このドキュメントをチェックしてAzure AD の設定に適切な値が含まれていることを確認してください。
リダイレクトURI
Azure AD では、ユーザーが認証された後、ログイントークンがSync にリダイレクトされるようにリダイレクトURI を設定する必要があります。Sync のための適切なリダイレクトURI の構文は以下のとおりです。
base_sync_url/src/ssoCallback.rst
例えば、Sync がポート8019 で_mydomain_.com にホストされている場合、以下のリダイレクトURI を使用します。
https://mydomain.com:8019/src/ssoCallback.rst
Note:このURI は大文字と小文字を区別します。大文字と小文字が一致していることを確認してください。