OCIとMicrosoft Entra ID間のSSO

このチュートリアルでは、アイデンティティ・プロバイダ(IdP)としてEntra IDを使用して、OCI IAMとMicrosoft Entra IDの間のSSOを構成します。

この30分間のチュートリアルでは、サービス・プロバイダ(SP)として機能するOCI IAMをEntra IDと統合し、IdPとして機能する方法を示します。Entra IDとOCI IAMの間のフェデレーションを設定すると、Entra IDが認証するユーザー資格証明を使用して、OCIのサービスおよびアプリケーションへのユーザーのアクセスが可能になります。

このチュートリアルでは、OCI IAMのIdPとしてのEntra IDの設定について説明します。

  1. まず、OCI IAMアイデンティティ・ドメインからメタデータをダウンロードします。
  2. 次のいくつかのステップでは、Entra IDでアプリケーションを作成して構成します。
  3. Entra IDで、メタデータを使用してOCI IAMでSSOを設定します。
  4. Entra IDで、属性およびクレームを編集して、電子メール名がユーザーの識別子として使用されるようにします。
  5. 「Entra ID」で、ユーザーをアプリに追加します。
  6. 次のステップでは、アイデンティティ・ドメインに戻って設定を完了し、configuration.In OCI IAMで、デフォルトのIdPポリシーを更新してEntra IDを追加します。
  7. フェデレーテッド認証がOCI IAMとEntra ID間で機能することをテストします
ノート

このチュートリアルは、アイデンティティ・ドメインのIAMに固有です。
始める前に

このチュートリアルを実行するには、次のものが必要です:

  • 有料Oracle Cloud Infrastructure (OCI)アカウントまたはOCIトライアル・アカウント。Oracle Cloud Infrastructure Free Tierを参照してください。

  • OCI IAMアイデンティティ・ドメインのアイデンティティ・ドメイン管理者ロール。管理者ロールの理解を参照してください。
  • 次のいずれかのEntra IDロールを持つEntra IDアカウント:
    • グローバル管理者
    • クラウド・アプリケーション管理者
    • アプリケーション管理者
ノート

シングル・サインオン(SSO)に使用されるユーザーは、SSOを機能するように、OCI IAMとEntra IDの両方に存在する必要があります。このSSOチュートリアルを完了すると、OCI IAMとEntra ID間のアイデンティティ・ライフサイクル管理するという別のチュートリアルがあります。この他のチュートリアルでは、Entra IDからOCI IAM、またはOCI IAMからEntra IDへのユーザー・アカウントをプロビジョニングする方法について説明します。
1. OCI IAMからのサービス・プロバイダ・メタデータの取得

作成したSAML Entra IDアプリケーションにインポートするには、OCI IAMアイデンティティ・ドメインのSPメタデータが必要です。OCI IAMには、使用しているアイデンティティ・ドメインのメタデータをダウンロードするためのダイレクトURLが用意されています。メタデータをダウンロードするには、これらのステップに従います。

  1. サポートされているブラウザを開き、コンソールURLを入力します:

    https://cloud.oracle.com .

  2. クラウド・アカウント名(テナンシ名とも呼ばれる)を入力し、「次へ」を選択します。
  3. サインインするアイデンティティ・ドメインを選択します。これは、SSOの構成に使用されるアイデンティティ・ドメインです(Defaultなど)。
  4. ユーザー名およびパスワードを使用してサインインします。
  5. ナビゲーション・メニューを開き、「アイデンティティおよびセキュリティ」を選択します。「アイデンティティ」で、「ドメイン」を選択します。
  6. 作業するアイデンティティ・ドメインの名前をクリックします。必要なドメインを見つけるには、コンパートメントの変更が必要になる場合があります。次に、「設定」「ドメイン設定」の順にクリックします。
  7. 「署名証明書へのアクセス」で、「クライアント・アクセスの構成」を確認します。

    これにより、クライアントは、ドメインにサインインせずにアイデンティティ・ドメインの署名証明にアクセスできます。

  8. 「変更の保存」を選択します。

    「ドメイン設定」ページでのクライアント・アクセスの構成

  9. ブレッドクラム・ナビゲーション追跡でアイデンティティ・ドメイン名を選択して、アイデンティティ・ドメインの概要に戻ります。ドメイン情報の「ドメインURL」の横にある「コピー」を選択し、URLを編集可能なアプリケーションに保存します。

    ドメインURL情報がどこにあるかを示すドメイン情報。

  10. 新しいブラウザ・タブで、コピーしたURLを貼り付け、最後に/fed/v1/metadataを追加します。

    例:

    https://idcs-<unique_ID>.identity.oraclecloud.com:443/fed/v1/metadata
  11. アイデンティティ・ドメインのメタデータがブラウザに表示されます。OCIMetadata.xmlという名前のXMLファイルとして保存します。
