指定したリソースにアクセス制御ポリシーを設定します。既存のポリシーをすべて置き換えます。こちらから今すぐお試しいただけます。
リクエスト
HTTP リクエスト
POST https://www.googleapis.com/deploymentmanager/v2beta/projects/project /global/deployments/resource /setIamPolicy
パラメータ
パラメータ名 | 値 | 説明 |
---|---|---|
パスパラメータ | ||
project |
string |
このリクエストのプロジェクト ID。 |
resource |
string |
このリクエストのリソースの名前または ID。 |
承認
このリクエストは、少なくとも次のうち 1 つのスコープによる承認が必要です。
範囲 |
---|
https://www.googleapis.com/auth/cloud-platform |
https://www.googleapis.com/auth/ndev.cloudman |
リクエストの本文
リクエストの本文には、以下の構造を使用してデータを指定してください:
{ "policy": { "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 }, "bindings": [ { "role":string , "members": [string ], "condition": { "expression":string , "title":string , "description":string , "location":string } } ], "etag":bytes }
プロパティ名 | 値 | 説明 | メモ |
---|---|---|---|
policy |
nested object |
必須: 「resource」に適用する完全なポリシー。ポリシーのサイズは数 10 KB に制限されています。空のポリシーは通常有効なポリシーですが、プロジェクトなど特定のサービスでは拒否されることがあります。 | |
policy.version |
integer |
ポリシーの形式を指定します。 有効な値は「0」、「1」、「3」です。無効な値を指定したリクエストは拒否されます。 条件付きロール バインディングに影響するオペレーションでは、バージョン 3 を指定する必要があります。この要件は、次のオペレーションに適用されます。 * 条件付きロール バインディングを含むポリシーの取得 * ポリシーへの条件付きロール バインディングの追加 * ポリシー内の条件付きロール バインディングの変更 * 条件を含むポリシーから、条件の有無にかかわらずすべてのロール バインディングを削除する **重要:** IAM Conditions を使用する場合は、setIamPolicy を呼び出すたびに etag フィールドを含める必要があります。このフィールドを省略すると、IAM でバージョン 3 ポリシーをバージョン 1 ポリシーで上書きできるため、バージョン 3 ポリシーのすべての条件が失われます。 ポリシーに条件が指定されていない場合、ポリシーに対する操作で有効なバージョンの指定、またはフィールド設定の解除ができます。 IAM ポリシーで条件をサポートするリソースについては、[IAM のドキュメント](https://cloud.google.com/iam/help/conditions/resource-policies) をご覧ください。 |
|
policy.bindings[] |
list |
「members」のリストを「role」に関連付けます。必要に応じて、「bindings」を適用する方法とタイミングを決定する「condition」を指定できます。各「バインディング」には少なくとも 1 つのメンバーを含める必要があります。 | |
policy.bindings[].role |
string |
「members」に割り当てられるロール。たとえば、「roles/viewer」、「roles/editor」、「roles/owner」など。 | |
policy.bindings[].members[] |
list |
Cloud Platform リソースのアクセスのリクエスト元を識別する情報を指定します。「members」には次の値を指定できます。 * 「allUsers」: Google アカウントの有無にかかわらず、インターネット上のすべてのユーザーを表す特別な識別子。 * `allAuthenticatedUsers`: Google アカウントまたはサービス アカウントで認証される任意のユーザーを表す特別な識別子。 * `user:{emailid}`: 特定の Google アカウントを表すメールアドレス。例: alice@example.com。 * `serviceAccount:{emailid}`: サービス アカウントを表すメールアドレス。例: my-other-app@appspot.gserviceaccount.com。 * `group:{emailid}`: Google グループを表すメールアドレス。たとえば、admins@example.com など。 * `deleted:user:{emailid}?uid={uniqueid}`: 最近削除されたユーザーを表すメールアドレスと一意の ID。たとえば、「alice@example.com?uid=123456789012345678901」などです。ユーザーが復元された場合、この値は「user:{emailid}」に戻り、復元されたユーザーはバインディングのロールを保持します。 * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: 最近削除されたサービス アカウントを表すメールアドレスと一意の ID。たとえば、my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901 などです。サービス アカウントが削除されていない場合、この値は serviceAccount:{emailid} に戻り、削除されていないサービス アカウントはバインディングのロールを保持します。 * `deleted:group:{emailid}?uid={uniqueid}`: 最近削除された Google グループを表すメールアドレスと一意の ID。たとえば、`admins@example.com?uid=123456789012345678901` です。グループが復元された場合、この値は `group:{emailid}` に戻り、復元されたグループはバインディングのロールを保持します。 * `domain:{domain}`: G Suite ドメイン(プライマリ)。そのドメインのすべてのユーザーを表します。例: google.com、example.com。 |
|
policy.bindings[].condition |
nested object |
このバインディングに関連付けられている条件。 条件が true と評価された場合、このバインディングは現在のリクエストに適用されます。 条件が false と評価された場合、このバインディングは現在のリクエストに適用されません。ただし、別のロール バインディングによって、このバインディングの 1 つ以上のメンバーに同じロールが付与される場合があります。 IAM ポリシーで条件をサポートするリソースについては、[IAM のドキュメント](https://cloud.google.com/iam/help/conditions/resource-policies) をご覧ください。 |
|
policy.bindings[].condition.expression |
string |
Common Expression Language 構文による式のテキスト表現。 | |
policy.bindings[].condition.title |
string |
省略可。式のタイトル。式の目的を説明する短い文字列です。たとえば、式を入力できる UI でこれを使用します。 | |
policy.bindings[].condition.description |
string |
省略可。式の説明。式を説明する長いテキストです。たとえば、UI で式にカーソルを合わせたときに表示されます。 | |
policy.bindings[].condition.location |
string |
省略可。エラー報告用に式の場所を示す文字列。たとえば、ファイル名とファイル内の位置です。 | |
policy.auditConfigs[] |
list |
このポリシーに対する Cloud Audit Logging の監査ログを指定します。 |
|
policy.auditConfigs[].service |
string |
監査ログに関して有効になるサービスを指定します。たとえば、`storage.googleapis.com`、`cloudsql.googleapis.com`、`allServices` は、すべてのサービスを網羅する特殊値です。 | |
policy.auditConfigs[].exemptedMembers[] |
list |
||
policy.auditConfigs[].auditLogConfigs[] |
list |
権限のタイプごとのログの構成。 | |
policy.auditConfigs[].auditLogConfigs[].logType |
string |
この設定で有効になるログタイプ。 | |
policy.auditConfigs[].auditLogConfigs[].exemptedMembers[] |
list |
このタイプの権限に対してログが発生しない ID を指定します。[Binding.members][] と同じ形式を使用します。 | |
policy.auditConfigs[].auditLogConfigs[].ignoreChildExemptions |
boolean |
||
policy.rules[] |
list |
複数のルールを指定した場合、それらのルールは次のように適用されます。すべての一致 LOG ルールが常に適用されます。- いずれかの DENY/DENY_WITH_LOG ルールが一致する場合は、権限が拒否されます。1 つ以上の一致ルールでログが必要な場合は、ログが適用されます。- それ以外の場合、ALLOW/ALLOW_WITH_LOG ルールのいずれかが一致すれば、権限が付与されます。1 つ以上の一致ルールでログが必要な場合は、ログが適用されます。- それ以外の場合、適用されるルールがなければ、権限は拒否されます。 | |
policy.rules[].description |
string |
人が読める形式のルールの説明。 | |
policy.rules[].permissions[] |
list |
権限は、' |
|
policy.rules[].action |
string |
必須 | |
policy.rules[].ins[] |
list |
1 つ以上の 'in' 句が指定され、そのエントリの 1 つ以上に PRINCIPAL/AUTHORITY_SELECTOR がある場合、ルールが一致します。 | |
policy.rules[].notIns[] |
list |
1 つ以上の 'not_in' 句が指定され、そのエントリのいずれにも PRINCIPAL/AUTHORITY_SELECTOR がない場合、ルールが一致します。 | |
policy.rules[].conditions[] |
list |
満たされる必要がある追加の制限。ルールが一致するには、すべての条件を満たす必要があります。 | |
policy.rules[].conditions[].iam |
string |
IAM システムから提供される、信頼できる属性。 | |
policy.rules[].conditions[].sys |
string |
リソースを所有し、アクセス制御に IAM システムを使用しているサービスにより提供される信頼できる属性。 | |
policy.rules[].conditions[].svc |
string |
サービスにより提供される信頼できる属性。 | |
policy.rules[].conditions[].op |
string |
対象に適用する演算子。 | |
policy.rules[].conditions[].values[] |
list |
条件のオブジェクト。 | |
policy.rules[].logConfigs[] |
list |
LOG アクションに一致するすべてのエントリで tech.iam.IAM.CheckPolicy の発信者に返される構成。 | |
policy.rules[].logConfigs[].counter |
nested object |
カウンタ オプション。 | |
policy.rules[].logConfigs[].counter.metric |
string |
更新する指標。 | |
policy.rules[].logConfigs[].counter.field |
string |
該当するフィールド値。 | |
policy.rules[].logConfigs[].counter.customFields[] |
list |
カスタム フィールド。 | |
policy.rules[].logConfigs[].counter.customFields[].name |
string |
Name はフィールド名です。 | |
policy.rules[].logConfigs[].counter.customFields[].value |
string |
Value はフィールド値です。CounterOptions.field とは対照的に、ここでの値は IAMContext から派生しない定数であることが重要です。 | |
policy.rules[].logConfigs[].dataAccess |
nested object |
データアクセスのオプション。 | |
policy.rules[].logConfigs[].dataAccess.logMode |
string |
||
policy.rules[].logConfigs[].cloudAudit |
nested object |
クラウド監査オプション | |
policy.rules[].logConfigs[].cloudAudit.logName |
string |
Cloud Audit レコードに入力する log_name。 |
|
policy.rules[].logConfigs[].cloudAudit.authorizationLoggingOptions |
nested object |
Cloud Audit Logging パイプラインで使用される情報。 | |
policy.rules[].logConfigs[].cloudAudit.authorizationLoggingOptions.permissionType |
string |
確認された権限のタイプ。 | |
policy.etag |
bytes |
`etag` は、オプティミスティック同時実行制御でポリシーの同時更新による相互上書きを防ぐために使用されます。競合状態の発生を回避するため、システムのポリシー更新の読み込み・変更・書き込みサイクルで `etag` を活用することを強くお勧めします。`etag` は `getIamPolicy` へのレスポンスで返されます。その etag を `setIamPolicy` に対するリクエストに設定すれば、対応する変更が同じバージョンのポリシーに確実に適用されるようになります。 **重要:** IAM Conditions を使用する場合、setIamPolicy を呼び出すときは必ず etag フィールドを含める必要があります。このフィールドを省略すると、IAM によってバージョン 3 ポリシーをバージョン 1 ポリシーで上書きできるようになり、バージョン 3 ポリシーの条件はすべて失われます。 |
|
policy.iamOwned |
boolean |
||
bindings[] |
list |
ポリシーをフラット化して、下位互換性のあるワイヤー形式を作成します。非推奨です。「policy」を使用してバインディングを指定します。 | |
bindings[].role |
string |
「members」に割り当てられるロール。たとえば、「roles/viewer」、「roles/editor」、「roles/owner」など。 | |
bindings[].members[] |
list |
Cloud Platform リソースのアクセスのリクエスト元を識別する情報を指定します。「members」には次の値を指定できます。 * 「allUsers」: Google アカウントの有無にかかわらず、インターネット上のすべてのユーザーを表す特別な識別子。 * `allAuthenticatedUsers`: Google アカウントまたはサービス アカウントで認証される任意のユーザーを表す特別な識別子。 * `user:{emailid}`: 特定の Google アカウントを表すメールアドレス。例: alice@example.com。 * `serviceAccount:{emailid}`: サービス アカウントを表すメールアドレス。例: my-other-app@appspot.gserviceaccount.com。 * `group:{emailid}`: Google グループを表すメールアドレス。たとえば、admins@example.com など。 * `deleted:user:{emailid}?uid={uniqueid}`: 最近削除されたユーザーを表すメールアドレスと一意の ID。たとえば、「alice@example.com?uid=123456789012345678901」などです。ユーザーが復元された場合、この値は「user:{emailid}」に戻り、復元されたユーザーはバインディングのロールを保持します。 * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: 最近削除されたサービス アカウントを表すメールアドレスと一意の ID。たとえば、my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901 などです。サービス アカウントが削除されていない場合、この値は serviceAccount:{emailid} に戻り、削除されていないサービス アカウントはバインディングのロールを保持します。 * `deleted:group:{emailid}?uid={uniqueid}`: 最近削除された Google グループを表すメールアドレスと一意の ID。たとえば、`admins@example.com?uid=123456789012345678901` です。グループが復元された場合、この値は `group:{emailid}` に戻り、復元されたグループはバインディングのロールを保持します。 * `domain:{domain}`: G Suite ドメイン(プライマリ)。そのドメインのすべてのユーザーを表します。例: google.com、example.com。 |
|
bindings[].condition |
nested object |
このバインディングに関連付けられている条件。 条件が true と評価された場合、このバインディングは現在のリクエストに適用されます。 条件が false と評価された場合、このバインディングは現在のリクエストに適用されません。ただし、別のロール バインディングによって、このバインディングの 1 つ以上のメンバーに同じロールが付与される場合があります。 IAM ポリシーで条件をサポートするリソースについては、[IAM のドキュメント](https://cloud.google.com/iam/help/conditions/resource-policies) をご覧ください。 |
|
bindings[].condition.expression |
string |
Common Expression Language 構文による式のテキスト表現。 | |
bindings[].condition.title |
string |
省略可。式のタイトル。式の目的を説明する短い文字列です。たとえば、式を入力できる UI でこれを使用します。 | |
bindings[].condition.description |
string |
省略可。式の説明。式を説明する長いテキストです。たとえば、UI で式にカーソルを合わせたときに表示されます。 | |
bindings[].condition.location |
string |
省略可。エラー報告用に式の場所を示す文字列。たとえば、ファイル名とファイル内の位置です。 | |
etag |
bytes |
ポリシーをフラット化して、下位互換性のあるワイヤー形式を作成します。非推奨です。etag を指定するには、policy を使用します。 |
レスポンス
成功すると、このメソッドは次の構造を含むレスポンスの本文を返します。
{ "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 }
プロパティ名 | 値 | 説明 | メモ |
---|---|---|---|
version |
integer |
ポリシーの形式を指定します。 有効な値は「0」、「1」、「3」です。無効な値を指定したリクエストは拒否されます。 条件付きロール バインディングに影響するオペレーションでは、バージョン 3 を指定する必要があります。この要件は、次のオペレーションに適用されます。 * 条件付きロール バインディングを含むポリシーの取得 * ポリシーへの条件付きロール バインディングの追加 * ポリシー内の条件付きロール バインディングの変更 * 条件を含むポリシーから、条件の有無にかかわらずすべてのロール バインディングを削除する **重要:** IAM Conditions を使用する場合は、setIamPolicy を呼び出すたびに etag フィールドを含める必要があります。このフィールドを省略すると、IAM でバージョン 3 ポリシーをバージョン 1 ポリシーで上書きできるため、バージョン 3 ポリシーのすべての条件が失われます。 ポリシーに条件が指定されていない場合、ポリシーに対する操作で有効なバージョンの指定、またはフィールド設定の解除ができます。 IAM ポリシーで条件をサポートするリソースについては、[IAM のドキュメント](https://cloud.google.com/iam/help/conditions/resource-policies) をご覧ください。 |
|
bindings[] |
list |
「members」のリストを「role」に関連付けます。必要に応じて、「bindings」を適用する方法とタイミングを決定する「condition」を指定できます。各「バインディング」には少なくとも 1 つのメンバーを含める必要があります。 | |
bindings[].role |
string |
「members」に割り当てられるロール。たとえば、「roles/viewer」、「roles/editor」、「roles/owner」など。 | |
bindings[].members[] |
list |
Cloud Platform リソースのアクセスのリクエスト元を識別する情報を指定します。「members」には次の値を指定できます。 * 「allUsers」: Google アカウントの有無にかかわらず、インターネット上のすべてのユーザーを表す特別な識別子。 * `allAuthenticatedUsers`: Google アカウントまたはサービス アカウントで認証される任意のユーザーを表す特別な識別子。 * `user:{emailid}`: 特定の Google アカウントを表すメールアドレス。例: alice@example.com。 * `serviceAccount:{emailid}`: サービス アカウントを表すメールアドレス。例: my-other-app@appspot.gserviceaccount.com。 * `group:{emailid}`: Google グループを表すメールアドレス。たとえば、admins@example.com など。 * `deleted:user:{emailid}?uid={uniqueid}`: 最近削除されたユーザーを表すメールアドレスと一意の ID。たとえば、「alice@example.com?uid=123456789012345678901」などです。ユーザーが復元された場合、この値は「user:{emailid}」に戻り、復元されたユーザーはバインディングのロールを保持します。 * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: 最近削除されたサービス アカウントを表すメールアドレスと一意の ID。たとえば、my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901 などです。サービス アカウントが削除されていない場合、この値は serviceAccount:{emailid} に戻り、削除されていないサービス アカウントはバインディングのロールを保持します。 * `deleted:group:{emailid}?uid={uniqueid}`: 最近削除された Google グループを表すメールアドレスと一意の ID。たとえば、`admins@example.com?uid=123456789012345678901` です。グループが復元された場合、この値は `group:{emailid}` に戻り、復元されたグループはバインディングのロールを保持します。 * `domain:{domain}`: G Suite ドメイン(プライマリ)。そのドメインのすべてのユーザーを表します。例: google.com、example.com。 |
|
bindings[].condition |
nested object |
このバインディングに関連付けられている条件。 条件が true と評価された場合、このバインディングは現在のリクエストに適用されます。 条件が false と評価された場合、このバインディングは現在のリクエストに適用されません。ただし、別のロール バインディングによって、このバインディングの 1 つ以上のメンバーに同じロールが付与される場合があります。 IAM ポリシーで条件をサポートするリソースについては、[IAM のドキュメント](https://cloud.google.com/iam/help/conditions/resource-policies) をご覧ください。 |
|
bindings[].condition.expression |
string |
Common Expression Language 構文による式のテキスト表現。 | |
bindings[].condition.title |
string |
省略可。式のタイトル。式の目的を説明する短い文字列です。たとえば、式を入力できる UI でこれを使用します。 | |
bindings[].condition.description |
string |
省略可。式の説明。式を説明する長いテキストです。たとえば、UI で式にカーソルを合わせたときに表示されます。 | |
bindings[].condition.location |
string |
省略可。エラー報告用に式の場所を示す文字列。たとえば、ファイル名とファイル内の位置です。 | |
auditConfigs[] |
list |
このポリシーに対する Cloud Audit Logging の監査ログを指定します。 |
|
auditConfigs[].service |
string |
監査ログに関して有効になるサービスを指定します。たとえば、`storage.googleapis.com`、`cloudsql.googleapis.com`、`allServices` は、すべてのサービスを網羅する特殊値です。 | |
auditConfigs[].exemptedMembers[] |
list |
||
auditConfigs[].auditLogConfigs[] |
list |
権限のタイプごとのログの構成。 | |
auditConfigs[].auditLogConfigs[].logType |
string |
この設定で有効になるログタイプ。 | |
auditConfigs[].auditLogConfigs[].exemptedMembers[] |
list |
このタイプの権限に対してログが発生しない ID を指定します。[Binding.members][] と同じ形式を使用します。 | |
auditConfigs[].auditLogConfigs[].ignoreChildExemptions |
boolean |
||
rules[] |
list |
複数のルールを指定した場合、それらのルールは次のように適用されます。すべての一致 LOG ルールが常に適用されます。- いずれかの DENY/DENY_WITH_LOG ルールが一致する場合は、権限が拒否されます。1 つ以上の一致ルールでログが必要な場合は、ログが適用されます。- それ以外の場合、ALLOW/ALLOW_WITH_LOG ルールのいずれかが一致すれば、権限が付与されます。1 つ以上の一致ルールでログが必要な場合は、ログが適用されます。- それ以外の場合、適用されるルールがなければ、権限は拒否されます。 | |
rules[].description |
string |
人が読める形式のルールの説明。 | |
rules[].permissions[] |
list |
権限は、' |
|
rules[].action |
string |
必須 | |
rules[].ins[] |
list |
1 つ以上の 'in' 句が指定され、そのエントリの 1 つ以上に PRINCIPAL/AUTHORITY_SELECTOR がある場合、ルールが一致します。 | |
rules[].notIns[] |
list |
1 つ以上の 'not_in' 句が指定され、そのエントリのいずれにも PRINCIPAL/AUTHORITY_SELECTOR がない場合、ルールが一致します。 | |
rules[].conditions[] |
list |
満たされる必要がある追加の制限。ルールが一致するには、すべての条件を満たす必要があります。 | |
rules[].conditions[].iam |
string |
IAM システムから提供される、信頼できる属性。 | |
rules[].conditions[].sys |
string |
リソースを所有し、アクセス制御に IAM システムを使用しているサービスにより提供される信頼できる属性。 | |
rules[].conditions[].svc |
string |
サービスにより提供される信頼できる属性。 | |
rules[].conditions[].op |
string |
対象に適用する演算子。 | |
rules[].conditions[].values[] |
list |
条件のオブジェクト。 | |
rules[].logConfigs[] |
list |
LOG アクションに一致するすべてのエントリで tech.iam.IAM.CheckPolicy の発信者に返される構成。 | |
rules[].logConfigs[].counter |
nested object |
カウンタ オプション。 | |
rules[].logConfigs[].counter.metric |
string |
更新する指標。 | |
rules[].logConfigs[].counter.field |
string |
該当するフィールド値。 | |
rules[].logConfigs[].counter.customFields[] |
list |
カスタム フィールド。 | |
rules[].logConfigs[].counter.customFields[].name |
string |
Name はフィールド名です。 | |
rules[].logConfigs[].counter.customFields[].value |
string |
Value はフィールド値です。CounterOptions.field とは対照的に、ここでの値は IAMContext から派生しない定数であることが重要です。 | |
rules[].logConfigs[].dataAccess |
nested object |
データアクセスのオプション。 | |
rules[].logConfigs[].dataAccess.logMode |
string |
||
rules[].logConfigs[].cloudAudit |
nested object |
クラウド監査オプション | |
rules[].logConfigs[].cloudAudit.logName |
string |
Cloud Audit レコードに入力する log_name。 |
|
rules[].logConfigs[].cloudAudit.authorizationLoggingOptions |
nested object |
Cloud Audit Logging パイプラインで使用される情報。 | |
rules[].logConfigs[].cloudAudit.authorizationLoggingOptions.permissionType |
string |
確認された権限のタイプ。 | |
etag |
bytes |
`etag` は、オプティミスティック同時実行制御でポリシーの同時更新による相互上書きを防ぐために使用されます。競合状態の発生を回避するため、システムのポリシー更新の読み込み・変更・書き込みサイクルで `etag` を活用することを強くお勧めします。`etag` は `getIamPolicy` へのレスポンスで返されます。その etag を `setIamPolicy` に対するリクエストに設定すれば、対応する変更が同じバージョンのポリシーに確実に適用されるようになります。 **重要:** IAM Conditions を使用する場合、setIamPolicy を呼び出すときは必ず etag フィールドを含める必要があります。このフィールドを省略すると、IAM によってバージョン 3 ポリシーをバージョン 1 ポリシーで上書きできるようになり、バージョン 3 ポリシーの条件はすべて失われます。 |
|
iamOwned |
boolean |