コンテナ・インスタンスの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操作を示します。
Verb | サイトの許可設定 | 完全にカバーされるAPI | 一部カバーされるAPI |
---|---|---|---|
検査する |
COMPUTE_CONTAINER_INSTANCE_INSPECT |
ListContainerInstanceShapes ListContainerInstances ListWorkRequests ListWorkRequestErrors ListWorkRequestLogs |
なし |
読む |
検査+ COMPUTE_CONTAINER_INSTANCE_READ |
GetWorkRequest |
GetContainerInstance ( |
用いる |
読取り+ 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 ( DeleteContainerInstance ( |
Verb | サイトの許可設定 | 完全にカバーされるAPI | 一部カバーされるAPI |
---|---|---|---|
検査する |
COMPUTE_CONTAINER_INSPECT |
ListContainers |
GetContainerInstance ( |
読む |
検査+ COMPUTE_CONTAINER_READ |
GetContainer |
余分なし |
用いる |
読取り+ COMPUTE_CONTAINER_UPDATE COMPUTE_CONTAINER_LOG_RETRIEVE |
UpdateContainer RetrieveLogs |
余分なし |
管理 |
使用+ COMPUTE_CONTAINER_CREATE COMPUTE_CONTAINER_DELETE |
余分なし |
CreateContainerInstance ( DeleteContainerInstance ( |
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
ユーザーが新しいクラウド・ネットワークおよびサブネットを作成できるようにするには、ネットワーク管理者にクラウド・ネットワークの管理を許可するを参照してください。
コンテナ・インスタンスがコンテナ・レジストリからイメージをプルできるようにします
アクセス・タイプ: コンテナ・インスタンス・サービスで、コンテナ・レジストリのプライベート・リポジトリからイメージを読み取ることができます。
ポリシーを作成する場所:このポリシーをテナントに配置する方法が最も簡単です。
- リソース・タイプとしてコンテナ・インスタンスを使用して、動的グループを作成します。次の構文でルールを追加します。
ALL {resource.type='computecontainerinstance'}
-
次のポリシーを記述して、動的グループにアクセスします:
Allow dynamic-group ContainerInstanceDynamicGroup to read repos in tenancy