Oracle Cloud Infrastructure(OCI)IAMの概要:主要コンポーネントとIDCSフェデレーション設定の手順
本記事では、Oracle® Cloud Infrastructure(OCI)のIdentity and Access Management(IAM)を構成する各コンポーネントを紹介し、Oracleクラウドリソースを効率的に管理するための便利な機能について解説します。
具体的には、ユーザーのグループに対して特定のリソースへのアクセス権限を割り当てる方法や、OCIとOracle Identity Cloud Service(IDCS)をフェデレーションする手順についても取り上げます。
IAMの構成要素
IAMは、以下のコンポーネントで構成されています。
- リソース:OCI上で作成されるオブジェクトです。Computeインスタンス、ブロック・ボリューム、仮想クラウド・ネットワーク(VCN)、サブネットなどが該当します。
- ユーザー:テナンシーおよびコンパートメントのポリシーに基づき、グループに所属することでOCIリソースへの制限付きアクセス権限が付与されます。
- グループ:同じOCIリソースへアクセスできるユーザーの集合です。1人のユーザーは複数のグループに所属できます。
- 動的グループ:セキュリティを強化し、鍵管理をサーバー側ではなくクライアント側で行えるようにする仕組みです。動的グループはコンパートメント内の特定のインスタンスと紐付けることができ、ポリシーを割り当てることで、API経由でのアクセスを特定のインスタンスに許可できます。
- コンパートメント:ポリシーを適用し、Compute、Storage、Network、ロード・バランサなどのリソースへのアクセス制御を行うためのグローバルな論理コンテナです。たとえば、管理者以外のユーザーがそのコンパートメント内で作成されたリソースを使用できないよう、ポリシーで制限することが可能です。
- テナンシー:すべてのOCIリソースを包含するデフォルトのルート・コンパートメントです。テナンシー内では、管理者が1つ以上のコンパートメント、ユーザー、グループを作成し、グループがコンパートメント内のリソースを利用できるようにポリシーを割り当てます。
- ポリシー:グループ単位およびコンパートメント単位で、誰がどのリソースにアクセスできるかを定義します。アクセスレベルには以下の4種類があります。
- Inspect(検査)
- Read(読み取り)
- Use(使用)
- Manage(管理)
- リージョン:IAMリソースが存在する地理的な場所です。IAMサービスのリソースはグローバルであり、複数のリージョンにまたがる単一のテナンシーを持つことができます。ホーム・リージョンで行われた変更は、他のすべてのリージョンに自動的に反映されます。
- フェデレーション:アイデンティティ・プロバイダ(IdP)とサービス・プロバイダという2者以上の間で確立される連携メカニズムです。ユーザーやグループはアイデンティティ・プロバイダ側で管理され、IDCSはデフォルトでOCI向けのフェデレーション機能を提供します。
IAMリソース
このセクションでは、リソースの適用範囲、リソース識別子、およびリソース制限について説明します。
リソースの適用範囲
IAMではリソースがグローバルとして定義されているため、すべてのリージョンおよび可用性ドメインのコンポーネント全体で利用できます。
リソース識別子(OCID)
OCIのリソースには、次の構文に従った一意の名前(OCID:Oracle Cloud Identifier)が割り当てられます。
ocid1.<resource-type>.<realm>.[region][.future-use].<unique-ID>
OCIDの各プレースホルダは以下の要素を表します。
- ocid1:OCIDのバージョン。
- resource-type:リソースの種類。instance、volume、VCN、subnet、user、groupなど。
- realm:一連のリージョンを含み、可用性ドメインとエンティティを共有する領域です。realmには以下の値が指定されます。
- oc1:商用リージョン用realm
- oc2:Government Cloud用realm
- oc3:Federal Government Cloud用realm
リソース制限
IAM制限とは、可用性ドメイン内のComputeインスタンスの最大数などを管理するIAMリソースのクォータです。
リージョンごとのテナンシーの制限値と使用状況を確認するには、以下の手順を実行します。
- IAMコンソールを開きます。
- 「ユーザー」メニューを開き、「テナンシー」をクリックします。
- 「サービス制限」をクリックします。
特定のリソースがサービス制限に達した場合は、サービス制限の引き上げを申請することで、必要に応じて新しいリソースを作成できます。
サービス制限の引き上げを申請する手順は以下の通りです。
- 「ヘルプ」メニューから「サポート」に移動し、「サービス制限の引き上げを申請」をクリックします。
- 以下の情報を入力します。
- 主担当者の連絡先情報
- サービスカテゴリ
- リソース
- 申請理由
- 「リクエストの送信」をクリックします。
アイデンティティ・プロバイダとのフェデレーション
OCIは、以下のコンポーネントおよびアイデンティティ・プロバイダとのフェデレーションをサポートしています。
- IDCS
- Microsoft® Active Directory®
- Microsoft Azure® Active Directory
- Okta®
- Security Assertion Markup Language(SAML)2.0プロトコルをサポートするアイデンティティ・プロバイダ
本記事の例では、IDCSをアイデンティティ・プロバイダとして使用します。
IDCSとのフェデレーション手順
IDCSとフェデレーションするには、以下の手順を実行します。
ステップ1:IDCSから必要な情報を取得する
- 管理者権限でOCIのIDCSコンソールにログインします。
- IDCSコンソールで「アプリケーション」をクリックします。
- 「COMPUTEBAREMETAL」をクリックします。
- 「構成」をクリックします。
- 「一般情報」を展開して、クライアントIDを表示します。
- 「シークレットの表示」をクリックして、クライアント・シークレットを確認します。
- クライアントIDとクライアント・シークレットを保存します。
ステップ2:OCIにアイデンティティ・プロバイダを追加する
- OCIのログイン資格情報を使用してコンソールにサインインします。
- 「ガバナンスおよび管理」ナビゲーション・メニューを開き、「アイデンティティ」→「フェデレーション」をクリックします。
- 「アイデンティティ・プロバイダの追加」をクリックします。
- 以下の情報を入力します。
- 名前:すべてのアイデンティティ・プロバイダの中で一意である必要があります。Oracleによってテナンシーに追加された後は変更できません。
- 説明:内容が分かりやすい説明文を入力します。
- IDCSベースURL:リソースのURLを入力します。
- クライアントID:事前に取得したクライアント識別子を入力します。
- クライアント・シークレット:事前に取得したクライアント・シークレットを入力します。
- 「拡張オプションの表示」をクリックし、以下の情報を入力します。
- アサーションの暗号化:チェックボックスをオンにすると、IdPからの暗号化が有効になります。このチェックボックスをオフにした場合は、IDCS側でアサーションの暗号化を設定する必要があります。
- タグ:リソース作成の権限がある場合、タグを適用することもできます。定義済みタグを適用するには、タグ・ネームスペースを使用する権限が必要です。
- 「続行」をクリックします。
- IDCSグループとOCI内のIAMグループのマッピングを定義します。IDCSグループは0個、1個、または複数のIAMグループにマッピングでき、その逆も同様です。
これで「フェデレーション」ページのテナンシー・リストにアイデンティティ・プロバイダが表示されます。各グループ・マッピングには、OracleによってOCIDが割り当てられます。
ステップ3:グループのIAMポリシーを設定する
通常の手順に従って、グループのIAMポリシーを設定してください。
ステップ4:フェデレーテッド・ユーザーにテナンシー名とURLを通知する
フェデレーテッド・ユーザーに対して、テナンシー名とサインインURLを提供します。URLは以下のような形式になります。
https://console.us-cshburn-1.oraclecloud.com
コンソールでのアイデンティティ・プロバイダの管理
このセクションでは、アイデンティティ・プロバイダの削除、およびIDCSのグループ・マッピングの追加・更新・削除の手順を紹介します。
アイデンティティ・プロバイダの削除
アイデンティティ・プロバイダを削除するには、以下の手順を実行します。
- テナンシーからアイデンティティ・プロバイダを削除します。
- 「ガバナンスおよび管理」ナビゲーション・メニューを開き、「アイデンティティ」→「フェデレーション」をクリックして、テナンシー内のアイデンティティ・プロバイダの一覧を表示します。
- 削除したいアイデンティティ・プロバイダをクリックして、詳細を表示します。
- 「削除」をクリックして、操作を確定します。
- IDCSアカウントからテナンシーを削除します。
- IDCSコンソールを開き、フェデレーテッド・アカウントにサインインします。
- 「アプリケーション」をクリックして、アプリケーションの一覧を表示します。
- 対象のテナンシーを見つけ、その名前をクリックして詳細ページを開きます。
- 「非アクティブ化」をクリックして、操作を確定します。
- 「削除」をクリックして、操作を確定します。
IDCSのグループ・マッピングの追加
IDCSのグループ・マッピングを追加するには、以下の手順を実行します。
- 「ガバナンスおよび管理」ナビゲーション・メニューを開き、「アイデンティティ」をクリックして、テナンシー内のアイデンティティ・プロバイダの一覧を表示します。
- 「フェデレーション」をクリックし、IDCSフェデレーション名を選択して詳細を表示します。
- 「プロバイダ詳細の編集」をクリックします。
- 少なくとも1つのマッピングを追加します。
- 「+ マッピングの追加」をクリックします。
- 「アイデンティティ・プロバイダ・グループ」リストからIDCSグループを選択します。
- 「IAMグループ」を選択して、OCIグループの一覧を表示します。
- 新しいIAMグループではなく、IAM内に新しいOCIグループを作成してIDPグループにマッピングする場合は、「新規OCIグループ」を選択します。
- マッピングごとにステップ4を繰り返し、すべてのマッピングを追加したら「送信」をクリックします。
グループ・マッピングの更新または削除
グループ・マッピングを更新または削除するには、以下の手順を実行します。
- 「ガバナンスおよび管理」ナビゲーション・メニューを開き、「アイデンティティ」→「フェデレーション」をクリックして、テナンシー内のアイデンティティ・プロバイダの一覧を表示します。
- 対象のアイデンティティ・プロバイダをクリックして詳細を表示します。
- 「マッピングの編集」をクリックします。
- マッピングを更新するか、「X」をクリックしてマッピングを削除します。
- 「送信」をクリックします。
まとめ
本記事では、IAMの各コンポーネントがどのように連携して動作するか、そしてOCIで複数のIDCSアカウントをフェデレーションする方法について解説しました。
ご意見やご質問がある場合は、フィードバック・タブをご利用ください。チャットから今すぐ会話を始めることもできます。
データベース・サービスの詳細については、ぜひご確認ください。
-
Oracle CloudでDBaaSデータベースを作成する方法:コンパートメント作成からDBシステム構築まで完全解説
この記事では、Oracle® Cloud上にDatabase-as-a-Service(DBaaS)データベースを作成するために必要なすべての手順を、画像付きでわかりやすく解説します。 はじめに このサービスを利用すれば、物理ハードウェアの調達やOSのインストール、Oracle Databaseのインストール前提条件への対応などを一切行うことなく、データベースを構築できます。作成にかかる時間も短く、必要な権限も最小限のシステム管理者レベルで十分です。 本記事では、Oracle CloudでDBaaSをセットアップするための以下のステップについて学びます。 コンパートメントの作成 仮想クラウド
-
Oracle 19cのDBCAコマンドでデータベースをクローンする方法【サイレントモード完全ガイド】
本記事では、Oracle Database 19cの新機能であるDatabase Configuration Assistant(DBCA)を使用して、ソースデータベースのバックアップを作成することなく、リモートのプラガブル・データベース(PDB)をコンテナ・データベース(CDB)へクローンする手順をご紹介します。 DBCAによるクローンの最大の特長は、ソースからターゲットへの複製にかかる時間が最小限に抑えられる点です。 ソースDBの構成 CDB:LCONCDB PDB:LCON 以下は、ソース側の各コンテナ(CDBおよびPDB)に存在するDBFファイルの総数です。クローン作成後は、ター