2.Entra IDエンタープライズ・アプリケーションの作成

次のいくつかのステップでは、Entra IDで作業しています。

Entra IDでSAMLエンタープライズ・アプリケーションを作成します。

  1. ブラウザで、URLを使用してMicrosoft Entraにサインインします。
    
                                    https://entra.microsoft.com
                                
  2. 「アイデンティティ」「アプリケーション」を選択します。
  3. 「エンタープライズ・アプリケーション」「新規アプリケーション」を選択します。
  4. 「アプリケーションの検索」に、Oracle Cloud Infrastructure Consoleと入力します。
  5. 「Oracle CorporationによるOracle Cloud Infrastructure Console」タイルを選択します。
  6. アプリケーションの名前(Oracle IAMなど)を入力し、「作成」を選択します。

    エンタープライズ・アプリケーションがEntra IDで作成されます。

3.Entra IDエンタープライズ・アプリケーションのシングル・サインオンの設定

Entra ID SAMLアプリケーションのSSOを設定し、Entra ID SAMLメタデータをダウンロードします。In this section, you use the OCI IAM SP metadata file you saved in 1. Get the Service Provider Metadata from OCI IAM.

  1. 「Getting Started」ページで、「Set up single sign on」「Get started」を選択します。
  2. 「SAML」を選択し、「メタデータ・ファイルのアップロード」(ページの上部にあるボタン)を選択します。OCIアイデンティティ・ドメイン・メタデータOCIMetadata.xmlを含むXMLファイルを参照する。
  3. サインオンURLを指定します。例
    https://idcs-<domain_ID>.identity.oraclecloud.com/ui/v1/myconsole
  4. 「保存」を選択します。
  5. 右上のXで、「Upload metadata file」ページを閉じます。アプリケーションが今すぐテストするかどうかを尋ねられた場合は、このチュートリアルの後半でアプリケーションをテストするため、テストしないことを選択してください。
  6. 「Set up Single Sign-On with SAML」ページで下にスクロールし、「SAML Signing Certificate」で、「Federation Metadata XML」の横にある「Download」を選択します。
  7. プロンプトが表示されたら、「Save File」を選択します。メタデータは、デフォルトのファイル名 <your_enterprise_app_name>.xmlで自動的に保存されます。たとえば、OracleIAM.xmlです。

    「Entra ID SAMLベースのSSO」ページ

4. 属性およびクレームの編集

新しいEntra ID SAMLアプリケーションで属性およびクレームを編集して、ユーザーの電子メール・アドレスがユーザー名とパスワードとして使用されるようにします。

  1. エンタープライズ・アプリケーションで、左側のメニューから「シングル・サインオン」を選択します。
  2. 「属性および要求」で、「編集」を選択します。
  3. 必要な要求を選択します。
    Unique User Identifier (Name ID) = user.mail [nameid-format:emailAddress]
  4. 「Manage claim」ページで、「Source attribute」をuser.userprinciplenameからuser.mailに変更します。

    Entra ID属性および要求

  5. 「保存」を選択します。

追加Entra ID構成

Entra IDでは、グループ名(sAMAccountName)属性に基づいてグループをフィルタできます。

たとえば、SAMLを使用してAdministratorsグループのみを送信する必要があるとします。

  1. グループ請求を選択します。
  2. 「グループ要求」で、「拡張オプション」を展開します。
  3. 「フィルタ・グループ」を選択します。
    • 「照合する属性」で、Display Nameを選択します。
    • 「一致」で、containsを選択します。
    • 「文字列」に、グループの名前(Administratorsなど)を指定します。

    グループのフィルタ

このオプションを使用すると、管理者グループのユーザーが他のグループに属している場合でも、Entra IDはSAML内の管理者グループのみを送信します。
ノート

これにより、組織は必要なグループのみをEntra IDからOCI IAMに送信できます。
5.Entra IDアプリケーションへのテスト・ユーザーの追加

