OCIとADFS間のSSO
このチュートリアルでは、アイデンティティ・プロバイダ(IdP)としてADFSを使用して、OCI IAMとADFSの間のSSOを構成します。
この30分間のチュートリアルでは、サービス・プロバイダ(SP)として機能するOCI IAMを、IdPとして機能するADFSと統合する方法を示します。ADFSとOCI IAMの間のフェデレーションを設定すると、ADFSが認証するユーザー資格証明を使用して、OCIのサービスおよびアプリケーションへのユーザーのアクセスが可能になります。
このチュートリアルでは、OCI IAMのIdPとしてADFSを設定する方法について説明します。
OCI IAMは、SAML 2.0 IdPsとの統合を提供します。この統合:
- ADFSなどのIdPとしてSAML 2.0と互換性のあるフェデレーテッド・シングル・サインオン(SSO)ソリューションと連携します。
- ユーザーがADFS資格証明を使用してOCIにサインインできるようにします。
- ユーザーがエンド・アプリケーションにサインインできるようにします。
- まず、OCI IAMアイデンティティ・ドメインからメタデータをダウンロードします。
- 次の数ステップで、ADFSでリライイング・パーティを作成および構成します。
- ADFSで、メタデータを使用してOCI IAMでSSOを設定します。
- ADFSで、属性およびクレームを編集して、電子メール名をユーザーの識別子として使用します。
- ADFSで、ユーザーをアプリケーションに追加します。
- 次のステップでは、アイデンティティ・ドメインに戻って設定および構成を終了します。OCI IAMで、デフォルトのIdPポリシーを更新してADFSを追加します。
- フェデレーテッド認証がOCI IAMとADFS間で機能することをテストすること。
このチュートリアルは、アイデンティティ・ドメインのあるIAMに固有です。
このチュートリアルを実行するには、次のものが必要です:
- 有料Oracle Cloud Infrastructure (OCI)アカウントまたはOCIトライアル・アカウント。Oracle Cloud Infrastructure Free Tierを参照してください。
- OCI IAMアイデンティティ・ドメインのアイデンティティ・ドメイン管理者ロール。管理者ロールの理解を参照してください。
- オンプレミスのADFSインストール。 ノート
このチュートリアルでは、Microsoft Windows Server 2016 R2に付属のADFSソフトウェアの使用について説明します。 - また、OCIとADFSに同じユーザーが存在し、ADFSが機能していることを確認する必要があります。
同じEメール・アドレスのユーザーが両方のシステムに存在することを確認します。
SAML SSOがADFSとOCI IAM間で機能するには、Microsoft Active DirectoryドメインとOCI IAMアイデンティティ・ドメインの両方に同じ電子メール・アドレスを持つユーザーが存在する必要があります。このタスクでは、このようなユーザーが両方のシステムに存在することを確認します。
- Microsoft Active Directoryユーザーとコンピュータ・ユーティリティを開きます。Windows 2016 Serverで、「Server Manager」、「ツール」、「Active Directoryユーザーとコンピュータ」の順にクリックします。
-
「従業員」フォルダで、使用するユーザーをダブルクリックします。ユーザーの電子メール・アドレスを書き留めます。
ADFS USER(adfsuser01@gmail.com)
ノート
OCI IAMドメイン内の複数のユーザーが同じ電子メール・アドレスを持っている場合、サインインするユーザーを判別できないため、SAML SSOは失敗します。
- ユーザーの電子メール・アドレスは、OCI IAMの同じユーザーのエントリを使用してADFSにサインインしたユーザーをリンクするために使用されます。
- 接続をテストするADFSユーザーがない場合は、接続を作成できます。
- ブラウザで、コンソールURLを入力してOCI IAMコンソールにアクセスします:
- クラウド・アカウント名(テナント名とも呼ばれる)を入力し、「次」をクリックします。
- ユーザー名とパスワードでサインインします。
- 使用するドメインを選択します。
- 「ユーザー」をクリックします。
- 検索フィールドに、Microsoft Active Directoryから記録した電子メール・アドレスを入力します。
- 検索結果で、Microsoft Active Directoryのユーザーと同じ電子メール・アドレスを持つユーザーが存在することを確認します。ノート
ユーザーがOCI IAMに存在しない場合は、「追加」をクリックして、Microsoft Active Directoryと同じ電子メール・アドレスでユーザーを作成します。
ADFSが実行中であり、ユーザーが正常にサインインできることを確認します。
- ブラウザで、次のURLを使用してADFSにサインインします。
ここで、https://adfs.example.com/adfs/ls/IdpInitiatedSignOnPage
adfs.example.com
はADFSホスト名です。 - 必要に応じて、「このサイトにサインイン」を選択します。サインインをクリックします。
- ADFSとOCI IAMの両方に存在するユーザー(この例では
adfsuser01
)のMicrosoft Active Directory資格証明を入力し、「サインイン」をクリックします。 - メッセージ
You are signed in
が表示されます。
- ブラウザで、次のURLを使用してADFSにサインインします。
ここで、https://adfs.example.com/FederationMetadata/2007-06/FederationMetadata.xml
adfs.example.com
はADFSホスト名です。 FederationMetadata.xml
ファイルを保存します。このファイルを使用して、ADFSをOCI IAMに登録します。- OCIコンソールで、作業するドメインに移動します。必要なドメインを見つけるには、コンパートメントの変更が必要になる場合があります。「セキュリティ」、「アイデンティティ・プロバイダ」の順にクリックします。
- 「IdPの追加」をクリックし、「SAML IdPの追加」をクリックします。
- SAML IdPの名前を入力します(例:
ADFS_IdP
)。「次へ」をクリックします。 - 「IdPメタデータの入力」をクリックします。
- 「SAMLメタデータのエクスポート」をクリックして、OCI IAMサービス・プロバイダ(SP)メタデータをダウンロードします。
- 「SAMLメタデータのエクスポート」ページの「自己署名証明書を含むメタデータ」で、「XMLのダウンロード」をクリックします。ノート
アイデンティティ・プロバイダがCAによって発行された証明書に対してCRLまたはOCSPチェックを実行する場合は、自己署名証明書でメタデータを使用します。このチュートリアルでは、ADFSは証明書パスの検証時にこれを実行します。 - ファイルを適切な場所に保存します。
Metadata.xml
ファイルを、ADFSが管理されているWindows Serverに転送します。このファイルを使用して、OCI IAMドメインをADFSに登録します。
- 「SAMLメタデータのエクスポート」ページの「自己署名証明書を含むメタデータ」で、「XMLのダウンロード」をクリックします。
- 「SAMLメタデータのエクスポート」ページを閉じます。
- 「IdPメタデータのインポート」をクリックし、「アップロード」をクリックします。前にADFSから保存した
FederationMetadata.xml
ファイルを選択し、「開く」、「次へ」の順にクリックします。 - Mapユーザー・アイデンティティで、次のように設定します。
- 「リクエストされたNameID形式」で、
Email address
を選択します。 - 「アイデンティティ・プロバイダ・ユーザー属性」で、
SAML assertion Name ID
を選択します。 - 「アイデンティティ・ドメイン・ユーザー属性」で、
Primary email address
を選択します。
- 「リクエストされたNameID形式」で、
- 「次へ」をクリックします。
- 「確認および作成」で構成を確認し、「IdPの作成」をクリックします。
- 「アクティブ化」をクリックします。
- 「IdPポリシー・ルールに追加」をクリックします。ADFS IdPをIdPポリシーに追加すると、それをOCI IAMサインイン画面に表示できます。
-
「デフォルト・アイデンティティ・プロバイダ・ポリシー」をクリックして開き、ルールの
をクリックして、「IdPルールの編集」をクリックします。 -
「アイデンティティ・プロバイダの割当て」をクリックし、ADFS_IdPをクリックしてリストに追加します。
- 「変更の保存」をクリックします。
現在、ADFSはOCI IAMにアイデンティティ・プロバイダとして登録されています。
次に、信頼できるリライイング・パーティとしてOCI IAMをADFSに登録します。
まず、OCI IAMをリライイング・パーティとしてADFSに登録します。次に、OCI IAMの請求ルールをリライイング・パーティとして構成します。
リライイング・パーティの登録
- ADFS管理ユーティリティを開きます。たとえば、Windows 2016 Server Managerユーティリティで、「ツール」をクリックし、「Microsoft Active Directory Federation Services Management」をクリックします。
- 「アクション」をクリックし、「リライイング・パーティの信頼の追加」をクリックします。
-
リライイング・パーティ信頼の追加ウィザード・ウィンドウで、「開始」をクリックします。
-
ファイルからリライイング・パーティに関するデータのインポートを選択し、「参照」をクリックします。
- 以前にOCI IAMからダウンロードした
Metadata.xml
を選択し、「次へ」をクリックします。 -
表示名(
OCI IAM
など)を入力し、オプションで「ノート」に説明を入力します。次へをクリックします -
「終了」ステップに達するまでデフォルト・オプションに進み、「閉じる」をクリックします。「要求ルールの編集」ウィンドウが開きます。
要求ルールの構成
要求ルールは、認証が成功した後にADFSからOCI IAMに送信されるサインイン・ユーザーに関する情報を定義します。ここでは、リライイング・パーティとして機能するOCI IAMの2つの要求ルールを定義します。
- 電子メール: このルールは、ユーザーの電子メール・アドレスがSAMLアサーションのOCI IAMに送信されることを示します。
- Name ID: このルールは、電子メール・ルールの結果がSAMLアサーションのサブジェクト
NameID
要素のOCI IAMに送信されることを示します。
- 「要求規則の編集」ウィンドウで、「規則の追加」をクリックします。
- 要求ルール・テンプレートとして「要求としてLDAP属性を送信」を選択し、「次へ」をクリックします。
- 「ルール・タイプの選択」ページで、Eメール・ルールに関する次の情報を指定します。
- クレーム・ルール名:
Email
- 属性ストア:
Active Directory
- LDAP属性の送信要求タイプへのマッピング:
- LDAP属性:
E-Mail-Addresses
- 送信クレーム・タイプ:
E-Mail Address
- LDAP属性:
- クレーム・ルール名:
- 「終了」をクリックします。
- 「要求規則の編集」ウィンドウで、「規則の追加」をクリックして2番目の要求規則を追加します。
- 要求ルール・テンプレートとして「Incoming Claimの変換」を選択し、「次へ」をクリックします。
- 「ルール・タイプの選択」ページで、Name IDルールに関する次の情報を指定します。
- 要求ルール名:
Name ID
- 受信要求タイプ:
E-Mail Address
- 出力要求タイプ:
Name ID
- 出力名IDの形式:
Email
- 要求ルール名:
- 「終了」をクリックします。
- 「Oracle Cloudの要求ルールの編集」ウィンドウで、EメールおよびName IDルールが作成されていることを確認します。
これで、ADFSおよびOCI IAMにはSSOを確立するための十分な情報があり、統合をテストできます。
このタスクでは、OCI IAMとADFS間の認証をテストします。認証が成功した場合は、エンド・ユーザーのアイデンティティ・プロバイダを有効にします。
- ブラウザを再起動し、コンソールURLを入力してOCI IAMコンソールにアクセスします:
- クラウド・アカウント名(テナンシ名とも呼ばれる)を入力し、「次」をクリックします。
- ユーザー名とパスワードでサインインします。
- ADFS IdPを構成したドメインを選択します。
- 「セキュリティ」、「アイデンティティ・プロバイダ」の順にクリックします。
- ADFS IdPエントリをクリックします。
- IdPの詳細ページで、「その他のアクション」をクリックし、「ログインのテスト」をクリックします。
- 下部までスクロールし、「ログインのテスト」をクリックします。
- ADFSのサインイン・ページで、ADFSおよびOCI IAMに存在するユーザーでサインインします。
- 「接続に成功しました」という確認メッセージが表示されます。
完了しました。ADFSとOCI IAMの間にSSOが正常に設定されました。
Oracle製品を使用した開発の詳細を確認するには、次のサイトを参照してください: