Stratégies IAM pour Container Instances
Cette rubrique traite des détails relatifs à l'écriture de stratégies visant à contrôler l'accès à Oracle Cloud Infrastructure Container Instances.
Pour plus d'informations sur IAM, reportez-vous à Présentation d'IAM.
Types de ressource
Types individuels de ressource
compute-container-instances
compute-containers
Type agrégé de ressource
compute-container-family
Commentaires
Une stratégie qui utilise <verb> compute-container-family
équivaut à en écrire une avec une instruction <verb> <individual resource-type>
distincte pour chaque type individuel de ressource.
Variables prises en charge
Les stratégies IAM pour Container Instances prennent en charge toutes les variables de stratégie générales. Reportez-vous à Variables générales pour toutes les demandes.
Détails des combinaisons de verbe et de type de ressource
Les tableaux suivants indiquent les droits d'accès et les opérations d'API que couvre chaque verbe. Le niveau d'accès est cumulatif à mesure que vous passez d'un verbe à l'autre, dans l'ordre suivant : inspect
> read
> use
> manage
. Le signe plus (+) dans une cellule du tableau indique un accès incrémentiel par rapport à la cellule directement au-dessus, alors que la mention "aucun élément supplémentaire" n'indique aucun accès incrémentiel.
Par exemple, les verbes read
et use
pour le type de ressource vcns
ne couvrent aucune opération d'API ni aucun droit d'accès supplémentaire par rapport au verbe inspect
. Cependant, le verbe manage
inclut plusieurs opérations d'API et droits d'accès supplémentaires.
Pour les types de ressource compute-container-family
Le tableau suivant répertorie les droits d'accès et les opérations d'API couverts par chaque type individuel de ressource inclus dans compute-container-family
.
Verbes | Autorisations | API entièrement couvertes | API partiellement couvertes |
---|---|---|---|
inspecter |
COMPUTE_CONTAINER_INSTANCE_INSPECT |
ListContainerInstanceShapes ListContainerInstances ListWorkRequests ListWorkRequestErrors ListWorkRequestLogs |
aucun |
lu |
INSPECTION + COMPUTE_CONTAINER_INSTANCE_READ |
GetWorkRequest |
GetContainerInstance (requiert également |
utiliser |
LU + COMPUTE_CONTAINER_INSTANCE_UPDATE COMPUTE_CONTAINER_INSTANCE_START COMPUTE_CONTAINER_INSTANCE_STOP COMPUTE_CONTAINER_INSTANCE_RESTART |
UpdateContainerInstance StartContainerInstance StopContainerInstance RestartContainerInstance |
aucun élément supplémentaire |
gérer |
UTILISER + COMPUTE_CONTAINER_INSTANCE_CREATE COMPUTE_CONTAINER_INSTANCE_DELETE COMPUTE_CONTAINER_INSTANCE_MOVE |
ChangeContainerInstanceCompartment |
CreateContainerInstance (requiert également DeleteContainerInstance (requiert également |
Verbes | Autorisations | API entièrement couvertes | API partiellement couvertes |
---|---|---|---|
inspecter |
COMPUTE_CONTAINER_INSPECT |
ListContainers |
GetContainerInstance (requiert également |
lu |
INSPECTION + COMPUTE_CONTAINER_READ |
GetContainer |
aucun élément supplémentaire |
utiliser |
LU + COMPUTE_CONTAINER_UPDATE COMPUTE_CONTAINER_LOG_RETRIEVE |
UpdateContainer RetrieveLogs |
aucun élément supplémentaire |
gérer |
UTILISER + COMPUTE_CONTAINER_CREATE COMPUTE_CONTAINER_DELETE |
aucun élément supplémentaire |
CreateContainerInstance (requiert également DeleteContainerInstance (requiert également |
Droits d'accès requis pour chaque opération d'API
Le tableau suivant présente les opérations d'API regroupées par type de ressource. Les types de ressource sont répertoriés dans l'ordre alphabétique.
Pour plus d'informations sur les droits d'accès, reportez-vous à Droits d'accès.
Opération d'API | Droits d'accès requis pour utiliser l'opération |
---|---|
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 et COMPUTE_CONTAINER_CREATE |
GetContainerInstance | COMPUTE_CONTAINER_INSTANCE_READ et 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 et COMPUTE_CONTAINER_DELETE |
GetWorkRequest | COMPUTE_CONTAINER_INSTANCE_READ |
ListWorkRequestLogs | COMPUTE_CONTAINER_INSTANCE_INSPECT |
ListWorkRequestErrors | COMPUTE_CONTAINER_INSTANCE_INSPECT |
ListWorkRequests | COMPUTE_CONTAINER_INSTANCE_INSPECT |
Exemples de stratégie
Les exemples suivants permettent de configurer rapidement votre location. Pour plus de personnalisation des stratégies de votre location, reportez-vous à Fonctionnalités avancées des stratégies IAM.
Autoriser les utilisateurs à créer des instances de conteneur
Type d'accès : autorisez les utilisateurs à créer des instances de conteneur dans le compartiment <container-instance-compartment-name>
et à utiliser des sous-réseaux dans le compartiment <subnet-compartment-name>
.
Emplacement de création de la stratégie : l'approche la plus simple consiste à placer cette stratégie dans la location. Si vous souhaitez que les administrateurs de chaque compartiment contrôlent les différentes instructions de stratégie pour leur compartiment, reportez-vous à Attachement de stratégie.
Allow group ContainerInstanceLaunchers to manage compute-container-family in compartment <container-instance-compartment-name>
Allow group ContainerInstanceLaunchers to use virtual-network-family in compartment <subnet-compartment-name>
Allow group ContainerInstanceLaunchers to read repos in tenancy
Pour permettre aux utilisateurs de créer des réseaux cloud et des sous-réseaux, reportez-vous à Autoriser les administrateurs réseau à gérer un réseau cloud.
Autoriser les instances de conteneur à extraire des images de Container Registry
Type d'accès : permet au service Container Instances de lire des images à partir de référentiels privés Container Registry.
Emplacement de création de la stratégie : l'approche la plus simple consiste à placer cette stratégie dans la location.
- Créez un groupe dynamique avec des instances de conteneur comme type de ressource. Ajoutez une règle avec la syntaxe suivante :
ALL {resource.type='computecontainerinstance', resource.compartment.id = '<container-instance-compartment-ocid>'}
-
Ecrivez la stratégie suivante pour accorder l'accès au groupe :
Allow dynamic-group ContainerInstanceDynamicGroup to read repos in compartment <container-registry-repo-compartment-name>
Sélection de l'image de conteneur à l'aide de la console
Type d'accès : lorsque vous créez l'instance de conteneur dans la console, vous pouvez sélectionner l'image de conteneur. Pour générer l'adresse correcte de l'image de conteneur, vous devez ajouter cette stratégie afin de lire les espaces de noms Object Storage.
Emplacement de création de la stratégie : l'approche la plus simple consiste à placer cette stratégie dans la location.
Allow group ContainerInstanceLaunchers to read objectstorage-namespaces in tenancy