Entra IDアプリケーションのテスト・ユーザーを作成します。このユーザーは、後でEntra ID資格証明を使用してOCIコンソールにサインインできます。

  1. Microsoft Entra管理センターで、「アイデンティティ」「ユーザー」「すべてのユーザー」の順に選択します。
  2. 「新規ユーザー」「新規ユーザーの作成」の順に選択し、ユーザーを作成して電子メールIDを入力します。
    ノート

    OCI IAMに存在する、同じ電子メールIDを持つユーザーの詳細を使用していることを確認してください。
  3. エンタープライズ・アプリケーションのメニューに戻ります。「Getting Started」で、「Assign users and groups」を選択します。または、左側のメニューの「管理」から「ユーザー」を選択します。
  4. 「ユーザー/グループの追加」を選択し、「ユーザー」の次のページで「選択なし」を選択します。
  5. 「ユーザー」ページで、作成したテスト・ユーザーを選択します。これを選択すると、「Selected items」の下にユーザーが表示されます。「選択」を選択します。
  6. 「割当の追加」ページに戻り、「割当」を選択します。
6.OCI IAMのIdPとしてEntra IDを有効化

次のステップでは、OCI IAMで作業します。

OCI IAMのIdPとしてEntra IDを追加します。In this section, you use the Entra ID metadata file you saved in 3. Set Up Single Sign-On for the Entra ID Enterprise App, for example, Oracle IAM.xml.

  1. 作業中のドメインのOCIコンソールで、「セキュリティ」「アイデンティティ・プロバイダ」の順に選択します。
  2. 「IdPの追加」を選択して、「SAMLの追加」IdPを選択します。
  3. SAML IdPの名前を入力します(例: Entra ID)。「次へ」を選択します。
  4. 「アイデンティティ・プロバイダ・メタデータのインポート」が選択されていることを確認し、Entra IDメタデータXMLファイルOracle IAM.xmlを参照して選ぶか、アイデンティティ・プロバイダ・メタデータにドラッグ・アンドのドロップを行います。これは、3.で作業したときに保存したメタデータ・ファイルですEntra IDエンタープライズ・アプリケーションのシングル・サインオンの設定「次へ」を選択します。
  5. マップ・ユーザー・アイデンティティで、次を設定します
    • 「リクエストされたNameID形式」で、Email addressを選択します。
    • 「アイデンティティ・プロバイダ・ユーザー属性」で、SAML assertion Name IDを選択します。
    • 「アイデンティティ・ドメイン・ユーザー属性」で、Primary email addressを選択します。

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

  6. 「次へ」を選択します。
  7. 「確認および作成」で、構成を確認し、「作成」IdPを選択します。
  8. 「アクティブ化」を選択します。
  9. 「IdPポリシー・ルールに追加」を選択します。
  10. 「デフォルト・アイデンティティ・プロバイダ・ポリシー」を選択して開き、「アクション」メニュー(3つのドット)を選択し、「IdPルールの編集」を選択します。

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

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

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

  12. 「変更の保存」を選択します。
7.Entra IDとOCI間のSSOのテスト
この項では、フェデレーテッド認証がOCI IAMとEntra ID間で機能することをテストできます。
ノート

これが機能するように、SSOに使用されるユーザーはOCI IAMとEntra IDの両方に存在する必要があります。また、Entra IDで作成されたOCI IAMアプリケーションにユーザーが割り当てられている必要があります。

これには2つの方法があります:

このチュートリアルをテストするようにユーザーを設定していない場合は、次のエラーが表示されます。
Sorry, but we're having trouble signing you in.
AADSTS50105: Your administrator has configured 
the application application-name ('<unique_ID>')
to block users unless they are specifically granted
('assigned') access to the application.

SPが開始するSSOをテストします。

  1. サポートされているブラウザを開き、OCIコンソールURLを入力します:

    https://cloud.oracle.com .

  2. 「クラウド・アカウント名」(テナンシ名とも呼ばれる)を入力し、「次」を選択します。
  3. Entra IDフェデレーションが構成されているアイデンティティ・ドメインを選択します。
  4. サインイン・ページに、Entra IDでサインインするオプションが表示されます。

    OCI IAMのサインイン・ページ

  5. 「Entra ID」を選択します。Microsoftのログイン・ページにリダイレクトされます。
  6. Entra ID資格証明を指定します。
  7. 認証に成功すると、OCIコンソールにログインします。
次の手順

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

Entra IDで作成され、OCI IAMにプロビジョニングされたアプリケーションに割り当てられたユーザーがすでに居る場合は、OCI IAMとEntra ID間でフェデレーション認証の機能が機能することをテストできました。そのようなユーザーがいない場合は、OCI IAMとEntra ID間のアイデンティティ・ライフサイクル管理のOracleチュートリアルのいずれかを使用して作成できます。

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