チュートリアル1: Entra IDギャラリ・アプリケーションを使用してアイデンティティを管理するための認可ソースとしてのEntra ID
Entra ID Galleryのアプリケーション・テンプレートを使用してOCI IAMのアイデンティティを管理するための認可アイデンティティ・ストアとしてEntra IDを構成します。
- OCI IAMを構成して、Entra IDがOCI IAMのIDを管理するためのアイデンティティ・ストアとなるようにすること。OCI IAMで、機密アプリケーションを作成します。
- OCI IAMアイデンティティ・ドメインのクライアントIDおよびクライアント・シークレットからシークレット・トークンを生成します。これをドメインURLとともにEntra IDで使用します。
- Entra IDでアプリケーションを作成し、シークレット・トークンおよびアイデンティティ・ドメインURLを使用してOCI IAMアイデンティティ・ドメインを指定し、Entra IDからOCI IAMにユーザーをプッシュして動作することを証明します。
- OCI IAMにプロビジョニングするユーザーおよびグループをEntra IDアプリケーションに割り当てます。
- さらに、方法に関する指示
- ユーザーのフェデレーテッド・ステータスを設定して、外部アイデンティティ・プロバイダによって認証されるようにします。
- アカウントが作成または更新されたときに、ユーザーが通知Eメールを受信しないようにします。
この項では、Entra IDからOCI IAMにユーザー・アカウントが同期されるように、アイデンティティ・マネージャとして機能するようにEntra IDを構成します。
- 作業中のアイデンティティ・ドメインで、「アプリケーション」を選択します。
- 「アプリケーションの追加」を選択し、「機密アプリケーション」を選択して「ワークフローの起動」を選択します。
- アプリケーションの名前(
Entra ID
など)を入力し、「次へ」を選択します。 - 「クライアント構成」で、「このアプリケーションをクライアントとして今すぐ構成します」を選択します。
- 「認可」で、「クライアント資格証明」を選択します。
- 「クライアント・タイプ」で、「機密」を選択します。
- 下にスクロールし、「トークン発行ポリシー」セクションで、「認可されたリソース」を「特定」に設定します。
- 「アプリケーション・ロールの追加」を選択します。
- 「App Roles」セクションで「Add roles」を選択し、「Add app roles」ページで「User Administrator」を選択し、「Add」を選択します。
- 「次へ」、「完了」の順に選択します。
- アプリケーションの概要ページで、「アクティブ化」を選択し、アプリケーションをアクティブ化することを確認します。
機密アプリケーションがアクティブ化されます。
Entra IDで作成するエンタープライズ・アプリケーションの接続設定の一部として使用するには、次の2つの情報が必要です:
- ドメインURL。
- クライアントIDおよびクライアント・シークレットから生成されたシークレット・トークン。
- ブレッドクラムでアイデンティティ・ドメイン名を選択して、アイデンティティ・ドメインの概要に戻ります。ドメイン情報の「ドメインURL」の横にある「コピー」を選択し、URLを編集可能なアプリケーションに保存します。
- OCI IAMの機密アプリケーションで、「リソース」の下の「OAuth構成」を選択します。
- 下にスクロールし、「一般情報」の下の「クライアントID」および「クライアント・シークレット」を見つけます。
- クライアントIDをコピーして格納します
- 「シークレットの表示」を選択し、シークレットをコピーして格納します。シークレット・トークンは、
<clientID>:<clientsecret>
のbase64エンコーディング、またはbase64(<clientID>:<clientsecret>)
次の例では、Windows、LinuxまたはMacOSでシークレット・トークンを生成する方法を示します。
Windows環境では、CMDを開き、このpowershellコマンドを使用して、base64エンコーディング
[Convert]::ToBase64String([System.Text.Encoding]::Unicode.GetBytes('client_id:secret'))"
を生成しますLinuxでは、echo -n <clientID>:<clientsecret> | base64 --wrap=0
MacOSでは、次を使用しますecho -n <clientID>:<clientsecret> | base64
シークレット・トークンが返されます。たとえばecho -n 392357752347523923457437:3454-9853-7843-3554 | base64 Nk0NzUyMzcyMzQ1NzMTc0NzUyMzMtNTQzNC05ODc4LTUzNQ==
シークレット・トークンの値を書き留めます。
Entra IDを構成して、IAMのアイデンティティを管理するための認可アイデンティティ・ストアとしてEntra IDを有効にします。
- ブラウザで、次のURLを使用してMicrosoft Entra IDにサインインします。
https://portal.azure.com
- 「アイデンティティ」、アプリケーションの順に選択します。
- 「エンタープライズ・アプリケーション」を選択します。
- エンタープライズ・アプリケーション・ページで、「新規アプリケーション」、「Oracle」の順に選択します。
- 「Oracle Cloud Infrastructure Console」を選択します。
- 名前を入力するか、デフォルトの
「Oracle Cloud Infrastructure Console」
を受け入れます。 - 「作成」を選択します。
- 「Manage」の下の左側のメニューから「Provisioning」を選択します。
- 「スタート・ガイド」を選択し、「プロビジョニング・モード」を「自動」に変更します。
- 「Tenant URL」に、2. ドメインURLの検索およびシークレット・トークンの生成のOCI IAMドメインURLの後に
/admin/v1
を続けた値を入力します。つまり、テナントURLは次のようになりますhttps://<domainURL>/admin/v1
- 2. ドメインURLの検索およびシークレット・トークンの生成で生成したシークレット・トークンを入力します。
- 「テスト」を選択します。このメッセージが表示された場合、接続は成功しています
Testing connection to Oracle Cloud Infrastructure Console The supplied credentials are authorized to enable provisioning
- 「Manage」の下の左側のメニューから「Provisioning」を選択し、「Start Provisioning」を選択します。プロビジョニング・サイクルが開始され、プロビジョニングのステータスが表示されます。
OCI IAMにプロビジョニングするユーザーをEntra IDアプリケーションに割り当てます。
- Entra IDの左側のメニューで、「エンタープライズ・アプリケーション」を選択します。
- 前に作成したアプリケーション
Oracle Cloud Infrastructure Console
を選択します。 - 「管理」の下の左メニューで、「ユーザーとグループ」を選択します。
- 「ユーザーおよびグループ」ページで、「ユーザー/グループの追加」を選択します。
- 「アサイメントの追加」ページの左側の「ユーザーおよびグループ」で、「選択なし」を選択します。
「ユーザーおよびグループ」ページが開きます。
- リストから1人以上のユーザーまたはグループを選択して選択します。選択したユーザーが「Selected items」の下にリストされます。
- 「選択」を選択します。選択したユーザーおよびグループの数は、「アサイメントの追加」ページに表示されます。
- 「割当の追加」ページで、「割当」を選択します。
ユーザーとグループ・ページに、選択したユーザーとグループが表示されます。
- 左側のメニューで「プロビジョニング」を選択して、グループおよびユーザーをプロビジョニングします。プロビジョニング・ログにステータスが表示されます。
- プロビジョニングが成功すると、「Current cycle status」に、増分サイクルが完了したこと、およびOCI IAMにプロビジョニングされたユーザーの数が表示されます。
OCI IAMで、Entra IDからプロビジョニングされたユーザーおよびグループを表示できるようになりました。
- ユーザーのフェデレーテッド・ステータスを設定して、外部アイデンティティ・プロバイダによって認証されるようにできます。
- アカウントが作成または更新されたときにユーザーに送信される通知Eメールを無効にできます。
フェデレーテッド・ユーザーには、OCIに直接サインインするための資格証明がありません。かわりに、外部アイデンティティ・プロバイダによって認証されます。フェデレーテッド・アカウントを使用してOCIにサインインする場合は、そのユーザーのフェデレーテッド属性をtrueに設定します。
ユーザーのフェデレーテッド・ステータスを設定するには:
- ブラウザで、次のURLを使用してMicrosoft Entra IDにサインインします。
https://portal.azure.com
- 「アイデンティティ」、アプリケーションの順に選択します。
- 「エンタープライズ・アプリケーション」を選択します。
- 前に作成したアプリケーション
Oracle Cloud Infrastructure Console
を選択します。 - 左側のメニューの「管理」で、「プロビジョニング」、「プロビジョニングの編集」の順に選択します。
- 「プロビジョニング」ページで、「マッピング」を選択します。
-
「マッピング」で、「Entra IDユーザーのプロビジョニング」を選択します。
- 「属性マッピング」で、下にスクロールして「新規マッピングの追加」を選択します。
- 「属性の編集」ページで、次の手順を実行します。
- 「マッピング・タイプ」で、
Expression
を選択します。 - 「式」に、
CBool("true")
と入力します。 - 「ターゲット属性」で、
urn:ietf:params:scim:schemas:oracle:idcs:extension:user:User:isFederatedUser
を選択します。
- 「マッピング・タイプ」で、
- 「OK」をクリックします。
- 「属性マッピング」ページで、「保存」を選択します。
これで、ユーザーがEntra IDからOCIにプロビジョニングされると、フェデレーテッド・ステータスがtrueに設定されます。これはユーザーのプロファイル・ページに表示されます。
- OCIコンソールで、使用しているアイデンティティ・ドメインに移動し、「ユーザー」を選択して、ユーザー情報を表示するユーザーを選択します。
- 「フェデレーテッド」は、
Yes
として表示されます。
バイパス通知フラグは、OCIでユーザー・アカウントを作成または更新した後に電子メール通知を送信するかどうかを制御します。アカウントが作成されたことをユーザーに通知しない場合は、バイパス通知フラグをtrueに設定します。
バイパス通知フラグを設定するには:
- ブラウザで、次のURLを使用してMicrosoft Entra IDにサインインします。
https://portal.azure.com
- 「アイデンティティ」、アプリケーションの順に選択します。
- 「エンタープライズ・アプリケーション」を選択します。
- 前に作成したアプリケーション
Oracle Cloud Infrastructure Console
を選択します。 - 左側のメニューの「管理」で、「プロビジョニング」、「プロビジョニングの編集」の順に選択します。
- 「プロビジョニング」ページで、「マッピング」を選択します。
-
「マッピング」で、「Entra IDユーザーのプロビジョニング」を選択します。
- 「属性マッピング」で、下にスクロールして「新規マッピングの追加」を選択します。
- 「属性の編集」ページで、次の手順を実行します。
- 「マッピング・タイプ」で、
Expression
を選択します。 - 「式」に、
CBool("true")
と入力します。 - 「ターゲット属性」で、
urn:ietf:params:scim:schemas:oracle:idcs:extension:user:User:bypassNotification
を選択します。
- 「マッピング・タイプ」で、
- 「OK」をクリックします。
- 「属性マッピング」ページで、「保存」を選択します。