Récupère la stratégie de contrôle d'accès d'une ressource. Peut être vide si aucune stratégie ou ressource de ce type n'existe. Essayer maintenant
Requête
Requête HTTP
GET https://www.googleapis.com/deploymentmanager/v2beta/projects/project /global/deployments/resource /getIamPolicy
Paramètres
Nom du paramètre | Valeur | Description |
---|---|---|
Paramètres de chemin d'accès | ||
project |
string |
ID du projet pour cette demande. |
resource |
string |
Nom ou ID de la ressource pour cette requête. |
Autorisation
Cette requête nécessite une autorisation avec au moins l'un des niveaux d'accès suivants:
Champ d'application |
---|
https://www.googleapis.com/auth/cloud-platform |
https://www.googleapis.com/auth/ndev.cloudman |
Corps de la requête
Ne spécifiez pas de corps de requête pour cette méthode.
Réponse
Si la requête aboutit, cette méthode renvoie un corps de réponse présentant la structure suivante :
{ "version":integer , "bindings": [ { "role":string , "members": [string ], "condition": { "expression":string , "title":string , "description":string , "location":string } } ], "auditConfigs": [ { "service":string , "exemptedMembers": [string ], "auditLogConfigs": [ { "logType":string , "exemptedMembers": [string ], "ignoreChildExemptions":boolean } ] } ], "rules": [ { "description":string , "permissions": [string ], "action":string , "ins": [string ], "notIns": [string ], "conditions": [ { "iam":string , "sys":string , "svc":string , "op":string , "values": [string ] } ], "logConfigs": [ { "counter": { "metric":string , "field":string , "customFields": [ { "name":string , "value":string } ] }, "dataAccess": { "logMode":string }, "cloudAudit": { "logName":string , "authorizationLoggingOptions": { "permissionType":string } } } ] } ], "etag":bytes , "iamOwned":boolean }
Nom de propriété | Valeur | Description | Remarques |
---|---|---|---|
version |
integer |
Spécifie le format de la règle. Les valeurs valides sont 0, 1 et 3. Les requêtes spécifiant une valeur non valide sont rejetées. Toute opération qui affecte les liaisons de rôle conditionnelles doit spécifier la version 3. Cette exigence s'applique aux opérations suivantes: * Obtenir une stratégie qui inclut une liaison de rôle conditionnelle * Ajouter une liaison de rôle conditionnelle à une stratégie * Modifier une liaison de rôle conditionnelle dans une stratégie * Supprimer une liaison de rôle, avec ou sans condition, d'une stratégie qui inclut des conditions **Important** : Si vous utilisez des conditions IAM, vous devez inclure le champ "etag" chaque fois que vous appelez "setIamPolicy". Si vous omettez ce champ, IAM vous permet d'écraser une stratégie de version 3 par une stratégie de version 1, et toutes les conditions de la stratégie de version 3 sont perdues. Si une règle n'inclut aucune condition, les opérations associées à cette règle peuvent spécifier une version valide ou laisser le champ non défini. Pour savoir quelles ressources acceptent les conditions dans leurs stratégies IAM, consultez la [documentation IAM](https://cloud.google.com/iam/help/conditions/resource-policies). |
|
bindings[] |
list |
Associe une liste de "members" à un "role". Vous pouvez éventuellement spécifier une "condition" qui détermine comment et quand les "bindings" sont appliqués. Chacune des "liaisons" doit contenir au moins un membre. | |
bindings[].role |
string |
Rôle attribué aux "membres". Par exemple, "roles/viewer", "roles/editor" ou "roles/owner". | |
bindings[].members[] |
list |
Spécifie les identités demandant l'accès à une ressource Cloud Platform. "members" peut prendre les valeurs suivantes: * "allUsers" : identifiant spécial qui représente toute personne ayant accès à Internet et possédant ou non un compte Google. * "allAuthenticatedUsers" : identifiant spécial qui représente toute personne authentifiée avec un compte Google ou un compte de service. * "user:{emailid}" : adresse e-mail qui représente un compte Google spécifique. Par exemple, "alice@example.com". * "serviceAccount:{emailid}" : adresse e-mail représentant un compte de service. Par exemple, "mon-autre-application@appspot.gserviceaccount.com". * "group:{emailid}" : adresse e-mail représentant un groupe Google. Par exemple, "admins@example.com". * "deleted:user:{emailid}?uid={uniqueid}" : adresse e-mail (plus un identifiant unique) représentant un utilisateur qui a été récemment supprimé. Par exemple, "alice@example.com?uid=123456789012345678901". Si l'utilisateur est récupéré, cette valeur revient à "user:{emailid}" et l'utilisateur récupéré conserve son rôle dans la liaison. * "deleted:serviceAccount:{emailid}?uid={uniqueid}" : adresse e-mail (plus un identifiant unique) représentant un compte de service récemment supprimé. Par exemple, "my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901". Si le compte de service est restauré, cette valeur revient à "serviceAccount:{emailid}" et le compte de service restauré conserve son rôle dans la liaison. * "deleted:group:{emailid}?uid={uniqueid}" : adresse e-mail (plus un identifiant unique) représentant un groupe Google récemment supprimé. Par exemple, "admins@example.com?uid=123456789012345678901". Si le groupe est récupéré, cette valeur revient à "group:{emailid}" et le groupe récupéré conserve le rôle dans la liaison. * "domain:{domain}" : domaine G Suite (principal) qui représente tous les utilisateurs de ce domaine. Par exemple, "google.com" ou "example.com". |
|
bindings[].condition |
nested object |
Condition associée à cette liaison. Si la condition renvoie "true", cette liaison s'applique à la requête actuelle. Si la condition renvoie "false", cette liaison ne s'applique pas à la requête actuelle. Toutefois, une liaison de rôle différente peut accorder le même rôle à un ou plusieurs membres de cette liaison. Pour savoir quelles ressources acceptent les conditions dans leurs stratégies IAM, consultez la [documentation IAM](https://cloud.google.com/iam/help/conditions/resource-policies). |
|
bindings[].condition.expression |
string |
Représentation textuelle d'une expression à l'aide de la syntaxe CEL (Common Expression Language). | |
bindings[].condition.title |
string |
Facultatif. Titre de l'expression, sous forme de chaîne courte décrivant son objectif. Il peut par exemple être utilisé dans les interfaces utilisateur qui permettent de saisir l'expression. | |
bindings[].condition.description |
string |
Facultatif. Description de l'expression. Il s'agit d'un texte plus long décrivant l'expression (par exemple, lorsque l'utilisateur passe la souris sur celle-ci dans une interface utilisateur). | |
bindings[].condition.location |
string |
Facultatif. Chaîne indiquant l'emplacement de l'expression pour la création de rapports d'erreurs (par exemple, un nom de fichier et une position dans le fichier). | |
auditConfigs[] |
list |
Spécifie la configuration de journalisation d'audit du cloud pour cette stratégie. |
|
auditConfigs[].service |
string |
Spécifie un service qui sera activé pour la journalisation d'audit. Par exemple, "storage.googleapis.com", "cloudsql.googleapis.com". "allServices" est une valeur spéciale qui couvre tous les services. | |
auditConfigs[].exemptedMembers[] |
list |
||
auditConfigs[].auditLogConfigs[] |
list |
Configuration de la journalisation de chaque type d'autorisation. | |
auditConfigs[].auditLogConfigs[].logType |
string |
Type de journal que cette configuration active. | |
auditConfigs[].auditLogConfigs[].exemptedMembers[] |
list |
Spécifie les identités qui ne génèrent pas de journalisation pour ce type d'autorisation. Ce champ utilise le même format que [Binding.members][]. | |
auditConfigs[].auditLogConfigs[].ignoreChildExemptions |
boolean |
||
rules[] |
list |
Si plusieurs règles sont spécifiées, elles sont appliquées de la manière suivante: - Toutes les règles LOG correspondantes sont toujours appliquées. - Si une règle DENY/DENY_WITH_LOG correspond, l'autorisation est refusée. La journalisation est appliquée si une ou plusieurs règles correspondantes nécessitent la journalisation. - Sinon, si une règle ALLOW/ALLOW_WITH_LOG correspond, l'autorisation est accordée. La journalisation est appliquée si une ou plusieurs règles correspondantes nécessitent la journalisation. - Sinon, si aucune règle ne s'applique, l'autorisation est refusée. | |
rules[].description |
string |
Description lisible de la règle. | |
rules[].permissions[] |
list |
Une autorisation est une chaîne au format |
|
rules[].action |
string |
Obligatoire | |
rules[].ins[] |
list |
Si une ou plusieurs clauses "in" sont spécifiées, la règle correspond si PRINCIPAL/AUTHORITY_SELECTOR figure dans au moins l'une de ces entrées. | |
rules[].notIns[] |
list |
Si une ou plusieurs clauses "not_in" sont spécifiées, la règle correspond si PRINCIPAL/AUTHORITY_SELECTOR ne figure dans aucune des entrées. | |
rules[].conditions[] |
list |
Restrictions supplémentaires à respecter Toutes les conditions doivent être remplies pour que la règle s'applique. | |
rules[].conditions[].iam |
string |
Attributs approuvés fournis par le système IAM. | |
rules[].conditions[].sys |
string |
Attributs approuvés fournis par tout service propriétaire de ressources et qui utilise le système IAM pour le contrôle des accès. | |
rules[].conditions[].svc |
string |
Attributs approuvés exécutés par le service. | |
rules[].conditions[].op |
string |
Opérateur à utiliser pour appliquer le sujet. | |
rules[].conditions[].values[] |
list |
Objets de la condition. | |
rules[].logConfigs[] |
list |
La configuration renvoyée aux appelants de tech.iam.IAM.CheckPolicy pour toutes les entrées correspondant à l'action LOG. | |
rules[].logConfigs[].counter |
nested object |
Options du compteur. | |
rules[].logConfigs[].counter.metric |
string |
Métrique à mettre à jour. | |
rules[].logConfigs[].counter.field |
string |
Valeur du champ à attribuer. | |
rules[].logConfigs[].counter.customFields[] |
list |
Champs personnalisés | |
rules[].logConfigs[].counter.customFields[].name |
string |
"Name" correspond au nom du champ. | |
rules[].logConfigs[].counter.customFields[].value |
string |
La valeur correspond à la valeur du champ. Contrairement à CounterOptions.field, la valeur ici est une constante qui n'est pas dérivée de IAMContext. | |
rules[].logConfigs[].dataAccess |
nested object |
Options d'accès aux données. | |
rules[].logConfigs[].dataAccess.logMode |
string |
||
rules[].logConfigs[].cloudAudit |
nested object |
Options d'audit dans le cloud. | |
rules[].logConfigs[].cloudAudit.logName |
string |
Nom de journal à renseigner dans l'enregistrement d'audit Cloud. |
|
rules[].logConfigs[].cloudAudit.authorizationLoggingOptions |
nested object |
Informations utilisées par le pipeline Cloud Audit Logging. | |
rules[].logConfigs[].cloudAudit.authorizationLoggingOptions.permissionType |
string |
Type de l'autorisation vérifiée. | |
etag |
bytes |
L'élément "etag" permet d'effectuer un contrôle de simultanéité positive, pour éviter que les mises à jour simultanées d'une stratégie ne s'écrasent les unes les autres. Nous vous recommandons vivement d'utiliser l'attribut "etag" dans le cycle de lecture-modification-écriture pour effectuer des mises à jour de stratégie afin d'éviter les conditions de concurrence: un "etag" est renvoyé dans la réponse à "getIamPolicy", et les systèmes doivent placer cet "etag" dans la requête à "setIamPolicy" pour s'assurer que leur modification sera appliquée à la même version de la stratégie. **Important:** Si vous utilisez des conditions IAM, vous devez inclure le champ "etag" chaque fois que vous appelez "setIamPolicy". Si vous omettez ce champ, IAM vous permet de remplacer une stratégie de version 3 par une stratégie de version 1, et toutes les conditions de la stratégie de version 3 sont perdues. |
|
iamOwned |
boolean |