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にサインインできるようにします。
  • ユーザーがエンド・アプリケーションにサインインできるようにします。
  1. まず、OCI IAMアイデンティティ・ドメインからメタデータをダウンロードします。
  2. 次の数ステップで、ADFSでリライイング・パーティを作成および構成します。
  3. ADFSで、メタデータを使用してOCI IAMでSSOを設定します。
  4. ADFSで、属性およびクレームを編集して、電子メール名をユーザーの識別子として使用します。
  5. ADFSで、ユーザーをアプリケーションに追加します。
  6. 次のステップでは、アイデンティティ・ドメインに戻って設定および構成を終了します。OCI IAMで、デフォルトのIdPポリシーを更新してADFSを追加します。
  7. フェデレーテッド認証が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アイデンティティ・ドメインの両方に同じ電子メール・アドレスを持つユーザーが存在する必要があります。このタスクでは、このようなユーザーが両方のシステムに存在することを確認します。

  1. Microsoft Active Directoryユーザーとコンピュータ・ユーティリティを開きます。Windows 2016 Serverで、「Server Manager」「ツール」「Active Directoryユーザーとコンピュータ」の順に選択します。
  2. 「従業員」フォルダで、使用するユーザーをダブルクリックします。ユーザーの電子メール・アドレスを書き留めます。
    ADFS USER(adfsuser01@gmail.com)

    Active Directoryユーザーとコンピュータ・ユーティリティのユーザー

    ノート

    OCI IAMドメイン内の複数のユーザーが同じ電子メール・アドレスを持っている場合、サインインするユーザーを判別できないため、SAML SSOは失敗します。

    • ユーザーの電子メール・アドレスは、OCI IAMの同じユーザーのエントリを使用してADFSにサインインしたユーザーをリンクするために使用されます。
    • 接続をテストするADFSユーザーがない場合は、接続を作成できます。
  3. ブラウザで、コンソールURLを入力してOCI IAMコンソールにアクセスします:

    https://cloud.oracle.com

  4. クラウド・アカウント名(テナンシ名とも呼ばれる)を入力し、「次」を選択します。
  5. ユーザー名とパスワードでサインインします。
  6. 使用するドメインを選択します。
  7. 「ユーザー」を選択します。
  8. 検索フィールドに、Microsoft Active Directoryから記録した電子メール・アドレスを入力します。
  9. 検索結果で、Microsoft Active Directoryのユーザーと同じ電子メール・アドレスを持つユーザーが存在することを確認します。
    ノート

    ユーザーがOCI IAMに存在しない場合は、「追加」を選択し、Microsoft Active Directoryと同じ電子メール・アドレスでユーザーを作成します。
ADFSが実行されていることを確認します

ADFSが実行中であり、ユーザーが正常にサインインできることを確認します。

  1. ブラウザで、次のURLを使用してADFSにサインインします。
    https://adfs.example.com/adfs/ls/IdpInitiatedSignOnPage
    ここで、adfs.example.comはADFSホスト名です。
  2. 必要に応じて、「このサイトにサインイン」を選択します。「サインイン」を選択します。
  3. ADFSとOCI IAMの両方に存在するユーザー(この例ではadfsuser01)のMicrosoft Active Directory資格証明を入力し、「サインイン」を選択します。

    ADFSサインイン・ページ

  4. メッセージYou are signed inが表示されます。

    ADFSはサインインを確認しています

1.OCI IAMでのIdPとしてのADFSの作成
  1. ブラウザで、次のURLを使用してADFSにサインインします。
    https://adfs.example.com/FederationMetadata/2007-06/FederationMetadata.xml
    ここで、adfs.example.comはADFSホスト名です。
  2. FederationMetadata.xmlファイルを保存します。このファイルを使用して、ADFSをOCI IAMに登録します。
  3. OCIコンソールで、作業するドメインに移動します。必要なドメインを見つけるには、コンパートメントの変更が必要になる場合があります。「セキュリティ」「アイデンティティ・プロバイダ」の順に選択します。
  4. 「IdPの追加」「SAML IdPの追加」の順に選択します。
  5. SAML IdPの名前を入力します(例: ADFS_IdP)。「次」を選択します。
  6. 「IdPメタデータの入力」を選択します。
  7. 「SAMLメタデータのエクスポート」を選択して、OCI IAMサービス・プロバイダ(SP)メタデータをダウンロードします。
    1. 「SAMLメタデータのエクスポート」ページの「自己署名証明書を含むメタデータ」で、「XMLのダウンロード」を選択します。
      ノート

      アイデンティティ・プロバイダがCAによって発行された証明書に対してCRLまたはOCSPチェックを実行する場合は、自己署名証明書でメタデータを使用します。このチュートリアルでは、ADFSは証明書パスの検証時にこれを実行します。
    2. ファイルを適切な場所に保存します。
    3. Metadata.xmlファイルを、ADFSが管理されているWindows Serverに転送します。このファイルを使用して、OCI IAMドメインをADFSに登録します。

    OCI IAMのSAMLメタデータのエクスポート

  8. 「SAMLメタデータのエクスポート」ページを閉じます。
  9. 「IdPメタデータのインポート」「アップロード」の順に選択します。前にADFSから保存したFederationMetadata.xmlファイルを選択し、「開く」「次へ」の順に選択します。
  10. Mapユーザー・アイデンティティで、次のように設定します。
    • 「リクエストされたNameID形式」で、Email addressを選択します。
    • 「アイデンティティ・プロバイダ・ユーザー属性」で、SAML assertion Name IDを選択します。
    • 「アイデンティティ・ドメイン・ユーザー属性」で、Primary email addressを選択します。

    SAMLアイデンティティ・プロバイダ属性

  11. 「次」を選択します。
  12. 「確認および作成」で構成を確認し、「IdPの作成」を選択します。
  13. 「アクティブ化」を選択します。
  14. 「IdPポリシー・ルールに追加」を選択します。ADFS IdPをIdPポリシーに追加すると、それをOCI IAMサインイン画面に表示できます。
  15. 「デフォルト・アイデンティティ・プロバイダ・ポリシー」を選択して開き、ルールの「アクション」メニュー(アクション・メニュー)を選択して、「IdPルールの編集」を選択します。

    「IdPルールの編集」が表示されているコンテキスト・メニュー

  16. 「アイデンティティ・プロバイダの割当て」を選択し、ADFS_IdPを選択してリストに追加します。

    デフォルトのIdPルールでのアイデンティティ・プロバイダとしてのADFSの追加

  17. 「Save Changes」を選択します。

