Upgrade to Pro — share decks privately, control downloads, hide ads and more …

OCI IAM Identity Domain_APEX管理者サイトとの認証連携/Identi...

OCI IAM Identity Domain_APEX管理者サイトとの認証連携/Identity Domain for APEX Admin Site

Avatar for oracle4engineer

oracle4engineer PRO

July 29, 2025
Tweet

More Decks by oracle4engineer

Other Decks in Technology

Transcript

  1. はじめに 本手順書により実現するイメージ Copyright © 2025, Oracle and/or its affiliates 3

    本手順書により、APEX管理者・開発者が管理サービスやワークスペースサイトにアクセスする際に Identity Domainsの認証+MFAを実施しアクセスできるようにすることを実現します。 APEX管理者・開発者 ログイン画面 ID/パスワード 2要素認証画面 ワンタイム パスコードなど OCI IAM Identity Domains Oracle APEX (ADB) OpenID Connect 認 証 連 携 APEX管理者・開発者のユーザー情報 管理サービス ワークスペース管理サービス
  2. アジェンダ Copyright © 2025, Oracle and/or its affiliates 4 1.

    OCI IAM Identity Domain側での設定 ・OpenID Connect連携に必要な機密アプリケーションの作成 ・MFA(要素:電子メールワンタイムパスコード)のための設定 2. APEX側での設定 ・OpenID Connect連携に必要な認証制御「Social Sign-In」の設定 3. OCI IAM Identity Domain側でのユーザー作成 4. 動作確認
  3. OpenID Connect連携に必要な機密アプリケーションの作成 Copyright © 2025, Oracle and/or its affiliates 7

    1)OCIコンソール(https://www.oracle.com/jp/cloud/sign-in.html)にアクセスします。 テナント名(クラウド・アカウント名)を入力し「Next」を選択します。 アイデンティティ・ドメインの選択画面が表示される場合には「Default」を選択し、管理者のユーザー名/パスワードを入力し OCIコンソールにログインします。 ※該当ドメインの管理者でログインしても構いません。 ※環境によりドメイン選択画面は表示されません。
  4. OpenID Connect連携に必要な機密アプリケーションの作成 Copyright © 2025, Oracle and/or its affiliates 8

    2)メニューより「アイデンティティとセキュリティ」ー「アイデンティティ」を選択します。
  5. OpenID Connect連携に必要な機密アプリケーションの作成 Copyright © 2025, Oracle and/or its affiliates 9

    3)ドメイン画面にて、適用済みフィルタ部分にて対象ドメインが存在するコンパートメントを指定し、対象ドメインを選択します。
  6. OpenID Connect連携に必要な機密アプリケーションの作成 Copyright © 2025, Oracle and/or its affiliates 10

    4) ドメインのメニュー「詳細」を選択し、ドメインURLの「コピー」を選択しドメインURLを控えておきます。 このドメインURLは後続の手順で利用します。 ※ドメインURLは「https://idcs-d92e・・・・・・・・7a34.identity.oraclecloud.com:443」になります。
  7. OpenID Connect連携に必要な機密アプリケーションの作成 Copyright © 2025, Oracle and/or its affiliates 11

    5) メニュー「統合アプリケーション」を選択します。 統合アプリケーション部分にて「アプリケーションの追加」を選択します。 表示されたアプリケーションの追加画面にて「機密アプリケーション」を選択し、「ワークフローの起動」を選択します。
  8. OpenID Connect連携に必要な機密アプリケーションの作成 Copyright © 2025, Oracle and/or its affiliates 12

    6)機密アプリケーションの追加画面にて、名前、説明にAPEX管理者用アプリと分かるような名前を指定し、 「アプリケーションURL」に下記のような該当APEX URLを指定し、「送信」を選択します。 ・アプリケーションURL:https://g884・・・・・・・・051.adb.ap-tokyo-1.oraclecloudapps.com/ords/apex
  9. OpenID Connect連携に必要な機密アプリケーションの作成 Copyright © 2025, Oracle and/or its affiliates 13

    7)作成した機密アプリケーション画面にて「OAuth構成」を選択し、「OAuth構成の編集」を選択します。
  10. OpenID Connect連携に必要な機密アプリケーションの作成 Copyright © 2025, Oracle and/or its affiliates 14

    8) 表示された画面にて、下記項目を設定します。 ・クライアント構成 – このアプリケーションをクライアントとして今すぐ構成します:チェックON ・認可 – 認可コード:チェックON
  11. OpenID Connect連携に必要な機密アプリケーションの作成 Copyright © 2025, Oracle and/or its affiliates 15

    9) 同画面にて下記項目を入力します。 ・リダイレクトURL:https://<上記1.にて控えたURL>/ords/apex_authentication.callback 例) https://g884・・・・・・c-db2・・・・・・・・・・・・・051.adb.ap-tokyo-1.oraclecloudapps.com/ords/apex_authentication.callback ・ログアウト後のリダイレクトURL: 該当APEXのURL 例) https://g884・・・・・・c-db2・・・・・・・・・・・・・051.adb.ap-tokyo-1.oraclecloudapps.com/ords/apex
  12. OpenID Connect連携に必要な機密アプリケーションの作成 Copyright © 2025, Oracle and/or its affiliates 16

    10) 同画面にて、「同意のバイパス」をチェックONにし、「送信」を選択します。
  13. OpenID Connect連携に必要な機密アプリケーションの作成 Copyright © 2025, Oracle and/or its affiliates 17

    11) 作成した機密アプリケーションの画面にて、右上のアクションより「アクティブ化」を選択します。 確認画面で「アプリケーションのアクティブ化」を選択します。
  14. OpenID Connect連携に必要な機密アプリケーションの作成 Copyright © 2025, Oracle and/or its affiliates 18

    12) 作成した機密アプリケーションがアクティブ化されたことを確認します。 一般情報部分にある「クライアントID」の値をコピーして控えておきます。 また、クライアント・シークレット部分にあるシークレットの表示より「コピー」選択し、クライアント・シークレットも控えておきます。 ※控えたクライアントIDとクライアント・シークレットは後続の手順で利用します。
  15. MFA(要素:電子メールワンタイムパスコード)のための設定 Copyright © 2025, Oracle and/or its affiliates 20 1)MFA要素として「電子メール」を有効化するため、ドメインメニュー「認証」を選択します。

    ファクタ部分の電子メールが無効になっている場合には「ファクタの有効化または無効化」を選択します。 ※電子メールが有効になっている場合には3)に進みます。
  16. MFA(要素:電子メールワンタイムパスコード)のための設定 Copyright © 2025, Oracle and/or its affiliates 21 2)ファクタの有効化または無効化画面にて「電子メール」をチェックONにし、「変更の保存」を選択します。

    ※2要素認証の要素を有効化したのみではAPEXアプリケーションへの アクセス時のMFA利用はまだ有効になりません。 MFA利用には後続のサインオンポリシーの設定が必要になります。
  17. MFA(要素:電子メールワンタイムパスコード)のための設定 Copyright © 2025, Oracle and/or its affiliates 22 3)次に、APEX管理サイトアクセス時にMFAを必須にするサインオンポリシーを定義するため、

    ドメインメニュー「ドメイン・ポリシー」を選択します。 サインオン・ポリシー部分にて「サインオン・ポリシーの作成」を選択します。
  18. MFA(要素:電子メールワンタイムパスコード)のための設定 Copyright © 2025, Oracle and/or its affiliates 25 6)サインオン・ルールの追加画面にて、ルール名に「MFA

    Rule」(任意の値でOK)を入力し、アクション部分にて下記を設定し、 「追加」を選択します。(条件部分は何も設定しない。) ・追加ファクタの要求にチェック ・指定されたファクタのみにチェック ・電子メールににチェック ・頻度‐セッションごと・・・・・にチェック ・登録‐必須にチェック 本手順では、条件部分に何も設定していないため、無条件でMFAを 要求するルールを設定しています。 条件付き(グループなど)でMFA要求する/しないを制御する場合に は条件部分をセットします。 また、要素として電子メールのみをチェックしていますが、その他要素を 使いたい場合にはその要素にもチェックします。
  19. MFA(要素:電子メールワンタイムパスコード)のための設定 Copyright © 2025, Oracle and/or its affiliates 28 9)アプリケーションが追加されたことを確認します。

    右上のアクションより「サインオン・ポリシーのアクティブ化」を選択します。 確認画面でも「サインオン・ポリシーのアクティブ化」を選択します。
  20. MFA(要素:電子メールワンタイムパスコード)のための設定 Copyright © 2025, Oracle and/or its affiliates 29 10)サインオン・ポリシーがアクティブ化したことを確認します。

    本サインオンポリシーは、“アプリケーション”に指定したアプリケーション(Test_APEX_Admin)に アクセスした場合にのみ使われることになります。
  21. OpenID Connect連携に必要な認証制御「Social Sign-In」の設定 Copyright © 2025, Oracle and/or its affiliates

    33 注意事項) 次ページ以降の手順を実施すると、APEX管理サービスにはIdentity Domainsの認証+MFA以外ではログインできなくなります。 設定等の誤りで認証連携が正常に動かない場合、APEX管理サービスにアクセスできない恐れがあります。 そのため、対象APEX(ADB)に対して下記SQLを実行しAPEX管理サービスの認証設定をデフォルトに戻せるよう 備えておくようにしてください。 begin apex_instance_admin.set_parameter ('APEX_BUILDER_AUTHENTICATION','DB'); commit; end;
  22. OpenID Connect連携に必要な認証制御「Social Sign-In」の設定 Copyright © 2025, Oracle and/or its affiliates

    34 1)該当APEXの管理サービスにログインします。 「インスタンス管理」を選択します。
  23. OpenID Connect連携に必要な認証制御「Social Sign-In」の設定 Copyright © 2025, Oracle and/or its affiliates

    35 2)インスタンス設定の「セキュリティ」を選択します。
  24. OpenID Connect連携に必要な認証制御「Social Sign-In」の設定 Copyright © 2025, Oracle and/or its affiliates

    36 3)「認証制御」を選択し、開発環境認証スキーム部分の「Social Sign-In」の編集マークを選択します。
  25. OpenID Connect連携に必要な認証制御「Social Sign-In」の設定 Copyright © 2025, Oracle and/or its affiliates

    37 4)認証スキームの編集画面にて下記項目を指定し、「変更の適用」を選択します。 ・クライアントID:上記1章で作成した機密アプリケーションのクライアントID ・クライアント・シークレット:上記1章で作成した機密アプリケーションのクライアント・シークレット ・クライアント・シークレットの確認:上記1章で作成した機密アプリケーションのクライアント・シークレット ・Authentication Provider:OpenID Connect Provider ・Discovery URL:上記1章で控えた対象Identity DomainsのURLに「.well-known/openid-configuration」を追加したURL 例) https://idcs-d0e・・・・d9.identity.oraclecloud.com:443/.well-known/openid-configuration ・Scope:profile ・Username Attribute:preferred_username ・Verify Username:いいえ 画面イメージは次ページ参照 本手順では、Username Attributeに「preferred _username」を指定しており、 Identity DomainsユーザーとAPEXユーザーのマッピングは以下のようになります。 ============================== Identity DomainsユーザーのユーザーID = APEXユーザーのユーザーID ==============================
  26. OpenID Connect連携に必要な認証制御「Social Sign-In」の設定 Copyright © 2025, Oracle and/or its affiliates

    39 5)再度、「認証制御」を選択し、開発環境認証スキーム部分の「Social Sign-In」の編集マークを選択します。 表示された認証スキームの編集画面にて「カレント・スキームにする」を選択し、確認画面で「OK」を選択します。
  27. OCI IAM Identity Domain側でのユーザー作成 Copyright © 2025, Oracle and/or its

    affiliates 41 1)APEX側に存在しているユーザー(管理者、開発者)と同じユーザーIDを持つユーザーをIdentity Domainsへ登録する必要があるため、 APEX側のユーザーを確認します。 本手順は下記ユーザーをIdentity Domainsへ登録します。 ・ADMIN : APEX管理者 ・APEX_USER001: ワークスペース“IAM-TEST”の管理者
  28. OCI IAM Identity Domain側でのユーザー作成 Copyright © 2025, Oracle and/or its

    affiliates 42 2)OCIコンソールの対象Identity Domainsメニュー「ユーザー管理」を選択し、ユーザー部分の「作成」を選択します。 APEX側に存在しているユーザー(管理者、開発者)と同じユーザーIDを持つユーザーをIdentity Domainsへ登録します。 登録後に各ユーザーにてパスワードセットを行います。 APEXユーザー「ADMIN(APEX管理者)」用 APEXユーザー「APEX_USER001(ワークスペース管理者)」用 ログイン時にワンタイムパスコードが届くメールアドレスになります。 メールを確認可能なアドレスを指定します。
  29. 動作確認 Copyright © 2025, Oracle and/or its affiliates 44 1)該当APEXにアクセスします。

    2)Identity Domainsログイン画面が表示されたことを確認し、まず最初に上記3章で作成したユーザー「admin」でログインします。
  30. 動作確認 Copyright © 2025, Oracle and/or its affiliates 45 3)MFA登録要求画面が表示されたことを確認し、「セキュアな認証の有効化」を選択します。

    ※既にMFA要素登録済みユーザーでログインした場合には本画面は表示されず、登録済みMFA要素によるMFA要求画面が表示されます。
  31. 動作確認 Copyright © 2025, Oracle and/or its affiliates 50 8)新規ブラウザセッションにて再度APEXにアクセスします。

    Identity Domainsログイン画面で上記3章で作成したユーザー「apex_user001」でログインします。 MFA要素の登録を上記と同じように実施します。
  32. 動作確認 Copyright © 2025, Oracle and/or its affiliates 51 9)MFA登録後にAPEXのワークススペース選択画面が表示されることを確認し、ワークスペース名を選択します。

    ユーザー「apex_user001」はワークスペース「IAM-TEST」の 管理者であるため、選択肢に「IAM-TEST」が表示されます。
  33. 動作確認 Copyright © 2025, Oracle and/or its affiliates 53 補足)APEX側に存在しないユーザーでIdentity

    Domainsにログインした場合には、 アクセス可能なワークスペースが存在しない旨のメッセージが表示されます。