Erfordert Autorisierung
Legt die Zugriffskontrollrichtlinie für die angegebene Ressource fest.
Ersetzt jede vorhandene Richtlinie.
Anfrage
HTTP-Anfrage
POST https://www.googleapis.com/deploymentmanager/v2/projects/project/global/deployments/resource/setIamPolicy
Parameter
Parametername | Wert | Beschreibung |
---|---|---|
Pfadparameter | ||
project |
string |
Projekt-ID für diese Anfrage. |
resource |
string |
Name der Ressource für diese Anfrage. |
Autorisierung
Diese Anfrage benötigt eine Autorisierung mit mindestens einem der folgenden Bereiche (weitere Informationen zu Authentifizierung und Autorisierung).
Bereich |
---|
https://www.googleapis.com/auth/cloud-platform |
https://www.googleapis.com/auth/ndev.cloudman |
Anfragetext
Geben Sie im Anfragetext Daten mit der folgenden Struktur ein:
{ "version": integer, "bindings": [ { "role": string, "members": [ string ] } ], "auditConfigs": [ { "service": string, "exemptedMembers": [ string ], "auditLogConfigs": [ { "logType": string, "exemptedMembers": [ string ] } ] } ], "rules": [ { "description": string, "permissions": [ string ], "action": string, "ins": [ string ], "notIns": [ string ], "conditions": [ { "iam": string, "sys": string, "svc": string, "op": string, "value": string, "values": [ string ] } ], "logConfigs": [ { "counter": { "metric": string, "field": string } } ] } ], "etag": bytes, "iamOwned": boolean }
Name der Eigenschaft | Wert | Beschreibung | Hinweise |
---|---|---|---|
version |
integer |
Version der "Richtlinien". Die Standardversion ist 0. |
|
bindings[] |
list |
Verbindet eine Liste von "Mitgliedern" mit einer "Rolle". Für eine "Rolle" dürfen nicht mehrere "Bindungen" festgelegt werden. "Bindungen" ohne Mitglieder ergeben einen Fehler. | |
bindings[].role |
string |
"Mitgliedern" zugewiesene Rolle. Zum Beispiel, "Rollen/Betrachter", "Rollen/Editor" oder "Rollen/Eigentümer". | |
bindings[].members[] |
list |
Gibt die Identitäten an, die Zugriff auf eine Ressource der Cloud Platform anfordern. "Mitglieder" können die folgenden Werte haben: * "allUsers": Eine spezielle Kennung für alle Identitäten im Internet, ob mit oder ohne Google-Konto. * "allAuthenticatedUsers": Eine spezielle Kennung für alle Identitäten, die mit einem Google-Konto oder einem Dienstkonto authentifiziert sind. * "user:{emailid}": Eine E-Mail-Adresse, die für ein bestimmtes Google-Konto steht. Zum Beispiel "alice@gmail.com" oder "joe@example.com". * "serviceAccount:{emailid}": Eine E-Mail-Adresse, die für ein Dienstkonto steht. Zu Beispiel "my-other-app@appspot.gserviceaccount.com". * "group:{emailid}": Eine E-Mail-Adresse, die für eine Google-Gruppe steht. Zum Beispiel "admins@example.com". * "domain:{domain}": Ein Google Apps-Domain-Name, der für alle Nutzer dieser Domain steht. Zum Beispiel "google.com" oder "example.com". |
|
auditConfigs[] |
list |
Gibt Audit-Log-Konfigurationen für "data access" an. "data access": bezieht sich allgemein auf Datenlese-/Datenschreibvorgänge und Admin-Lesevorgänge. "admin activity": bezieht sich allgemein auf Admin-Schreibvorgänge. Hinweis: "AuditConfig" gilt nicht für "admin activity", das immer Audit-Logs aktiviert. |
|
auditConfigs[].service |
string |
Gibt einen Dienst an, der für Audit-Logs aktiviert wird. Zum Beispiel, "resourcemanager", "storage", "compute". "allService" ist ein spezieller Wert für alle Dienste. | |
auditConfigs[].exemptedMembers[] |
list |
Gibt die Identitäten an, die vom Audit-Logging mit "data access" für den oben angegebenen "service" ausgeschlossen sind. Entspricht dem Format von Bindungsmitgliedern. | |
auditConfigs[].auditLogConfigs[] |
list |
Die Konfiguration für jeden Typ von Protokollierung. | |
auditConfigs[].auditLogConfigs[].logType |
string |
Der Protokolltyp, der von dieser Konfiguration aktiviert wird. | |
auditConfigs[].auditLogConfigs[].exemptedMembers[] |
list |
Gibt die Identitäten an, die von dieser Art Protokollierung ausgeschlossen sind. Entspricht dem Format von Bindungsmitgliedern. | |
rules[] |
list |
Wenn mehrere Regeln festgelegt sind, werden die Regeln auf folgende Weise angewendet: – Alle passenden PROTOKOLL-Regeln werden immer angewendet. – Wenn eine oder mehrere DENY/DENY_WITH_LOG-Regeln zutreffen, wird die Berechtigung verweigert. Protokollierung wird angewendet, wenn für eine oder mehrere zutreffende Regeln Protokollierung erforderlich ist. – Wenn eine oder mehrere ALLOW/ALLOW_WITH_LOG-Regeln zutreffen, wird die Berechtigung erteilt. Protokollierung wird verwendet, wenn für eine oder mehrere zutreffende Regel Protokollierung erforderlich ist. – Wenn keine Regel zutrifft, wird die Berechtigung verweigert. | |
rules[].description |
string |
Menschenlesbare Beschreibung der Regel. | |
rules[].permissions[] |
list |
Eine Berechtigung ist eine Zeichenfolge der Form " |
|
rules[].action |
string |
Erforderlich | |
rules[].ins[] |
list |
Wenn eine oder mehrere "in"-Klauseln angegeben sind, trifft die Regel zu, wenn der PRINCIPAL/AUTHORITY_SELECTOR in mindestens einem dieser Einträge vorhanden ist. | |
rules[].notIns[] |
list |
Wenn eine oder mehrere "not_in"-Klauseln festgelegt sind, trifft die Regel zu, wenn der PRINCIPAL/AUTHORITY_SELECTOR in keinem der Einträge enthalten ist. | |
rules[].conditions[] |
list |
Weitere zu erfüllende Einschränkungen | |
rules[].conditions[].iam |
string |
Vom IAM-System angegebene vertrauenswürdige Attribute. | |
rules[].conditions[].sys |
string |
Vertrauenswürdige Attribute, die von einem Dienst angegeben werden, der Eigentümer von Ressourcen ist und das IAM-System für die Zugriffskontrolle verwendet. | |
rules[].conditions[].svc |
string |
Vertrauenswürdige Attribute, die vom Dienst freigegeben werden. | |
rules[].conditions[].op |
string |
Ein Operator, mit dem das Thema angewendet wird. | |
rules[].conditions[].value |
string |
VERALTET. Verwenden Sie stattdessen "values". | |
rules[].conditions[].values[] |
list |
Die Objekte der Bedingung. Dies schließt sich mit "value" gegenseitig aus. | |
rules[].logConfigs[] |
list |
Die an Anrufer von "tech.iam" zurückgegebene Konfiguration.IAM.CheckPolicy für Einträge, die der LOG-Aktion entsprechen. | |
rules[].logConfigs[].counter |
nested object |
Zähleroptionen. | |
rules[].logConfigs[].counter.metric |
string |
Der zu aktualisierende Messwert. | |
rules[].logConfigs[].counter.field |
string |
Der zuzuordnende Feldwert. | |
etag |
bytes |
"etag" wird für optimistische Gleichzeitigkeitserkennung verwendet, mit der verhindert werden kann, dass sich gleichzeitige Aktualisierungen einer Richtlinie gegenseitig überschreiben. Es ist sehr zu empfehlen, dass Systeme das "etag" im Lesen-Ändern-Schreiben-Zyklus verwenden, um Richtlinienaktualisierungen durchzuführen und kritische Wettläufe zu vermeiden: Ein "etag" wird in der Antwort auf "getIamPolicy" zurückgegeben und es wird erwartet, dass Systeme dieses "etag" in die Anforderung von "setIamPolicy" aufnehmen, um sicherzustellen, dass ihre Änderung auf die gleiche Version der Richtlinien angewendet wird. Wenn kein "etag" im Aufruf von "setIamPolicy" enthalten ist, werden die vorhandenen Richtlinien blind überschrieben. |
|
iamOwned |
boolean |
Antwort
Bei Erfolg gibt diese Methode einen Antworttext mit der folgenden Struktur zurück:
{ "version": integer, "bindings": [ { "role": string, "members": [ string ] } ], "auditConfigs": [ { "service": string, "exemptedMembers": [ string ], "auditLogConfigs": [ { "logType": string, "exemptedMembers": [ string ] } ] } ], "rules": [ { "description": string, "permissions": [ string ], "action": string, "ins": [ string ], "notIns": [ string ], "conditions": [ { "iam": string, "sys": string, "svc": string, "op": string, "value": string, "values": [ string ] } ], "logConfigs": [ { "counter": { "metric": string, "field": string } } ] } ], "etag": bytes, "iamOwned": boolean }
Name der Eigenschaft | Wert | Beschreibung | Hinweise |
---|---|---|---|
version |
integer |
Version der "Richtlinien". Die Standardversion ist 0. |
|
bindings[] |
list |
Verbindet eine Liste von "Mitgliedern" mit einer "Rolle". Für eine "Rolle" dürfen nicht mehrere "Bindungen" festgelegt werden. "Bindungen" ohne Mitglieder ergeben einen Fehler. | |
bindings[].role |
string |
"Mitgliedern" zugewiesene Rolle. Zum Beispiel, "Rollen/Betrachter", "Rollen/Editor" oder "Rollen/Eigentümer". | |
bindings[].members[] |
list |
Gibt die Identitäten an, die Zugriff auf eine Ressource der Cloud Platform anfordern. "Mitglieder" können die folgenden Werte haben: * "allUsers": Eine spezielle Kennung für alle Identitäten im Internet, ob mit oder ohne Google-Konto. * "allAuthenticatedUsers": Eine spezielle Kennung für alle Identitäten, die mit einem Google-Konto oder einem Dienstkonto authentifiziert sind. * "user:{emailid}": Eine E-Mail-Adresse, die für ein bestimmtes Google-Konto steht. Zum Beispiel "alice@gmail.com" oder "joe@example.com". * "serviceAccount:{emailid}": Eine E-Mail-Adresse, die für ein Dienstkonto steht. Zum Beispiel, "my-other-app@appspot.gserviceaccount.com". * "group:{emailid}": Eine E-Mail-Adresse, die für eine Google-Gruppe steht. Zum Beispiel, "admins@example.com". * "domain:{domain}": Ein Google Apps-Domain-Name, der für alle Nutzer dieser Domain steht. Zum Beispiel, "google.com" oder "example.com". |
|
auditConfigs[] |
list |
Gibt Audit-Log-Konfigurationen für "data access" an. "data access": bezieht sich allgemein auf Datenlese-/Datenschreibvorgänge und Admin-Lesevorgänge. "admin activity": bezieht sich allgemein auf Admin-Schreibvorgänge. Hinweis: "AuditConfig" gilt nicht für "admin activity", das immer Audit-Logs aktiviert. |
|
auditConfigs[].service |
string |
Gibt einen Dienst an, der für Audit-Logs aktiviert wird. Zum Beispiel, "resourcemanager", "storage", "compute". "allService" ist ein spezieller Wert für alle Dienste. | |
auditConfigs[].exemptedMembers[] |
list |
Gibt die Identitäten an, die vom Audit-Logging mit "data access" für den oben angegebenen "service" ausgeschlossen sind. Entspricht dem Format von Bindungsmitgliedern. | |
auditConfigs[].auditLogConfigs[] |
list |
Die Konfiguration für jeden Typ von Protokollierung. | |
auditConfigs[].auditLogConfigs[].logType |
string |
Der Protokolltyp, der von dieser Konfiguration aktiviert wird. | |
auditConfigs[].auditLogConfigs[].exemptedMembers[] |
list |
Gibt die Identitäten an, die von dieser Art Protokollierung ausgeschlossen sind. Entspricht dem Format von Bindungsmitgliedern. | |
rules[] |
list |
Wenn mehrere Regeln festgelegt sind, werden die Regeln auf folgende Weise angewendet: – Alle passenden PROTOKOLL-Regeln werden immer angewendet. – Wenn eine oder mehrere DENY/DENY_WITH_LOG-Regeln zutreffen, wird die Berechtigung verweigert. Protokollierung wird angewendet, wenn für eine oder mehrere zutreffende Regeln Protokollierung erforderlich ist. – Wenn eine oder mehrere ALLOW/ALLOW_WITH_LOG-Regeln zutreffen, wird die Berechtigung erteilt. Protokollierung wird verwendet, wenn für eine oder mehrere zutreffende Regel Protokollierung erforderlich ist. – Wenn keine Regel zutrifft, wird die Berechtigung verweigert. | |
rules[].description |
string |
Menschenlesbare Beschreibung der Regel. | |
rules[].permissions[] |
list |
Eine Berechtigung ist eine Zeichenfolge der Form " |
|
rules[].action |
string |
Erforderlich | |
rules[].ins[] |
list |
Wenn eine oder mehrere "in"-Klauseln angegeben sind, trifft die Regel zu, wenn der PRINCIPAL/AUTHORITY_SELECTOR in mindestens einem dieser Einträge vorhanden ist. | |
rules[].notIns[] |
list |
Wenn eine oder mehrere "not_in"-Klauseln festgelegt sind, trifft die Regel zu, wenn der PRINCIPAL/AUTHORITY_SELECTOR in keinem der Einträge enthalten ist. | |
rules[].conditions[] |
list |
Weitere zu erfüllende Einschränkungen | |
rules[].conditions[].iam |
string |
Vom IAM-System angegebene vertrauenswürdige Attribute. | |
rules[].conditions[].sys |
string |
Vertrauenswürdige Attribute, die von einem Dienst angegeben werden, der Eigentümer von Ressourcen ist und das IAM-System für die Zugriffskontrolle verwendet. | |
rules[].conditions[].svc |
string |
Vertrauenswürdige Attribute, die vom Dienst freigegeben werden. | |
rules[].conditions[].op |
string |
Ein Operator, mit dem das Thema angewendet wird. | |
rules[].conditions[].value |
string |
VERALTET. Verwenden Sie stattdessen "values". | |
rules[].conditions[].values[] |
list |
Die Objekte der Bedingung. Dies schließt sich mit "value" gegenseitig aus. | |
rules[].logConfigs[] |
list |
Die an Anrufer von "tech.iam" zurückgegebene Konfiguration.IAM.CheckPolicy für Einträge, die der LOG-Aktion entsprechen. | |
rules[].logConfigs[].counter |
nested object |
Zähleroptionen. | |
rules[].logConfigs[].counter.metric |
string |
Der zu aktualisierende Messwert. | |
rules[].logConfigs[].counter.field |
string |
Der zuzuordnende Feldwert. | |
etag |
bytes |
"etag" wird für optimistische Gleichzeitigkeitserkennung verwendet, mit der verhindert werden kann, dass sich gleichzeitige Aktualisierungen einer Richtlinie gegenseitig überschreiben. Es ist sehr zu empfehlen, dass Systeme das "etag" im Lesen-Ändern-Schreiben-Zyklus verwenden, um Richtlinienaktualisierungen durchzuführen und kritische Wettläufe zu vermeiden: Ein "etag" wird in der Antwort auf "getIamPolicy" zurückgegeben und es wird erwartet, dass Systeme dieses "etag" in die Anforderung von "setIamPolicy" aufnehmen, um sicherzustellen, dass ihre Änderung auf die gleiche Version der Richtlinien angewendet wird. Wenn kein "etag" im Aufruf von "setIamPolicy" enthalten ist, werden die vorhandenen Richtlinien blind überschrieben. |
|
iamOwned |
boolean |