現在、ADFSはOCI IAMにアイデンティティ・プロバイダとして登録されています。

次に、信頼できるリライイング・パーティとしてOCI IAMをADFSに登録します。

2. 信頼できるリライイング・パーティとしてのOCI IAMの登録

まず、OCI IAMをリライイング・パーティとしてADFSに登録します。次に、OCI IAMの請求ルールをリライイング・パーティとして構成します。

リライイング・パーティの登録

  1. ADFS管理ユーティリティを開きます。たとえば、Windows 2016 Server Managerユーティリティで、「ツール」「Microsoft Active Directory Federation Services Management」の順に選択します。
  2. 「アクション」「リライイング・パーティ信頼の追加」の順に選択します。
  3. 「リライイング・パーティ信頼の追加」ウィザード・ウィンドウで、「開始」を選択します。

    ADFSでのリライイング・パーティ信頼ウィザードの追加

  4. リライイング・パーティに関するデータをファイルからインポートし、「参照」を選択します。

    データソースの選択

  5. 以前にOCI IAMからダウンロードしたMetadata.xmlを選択し、「次へ」を選択します。
  6. 表示名(OCI IAMなど)を入力し、オプションで「ノート」に説明を入力します。「次」を選択します。

    表示名の設定

  7. 「終了」ステップに達するまでデフォルト・オプションに進み、「閉じる」を選択します。「要求ルールの編集」ウィンドウが開きます。

    「要求の編集」ウィンドウ

要求ルールの構成

要求ルールは、認証が成功した後にADFSからOCI IAMに送信されるサインイン・ユーザーに関する情報を定義します。ここでは、リライイング・パーティとして機能するOCI IAMの2つの要求ルールを定義します。

  • 電子メール: このルールは、ユーザーの電子メール・アドレスがSAMLアサーションのOCI IAMに送信されることを示します。
  • Name ID: このルールは、電子メール・ルールの結果がSAMLアサーションのサブジェクトNameID要素のOCI IAMに送信されることを示します。
  1. 「要求ルールの編集」ウィンドウで、「ルールの追加」を選択します。
  2. 要求規則テンプレートとして「LDAP属性を要求として送信」を選択し、「次へ」を選択します。
  3. 「ルール・タイプの選択」ページで、Eメール・ルールに関する次の情報を指定します。
    • クレーム・ルール名: Email
    • 属性ストア: Active Directory
    • LDAP属性の送信要求タイプへのマッピング:
      • LDAP属性: E-Mail-Addresses
      • 送信クレーム・タイプ: E-Mail Address

      「Add transform claim rule」ウィザードの「Choose Rule Type」ページ。

  4. 「終了」を選択します。
  5. 「要求ルールの編集」ウィンドウで、「ルールの追加」を選択して2番目の要求ルールを追加します。
  6. 要求ルール・テンプレートとして「Incoming Claimの変換」を選択し、「次へ」を選択します。
  7. 「ルール・タイプの選択」ページで、Name IDルールに関する次の情報を指定します。
    • 要求ルール名: Name ID
    • 受信要求タイプ: E-Mail Address
    • 出力要求タイプ: Name ID
    • 出力名IDの形式: Email

    「Add transform claim rule」ウィザードの「Choose Rule Type」ページ。

  8. 「終了」を選択します。
  9. 「Oracle Cloudの要求ルールの編集」ウィンドウで、EメールおよびName IDルールが作成されていることを確認します。

    両方の請求が存在することを確認します

これで、ADFSおよびOCI IAMにはSSOを確立するための十分な情報があり、統合をテストできます。

3.ADFSとOCI間のSSOのテスト

このタスクでは、OCI IAMとADFS間の認証をテストします。認証が成功した場合は、エンド・ユーザーのアイデンティティ・プロバイダを有効にします。

  1. ブラウザを再起動し、コンソールURLを入力してOCI IAMコンソールにアクセスします:

    https://cloud.oracle.com

  2. クラウド・アカウント名(テナンシ名とも呼ばれる)を入力し、「次」を選択します。
  3. ユーザー名とパスワードでサインインします。
  4. ADFS IdPを構成したドメインを選択します。
  5. 「セキュリティ」「アイデンティティ・プロバイダ」の順に選択します。
  6. ADFS IdPエントリを選択します。
  7. IdPの詳細ページで、「他のアクション」「ログインのテスト」の順に選択します。
  8. 下部までスクロールし、「ログインのテスト」を選択します。
  9. ADFSのサインイン・ページで、ADFSおよびOCI IAMに存在するユーザーでサインインします。

    ADFSサインイン・ページ

  10. 「接続に成功しました」という確認メッセージが表示されます。

    確認メッセージ

次の手順

完了しました。ADFSとOCI IAMの間にSSOが正常に設定されました。

Oracle製品を使用した開発の詳細を確認するには、次のサイトを参照してください: