Resource: Policy
Data for an IAM policy.
JSON representation |
---|
{
"name"
:
string
,
"uid"
:
string
,
"kind"
:
string
,
"displayName"
:
string
,
"annotations"
:
{
string
:
string
,
...
}
,
"etag"
:
string
,
"createTime"
:
string
,
"updateTime"
:
string
,
"deleteTime"
:
string
,
"rules"
:
[
{
object (
|
Fields | |
---|---|
name
|
Immutable. The resource name of the The attachment point is identified by its URL-encoded full resource name, which means that the forward-slash character, For organizations and folders, use the numeric ID in the full resource name. For projects, requests can use the alphanumeric or the numeric ID. Responses always contain the numeric ID. |
uid
|
Immutable. The globally unique ID of the |
kind
|
Output only. The kind of the |
displayName
|
A user-specified description of the |
annotations
|
A key-value map to store arbitrary metadata for the An object containing a list of |
etag
|
An opaque tag that identifies the current version of the If this field is present in a |
createTime
|
Output only. The time when the Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: |
updateTime
|
Output only. The time when the Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: |
deleteTime
|
Output only. The time when the Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: |
rules[]
|
A list of rules that specify the behavior of the |
PolicyRule
A single rule in a Policy
.
JSON representation |
---|
{ "description" : string , // Union field |
description
string
A user-specified description of the rule. This value can be up to 256 characters.
Union field kind
.
kind
can be only one of the following:
denyRule
object (
DenyRule
)
A rule for a deny policy.
DenyRule
A deny rule in an IAM deny policy.
JSON representation |
---|
{
"deniedPrincipals"
:
[
string
]
,
"exceptionPrincipals"
:
[
string
]
,
"deniedPermissions"
:
[
string
]
,
"exceptionPermissions"
:
[
string
]
,
"denialCondition"
:
{
object (
|
deniedPrincipals[]
string
The identities that are prevented from using one or more permissions on Google Cloud resources. This field can contain the following values:
-
principal://goog/subject/{email_id}
: A specific Google Account. Includes Gmail, Cloud Identity, and Google Workspace user accounts. For example,principal://goog/subject/alice@example.com
. -
principal://iam.googleapis.com/projects/-/serviceAccounts/{service_account_id}
: A Google Cloud service account. For example,principal://iam.googleapis.com/projects/-/serviceAccounts/my-service-account@iam.gserviceaccount.com
. -
principalSet://goog/group/{groupId}
: A Google group. For example,principalSet://goog/group/admins@example.com
. -
principalSet://goog/public:all
: A special identifier that represents any principal that is on the internet, even if they do not have a Google Account or are not logged in. -
principalSet://goog/cloudIdentityCustomerId/{customerId}
: All of the principals associated with the specified Google Workspace or Cloud Identity customer ID. For example,principalSet://goog/cloudIdentityCustomerId/C01Abc35
. -
principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}
: A single identity in a workforce identity pool. -
principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/group/{groupId}
: All workforce identities in a group. -
principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/attribute.{attribute_name}/{attribute_value}
: All workforce identities with a specific attribute value. -
principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/*
: All identities in a workforce identity pool. -
principal://iam.googleapis.com/projects/{projectNumber}/locations/global/workloadIdentityPools/{pool_id}/subject/{subject_attribute_value}
: A single identity in a workload identity pool. -
principalSet://iam.googleapis.com/projects/{projectNumber}/locations/global/workloadIdentityPools/{pool_id}/group/{groupId}
: A workload identity pool group. -
principalSet://iam.googleapis.com/projects/{projectNumber}/locations/global/workloadIdentityPools/{pool_id}/attribute.{attribute_name}/{attribute_value}
: All identities in a workload identity pool with a certain attribute. -
principalSet://iam.googleapis.com/projects/{projectNumber}/locations/global/workloadIdentityPools/{pool_id}/*
: All identities in a workload identity pool. -
principalSet://cloudresourcemanager.googleapis.com/[projects|folders|organizations]/{projectNumber|folder_number|org_number}/type/ServiceAccount
: All service accounts grouped under a resource (project, folder, or organization). -
principalSet://cloudresourcemanager.googleapis.com/[projects|folders|organizations]/{projectNumber|folder_number|org_number}/type/ServiceAgent
: All service agents grouped under a resource (project, folder, or organization). -
deleted:principal://goog/subject/{email_id}?uid={uid}
: A specific Google Account that was deleted recently. For example,deleted:principal://goog/subject/alice@example.com?uid=1234567890
. If the Google Account is recovered, this identifier reverts to the standard identifier for a Google Account. -
deleted:principalSet://goog/group/{groupId}?uid={uid}
: A Google group that was deleted recently. For example,deleted:principalSet://goog/group/admins@example.com?uid=1234567890
. If the Google group is restored, this identifier reverts to the standard identifier for a Google group. -
deleted:principal://iam.googleapis.com/projects/-/serviceAccounts/{service_account_id}?uid={uid}
: A Google Cloud service account that was deleted recently. For example,deleted:principal://iam.googleapis.com/projects/-/serviceAccounts/my-service-account@iam.gserviceaccount.com?uid=1234567890
. If the service account is undeleted, this identifier reverts to the standard identifier for a service account. -
deleted:principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}
: Deleted single identity in a workforce identity pool. For example,deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-pool-id/subject/my-subject-attribute-value
.
exceptionPrincipals[]
string
The identities that are excluded from the deny rule, even if they are listed in the deniedPrincipals
. For example, you could add a Google group to the deniedPrincipals
, then exclude specific users who belong to that group.
This field can contain the same values as the deniedPrincipals
field, excluding principalSet://goog/public:all
, which represents all users on the internet.
denialCondition
object (
Expr
)
The condition that determines whether this deny rule applies to a request. If the condition expression evaluates to true
, then the deny rule is applied; otherwise, the deny rule is not applied.
Each deny rule is evaluated independently. If this deny rule does not apply to a request, other deny rules might still apply.
The condition can use CEL functions that evaluate resource tags . Other functions and operators are not supported.
Methods |
|
---|---|
|
Creates a policy. |
|
Deletes a policy. |
|
Gets a policy. |
|
Retrieves the policies of the specified kind that are attached to a resource. |
|
Updates the specified policy. |