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. 変更の保存」をクリックします。

現在、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製品を使用した開発の詳細を確認するには、次のサイトを参照してください: