OktaからOCI IAMへのJITプロビジョニング

このチュートリアルでは、Oktaをアイデンティティ・プロバイダ(IdP)として使用して、OCIコンソールとOktaの間でJust-In-Time (JIT)プロビジョニングを構成します。

ターゲット・システムへのアクセスをリクエストしたときにターゲット・システムにアイデンティティを作成できるように、JITプロビジョニングを設定できます。これは、すべてのユーザーが事前に作成されているよりも簡単に設定できます。

このチュートリアルでは、次のステップについて説明します。

  1. Oktaによって送信されるSAML属性を構成します。
  2. OCI IAMでJIT属性を構成します。
  3. OCI IAMとOkta間のJITプロビジョニングをテストすること。
ノート

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

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

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

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

また、チュートリアルOCIおよびOktaを使用したSSOを完了し、JITプロビジョニングに使用するグループのオブジェクトIDを収集しておく必要があります。

1.Oktaが送信するSAML属性の構成

OCI IAMで、JITのOkta IdPを更新します。

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

    https://cloud.oracle.com

  2. 「クラウド・アカウント名」(テナンシ名とも呼ばれる)を入力し、「次」を選択します。
  3. SSOの構成に使用するアイデンティティ・ドメインを選択します。
  4. ユーザー名とパスワードを使用してサイン・インします。
  5. ナビゲーション・メニューを開き、「アイデンティティおよびセキュリティ」を選択します。
  6. 「アイデンティティ」で、「ドメイン」を選択します。
  7. OktaをIdPとして構成したアイデンティティ・ドメインを選択します。
  8. 左側のメニューで「セキュリティ」、「アイデンティティ・プロバイダ」の順に選択します。
  9. Okta IdPを選択します。
  10. 「Configure JIT」を選択します。

    IAMのOktaアイデンティティ・プロバイダの構成ページ

  11. 「Just-in-time (JIT)プロビジョニングの構成」ページで、次の手順を実行します。
    • 「Just-In-Time (JIT)プロビジョニング」を選択します。
    • 「新規アイデンティティ・ドメイン・ユーザーの作成」を選択します。
    • 「既存のアイデンティティ・ドメイン・ユーザーの更新」を選択します。

    ジャスト・イン・タイム・プロビジョニングを有効化

  12. 「ユーザー属性のマップ」で、次の手順を実行します。
    1. NameIDの最初の行は変更しません。
    2. その他の属性については、「IdP user attribute」Attributeを選択します。
    3. IdPユーザー属性名を次のように指定します。
      • familyName: familyName
      • primaryEmailAddress: email
    4. 「行の追加」を選択し、firstNameと入力します。

      アイデンティティ・ドメインのユーザー属性には、First nameを選択します。

      ノート

      Oktaからのユーザー・アサーションの一部として送信される追加のユーザー属性を構成した場合は、行を追加することで、それらをアイデンティティ・ドメインのユーザー属性にマップできます。
  13. 「グループ・マッピングの割当て」を選択します。
  14. グループ・メンバーシップ属性名を入力します。このチュートリアルでは、groupsを使用します。
    ノート

    次の項で使用するため、グループ・メンバーシップ属性名をノートにとります。
  15. 「明示的なグループ・メンバーシップ・マッピングの定義」を選択します。
  16. アイデンティティ・ドメイン・グループ名にマップするIdPグループ名で、次の手順を実行します。
    • IdP Group nameで、Okta内のグループの名前を指定します。
    • 「アイデンティティ・ドメイン・グループ名」で、OktaグループをマップするOCI IAMのグループを選択します。

      グループ・マップの割当て

      ノート

      「行の追加」を選択すると、追加のグループをマップできます。

      この図は、左側のOktaで構成された属性と、右側のOCI IAMにマップされた属性を示しています。

      OktaとOCI IAM間のグループ属性のマッピング

  17. 「割当ルール」で、次を選択します。
    1. グループ・メンバーシップを割り当てる場合: 既存のグループ・メンバーシップとマージ
    2. グループが見つからない場合: Ignore the missing group

    割当ルールの設定

    ノート

    組織の要件に基づいてオプションを選択します。
  18. 「Save changes」を選択します。
2.OCI IAMのJIT属性の構成

Oktaで、OCI IAMアプリケーション構成を更新して、SAMLアサーションでユーザー属性およびグループ名を送信します。

  1. Oktaで、OCI IAM用に作成したエンタープライズ・アプリケーションで、「サインオン」タブを選択します。
  2. 「設定」の横にある「編集」を選択します。
  3. Saml 2.0で、「属性(オプション)」の横にある「>」を選択します。
  4. 次の値を指定します。
    名前 名前の書式
    firstName Unspecified user.firstName
    familyName Unspecified user.lastName
    email Unspecified user.email

    ビジネス要件にあわせて追加属性を追加できますが、このチュートリアルに必要なのは属性のみです。

    Okta属性

  5. 「グループ属性文」に、次の値を入力します。
    ノート

    Oktaには、SAMLアサーションで送信できるグループをフィルタ処理するためのメカニズムが用意されています。フィルタには、Starts withEqualsContainsMatches regexなどのオプションがあります。このチュートリアルでは、Containsフィルタを使用します。これは、Oktaが、ユーザーに関連付けられ、指定された文字列を含むグループのみを送信することを意味します。この例では、文字列としてAdminを指定しているため、文字列Adminを含み、ユーザーに関連付けられているすべてのグループがSAMLアサーションで送信されます。
    名前 名前の書式 フィルタ
    groups Unspecified Contains Admin

    Oktaグループ属性

  6. 「保存」を選択します。
3.OktaとOCI間のJITプロビジョニングのテスト
この項では、JITプロビジョニングがOktaとOCI IAMの間で機能することをテストできます。
  1. Oktaコンソールで、OCI IAMに存在しない電子メールIDで新しいユーザーを作成します。
  2. ユーザーを必要なグループ(Administrators and Adminsなど)に割り当てます。
  3. Oktaからログアウトします。
  4. OktaのOCI IAMアプリケーションにユーザーを割り当てます。

    Oktaのユーザー

  5. ブラウザで、OCIコンソールを開きます。
  6. JIT構成が有効化されているアイデンティティ・ドメインを選択します。
  7. サインイン・オプションから、「Okta」を選択します。
  8. Oktaログイン・ページで、新しく作成したユーザーIDを指定します。
  9. Oktaからの認証に成功した場合:
    • ユーザー・アカウントはOCI IAMで作成されます。
    • ユーザーはOCIコンソールにログインしています。

    ユーザーのOCI IAMのマイ・プロファイル

  10. ナビゲーション・メニューで、「プロファイル」メニュー「プロファイル」メニュー・アイコンを選択し、「ユーザー設定」を選択します。電子メールID、名、姓、関連グループなどのユーザー・プロパティを確認します。

    OCI IAMのユーザー・プロパティの確認

次の手順

完了しました。OktaとIAM間のJITプロビジョニングが正常に設定されました。

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