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

OCI IAM Identity Domains 複数Identity Domain間の連携手...

OCI IAM Identity Domains 複数Identity Domain間の連携手順 / SSO setup between multiple Identity Domains

oracle4engineer

August 15, 2022
Tweet

More Decks by oracle4engineer

Other Decks in Technology

Transcript

  1. ⚫ 本資料の前提 1. 前提となるユース・ケース 2. 解決方法 ⚫ Identity Domain(IdP)とIdentity Domain(SP)が共存する複数のOCI環境下でのSSO環境の構成

    1. IdP側のIdentity Domainでメタデータのダウンロード 2. SP側のIdentity DomainでIdPの追加 3. IdP側のIdentity DomainでSPの追加 4. 動作確認用のユーザー作成 5. 動作確認 ⚫ Identity Domain(IdP)からIdentity Domain(SP)へのID情報の同期 1. SP側のIdentity DomainでのSCIMインターフェース設定(機密アプリケーション登録) 2. IdP側のIdentity Domainでのプロビジョニング(同期用アプリケーション)の設定 3. 動作確認 アジェンダ Copyright © 2024, Oracle and/or its affiliates 3
  2. ◆ 下記の理由から複数のOCI環境が存在し、それぞれの環境で、OCI IAM Identity Domains(以下、Identity Domain)が運用される場合があります。 ➢ 本社用とグループ会社用での構成 ➢ 本番環境とテスト環境の構成

    ➢ 契約時期やシステム構成により環境を分割 1. 前提となるユース・ケース Copyright © 2024, Oracle and/or its affiliates 5 管理者 一般ユーザー 管理者 一般ユーザー 管理者 一般ユーザー OCI OCI PaaS OCI IAM Identity Domains OCI IAM Identity Domains OCI 3rd-Party Apps OCI IAM Identity Domains
  3. ◆ 想定される課題 ➢ 複数環境でそれぞれのユーザー管理による管理コストの増大 ➢ ユーザー管理の煩雑化によるセキュリティリスクの増大 ➢ ユーザーへの利便性の低下 1. 前提となるユース・ケース

    6 OCI OCI PaaS OCI IAM Identity Domains OCI IAM Identity Domains 管理者 一般ユーザー OCI 3rd-Party Apps • それぞれの環境でユーザの管理 を実施 • 複数回の認証が発生 • それぞの環境でのパスワード管理 Copyright © 2024, Oracle and/or its affiliates OCI IAM Identity Domains
  4. ◆ 課題の解決 ➢ SAMLによるフェデレーションを構成して、OCI間でシングル・サインオン(以下、SSO)を実現 ➢ SSOにより、パスワードはマスターとなるIdPのみで管理が可能 ➢ Identity Domain間でユーザーやグループ情報を同期するコネクタを構成(手動による同期でも対応可能) 2.

    解決方法 7 OCI OCI PaaS OCI IAM Identity Domains OCI IAM Identity Domains 管理者 一般ユーザー OCI 3rd-Party Apps • IdP側でユーザの管理が可能 • 同期するためのコネクタの構成 • 1回の認証でそれぞれの環境への アクセスが可能 • パスワードはIdP側で管理 IdP SP SP フェデレーション / ユーザーの同期 Copyright © 2024, Oracle and/or its affiliates OCI IAM Identity Domains
  5. ◆ 課題の解決の技術概要 ➢ Identity Domain間でSAMLフェデレーションによるSSOを構成することで、IdP にログインすれば、クラウド・ サービスが認証を委託しているSPにログインしなくても、クラウド・サービスにSSOが可能 ➢ Identity Domainが存在するデータ・センターやリージョンには非依存な機能であるため、データ・センターや

    リージョンをまたがった構成が可能 ➢ Identity DomainはID情報を伝播するREST APIの標準であるSystem for Cross-domain Identity Management(以下、SCIM)を利用する同期用アプリケーションを提供しており、同期用アプリケーションを 構成してIdentity Domain間でユーザーやグループ情報を同期することが可能 2. 解決方法 8 Copyright © 2024, Oracle and/or its affiliates
  6. SP 本手順書は下記構成を実現するためのIdentity Domain間の認証連携(外部IdP連携)設定手順書になります。 Identity Domain(IdP)とIdentity Domain(SP)を構成し複数のOCI 環境下でのSSO環境を構成 10 Copyright ©

    2024, Oracle and/or its affiliates IdP SAML認証連携(外部IdP連携) 利用者 IdPのID/パスワードでログイン ( IdPログイン画面にリダイレクト) OCI コンソール Identity domain間は属性 「ユーザー名」 で ユーザーマッピング OCI IAM Identity Domain OCI IAM Identity Domain テナント A テナント B ※同一テナント内のIdentity Domain間の連携でも同様の手順となります。
  7. 手順概要 1. IdP側のIdentity Domainでメタデータのダウンロード 2. SP側のIdentity DomainでIdPの追加 3. IdP側のIdentity DomainでSPの追加

    4. 動作確認用のユーザー作成 5. 動作確認 Identity Domain(IdP)とIdentity Domain(SP)を構成し複数のOCI 環境下でのSSO環境を構成 11 Copyright © 2024, Oracle and/or its affiliates
  8. 2) OCIコンソール画面にて、左メニューより 「アイデンティティとセキュリティ」 ー 「ドメイン」を選択します。 3) アイデンティティ画面にて、 コンパートメントを指定し、ドメインを選択します。 ※ 自身で作成したIdentity

    Domain (ドメイン)に設定する場合にはその該当ドメインを選択します。 1.IdP側の Identity Domain でメタデータのダウンロード 14 Copyright © 2024, Oracle and/or its affiliates
  9. 14) Default Identity Provider Policy画面にて、「IdPルールの追加」を選択します。 15) アイデンティティ・プロバイダ・ルールの追加画面にて、ルール名に適当な値を指定し、アイデンティティ・プロバイダの 割当てを選択し、今回、作成したアイデンティティプロバイダと「Username-Password」を選択し、 「IdPルールの追加」を選択します。 2.

    SP側のIdentity DomainでIdPの追加 26 Copyright © 2024, Oracle and/or its affiliates ※Default Identity Provider Policy には「Default IdP Rule」というルールがあらかじめ作成されています。 この「Default IdP Rule」を直接編集することも可能ですが、 運用の中でデフォルトの状態に戻す場合などを想定し、 「Default IdP Rule」は編集せずにデフォルトの状態のままに しておくことをお勧めします。
  10. 1) 項番1. IdP側のIdentity Domainでメタデータのダウンロード 8)の続きとなります。 2) 上記の画面が閉じられている場合は、以下の様に画面を開きます。 アイデンティティ・ドメイン画面のメニューから「統合アプリケーション」を選択します。 ドメイン内のアプリケーション画面から、項番1. IdP側のIdentity

    Domainでメタデータのダウンロード 7)で作成した、 アプリケーションを選択します。 作成したアプリケーションの画面にて、「SSO構成の編集」を選択します。 3. IdP側のIdentity DomainでSPの追加 29 Copyright © 2024, Oracle and/or its affiliates
  11. 3) SSO構成の編集画面の一般にて、項番2. SP側のIdentity DomainでIdPの追加 12)で作成した、 SAMLアイデンティティ・プロバイダの値をコピーして設定します。 ・ エンティティID:SP側のIdentity DomainのプロバイダID ・

    アサーションコンシューマーのURL:SP側のIdentity Domainのアサーション・コンシューマ・サービスURL ・ 名前IDのフォーマット:「未指定」 ・ 名前IDの値:「ユーザー名」 ・ 署名証明書:SP側のIdentity Domainのサービス・プロバイダ暗号化証明書 3. IdP側のIdentity DomainでSPの追加 30 Copyright © 2024, Oracle and/or its affiliates SP側Identity Domain SAMLアイデンティティ・プロバイダの画面
  12. 4) 下段にスクロールした、SSO構成の編集画面の追加構成にて、さらに項番2.SP側のIdentity DomainでIdPの 追加 12) で作成した、アイデンティティ・プロバイダの値をコピーして設定します。 ・ シングル・ログアウトURL:SP側のIdentity Domainのログアウト・サービス戻りURL ・

    ログアウト・レスポンスURL:SP側のIdentity Domainのログアウト・サービス・エンドポイントURL ・その他は既定の設定 「変更の保存」を選択します。 3. IdP側のIdentity DomainでSPの追加 31 Copyright © 2024, Oracle and/or its affiliates SP側Identity Domain SAMLアイデンティティ・プロバイダの画面
  13. SAML認証連携(外部IdP連携)を利用する場合、ID情報を同期することでID管理を効率良く行うことが可能です。 本手順書は下記構成を実現するためのIdentity Domainで構成されたIdPとSP間でID情報の同期の設定 手順書になります。 Identity Domain(IdP)からIdentity Domain(SP)へのID情報の同期 43 Copyright ©

    2024, Oracle and/or its affiliates Identity Domain IdP SCIM による ID 情報の同期 OCI コンソール Identity Domain 機 能 説 明 ID 情報の伝播の方向 双方向または、同期用アプリケーション側からの単方向の指定が可能 ユーザーの作成・更新・削除、アクティブ/非アクティブの同期 〇 ユーザーのパスワード同期 ✖ 同期対象となるユーザー 指定したユーザーおよびグループのメンバー グループの作成・更新・削除の同期 ✖(グループはマッピングのみ) ID 情報を同期するタイミング リアルタイムまたは、同期スケジュールの設定が可能 テナント A ※同一テナント内の Identity Domain 間の連携でも同様の手順となります。 テナント B 同期用 アプリ ケーション SP SCIM インター フェース
  14. 2) OCIコンソール画面にて、左メニューより 「アイデンティティとセキュリティ」 ー 「ドメイン」 を選択します。 3) アイデンティティ画面にて、 コンパートメントを指定し、ドメインを選択します。 ※

    自身で作成したIdentity Domain(ドメイン)に設定する場合にはその該当ドメインを選択します。 4) アイデンティティ・ドメイン画面にて、ドメイン情報のドメインURLをコピーし控えておきます。 ※後でIdP側での設定で利用します。 1. SP側のIdentity DomainでのSCIMインターフェース設定 (機密アプリケーション登録) 47 Copyright © 2024, Oracle and/or its affiliates
  15. 9) 機密アプリケーションの追加画面のクライアントにて、下段にスクロールし、アプリケーション・ロールの 「ロールの追加」 を 選択します。 10) アプリケーション・ロールの追加画面にて、「Identity Domain Administrator」を選択し、「追加」を選択します。 11)

    アプリケーション・ロールに「Identity Domain Administrator」が追加されている事を確認し、「次」を選択します。 1. SP側のIdentity DomainでのSCIMインターフェース設定 (機密アプリケーション登録) 50 Copyright © 2024, Oracle and/or its affiliates
  16. 11) Oracle Identity Domainの追加画面の接続構成にて、以下の値を入力し、「接続のテスト」を選択します。 ・ Host Name:SP側のIdentity DomainのテナントURLのホスト名部分 (例: idcs-xxxxxxxxxxxxx.identity.orclecloud.com)

    ※ Identity DomainのテナントURLは、項番1. SP側のIdentity DomainでのSCIMインターフェース設定 (機密アプリケーション登録)4) に記載しています。 ・ Client Id :項番1. SP側のIdentity DomainでのSCIMインターフェース設定(機密アプリケーション登録) 13) にてコピーした値を入力 ・ Client Secret 項番1. SP側のIdentity DomainでのSCIMインターフェース設定(機密アプリケーション登録) 13) にてコピーした値を入力 ・ Scope オプション: urn:opc:idm:__myscopes__(既定の設定) ・ Authentication Server Url: https://< SP側のIdentity Domainのテナント URLのホスト名部分>:443/oauth2/v1/token 2. IdP側のIdentity Domainでのプロビジョニング(同期用アプリケーション)の 設定 59 Copyright © 2024, Oracle and/or its affiliates
  17. 3. 動作確認 69 Copyright © 2024, Oracle and/or its affiliates

    9) SP側のIdentity DomainのOCIコンソールにアクセスします。 OCIコンソール(https://www.oracle.com/jp/cloud/sign-in.html)にアクセスします。 テナント名(クラウド・アカウント名)を入力し「Next」を選択します。 アイデンティティ・ドメインの選択画面が表示される場合には、対象ドメインを選択します。 サインイン画面にて、OCI管理者のID/パスワードを入力し、「サイン・イン」を選択しOCIコンソールにログインします。 ※ ドメイン選択画面が表示されない環境はDefaultドメインのみ存在する環境になり、自動的に“Defaultドメイン”に ログインすることになります。 ※環境によりドメイン選択画面は表示されません。
  18. 3. 動作確認 76 Copyright © 2024, Oracle and/or its affiliates

    19) SP側のIdentity DomainのOCIコンソールにアクセスします。 OCIコンソール(https://www.oracle.com/jp/cloud/sign-in.html)にアクセスします。 テナント名(クラウド・アカウント名)を入力し「Next」を選択します。 アイデンティティ・ドメインの選択画面が表示される場合には、対象ドメインを選択します。 サインイン画面にて、OCI管理者のID/パスワードを入力し、「サイン・イン」を選択しOCIコンソールにログインします。 ※ ドメイン選択画面が表示されない環境はDefaultドメインのみ存在する環境になり、自動的に“Defaultドメイン”に ログインすることになります。 ※環境によりドメイン選択画面は表示されません。