コンテナ・インスタンスIAMポリシー

このトピックでは、Oracle Cloud Infrastructure Container Instancesへのアクセスを制御するポリシーの作成の詳細を説明します。

IAMの詳細は、IAMの概要を参照してください。

リソースタイプ

個々のリソース・タイプ

compute-container-instances

compute-containers

集約リソース・タイプ

compute-container-family

コメント

<verb> compute-container-familyを使用するポリシーは、個々のリソース・タイプごとに個別の<verb> <individual resource-type>ステートメントを使用して記述することと同じです。

サポートされている変数

コンテナ・インスタンスIAM・ポリシーでは、すべての一般的なポリシー変数がサポートされます。すべてのリクエストの一般的な変数を参照してください。

動詞+リソース・タイプの組合せの詳細

次の表は、各動詞でカバーされる権限およびAPI操作を示しています。アクセス・レベルは、inspect > read > use > manageの順に累積します。表のセルのプラス記号(+)は、そのすぐ上のセルと比較して増分アクセスを示しますが、「追加なし」は増分アクセスを示しません。

たとえば、vcnsリソース・タイプのreadおよびuse動詞は、inspect動詞と比較して追加の権限またはAPI操作には対応しません。ただし、manage動詞には、いくつか追加の権限とAPI操作が含まれています。

compute-container-familyリソース・タイプの場合

次の表に、compute-container-familyに含まれる個々のリソース・タイプで処理される権限およびAPI操作を示します。

compute-containerインスタンス
Verb サイトの許可設定 完全にカバーされるAPI 一部カバーされるAPI
検査する

COMPUTE_CONTAINER_INSTANCE_INSPECT

ListContainerInstanceShapes

ListContainerInstances

ListWorkRequests

ListWorkRequestErrors

ListWorkRequestLogs

なし

読む

検査+

COMPUTE_CONTAINER_INSTANCE_READ

GetWorkRequest

GetContainerInstance (inspect compute-containerも必要)

用いる

読取り+

COMPUTE_CONTAINER_INSTANCE_UPDATE

COMPUTE_CONTAINER_INSTANCE_START

COMPUTE_CONTAINER_INSTANCE_STOP

COMPUTE_CONTAINER_INSTANCE_RESTART

UpdateContainerInstance

StartContainerInstance

StopContainerInstance

RestartContainerInstance

余分なし

管理

使用+

COMPUTE_CONTAINER_INSTANCE_CREATE

COMPUTE_CONTAINER_INSTANCE_DELETE

COMPUTE_CONTAINER_INSTANCE_MOVE

ChangeContainerInstanceCompartment

CreateContainerInstance (use vnicsuse subnetsおよびmanage compute-containerも必要)

DeleteContainerInstance (use vnicsuse subnetsおよびmanage compute-containerも必要)

コンピュート・コンテナ
Verb サイトの許可設定 完全にカバーされるAPI 一部カバーされるAPI
検査する

COMPUTE_CONTAINER_INSPECT

ListContainers

GetContainerInstance (read compute-container-instancesも必要)

読む

検査+

COMPUTE_CONTAINER_READ

GetContainer

余分なし

用いる

読取り+

COMPUTE_CONTAINER_UPDATE

COMPUTE_CONTAINER_LOG_RETRIEVE

UpdateContainer

RetrieveLogs

余分なし

管理

使用+

COMPUTE_CONTAINER_CREATE

COMPUTE_CONTAINER_DELETE

余分なし

CreateContainerInstance (use vnicsuse subnetsおよびmanage compute-container-instancesも必要

DeleteContainerInstance (use vnicsuse subnetsおよびmanage compute-container-instancesも必要

API操作ごとに必要な権限

次の表に、リソース・タイプ別にグループ化されたAPI操作を示します。リソース・タイプは、アルファベット順にリストされます。

権限の詳細は、権限を参照してください。

API操作 操作の使用に必要な権限
GetContainer COMPUTE_CONTAINER_READ
ListContainers COMPUTE_CONTAINER_INSPECT
RetrieveLogs COMPUTE_CONTAINER_LOG_RETRIEVE
UpdateContainer COMPUTE_CONTAINER_UPDATE
CreateContainerInstance COMPUTE_CONTAINER_INSTANCE_CREATE、VNIC_CREATE、SUBNET_USEおよびCOMPUTE_CONTAINER_CREATE
GetContainerInstance COMPUTE_CONTAINER_INSTANCE_READおよびCOMPUTE_CONTAINER_INSPECT
ListContainerInstances COMPUTE_CONTAINER_INSTANCE_INSPECT
ListContainerInstanceShapes COMPUTE_CONTAINER_INSTANCE_INSPECT
UpdateContainerInstance COMPUTE_CONTAINER_INSTANCE_UPDATE
StartContainerInstance COMPUTE_CONTAINER_INSTANCE_START
StopContainerInstance COMPUTE_CONTAINER_INSTANCE_STOP
RestartContainerInstance COMPUTE_CONTAINER_INSTANCE_RESTART
ChangeContainerInstanceCompartment COMPUTE_CONTAINER_INSTANCE_MOVE
DeleteContainerInstance COMPUTE_CONTAINER_INSTANCE_DELETE、VNIC_DELETE、SUBNET_USEおよびCOMPUTE_CONTAINER_DELETE
GetWorkRequest COMPUTE_CONTAINER_INSTANCE_READ
ListWorkRequestLogs COMPUTE_CONTAINER_INSTANCE_INSPECT
ListWorkRequestErrors COMPUTE_CONTAINER_INSTANCE_INSPECT
ListWorkRequests COMPUTE_CONTAINER_INSTANCE_INSPECT

ポリシーの例

次の例を使用して、テナンシのポリシーを構築します。

ユーザーがコンテナ・インスタンスを作成できるようにします

アクセス・タイプ:クラウド・ネットワークに起動したコンテナ・インスタンスおよびコンパートメントXYZのサブネットのすべての機能を実行する機能。

ポリシーを作成する場所:このポリシーをテナントに配置する方法が最も簡単です。各コンパートメント(ABCおよびXYZ)の管理者が、コンパートメントの個々のポリシー・ステートメントを制御できるようにするには、ポリシー・アタッチメントを参照してください。

Allow group ContainerInstanceLaunchers to manage compute-container-family in compartment ABC
Allow group ContainerInstanceLaunchers to use virtual-network-family in compartment XYZ
Allow group ContainerInstanceLaunchers to read repos in tenancy

ユーザーが新しいクラウド・ネットワークおよびサブネットを作成できるようにするには、ネットワーク管理者にクラウド・ネットワークの管理を許可するを参照してください。

コンテナ・インスタンスコンテナ・レジストリからイメージをプルできるようにします

アクセス・タイプ: コンテナ・インスタンス・サービスで、コンテナ・レジストリのプライベート・リポジトリからイメージを読み取ることができます。

ポリシーを作成する場所:このポリシーをテナントに配置する方法が最も簡単です。

  1. リソース・タイプとしてコンテナ・インスタンスを使用して、動的グループを作成します。次の構文でルールを追加します。
    ALL {resource.type='computecontainerinstance'}
  2. 次のポリシーを記述して、動的グループにアクセスします:

    Allow dynamic-group ContainerInstanceDynamicGroup to read repos in tenancy