Reference documentation and code samples for the Google Cloud Iam V3 Client class AccessPolicyRule.
Access Policy Rule that determines the behavior of the policy.
Generated from protobuf message google.iam.v3.AccessPolicyRule
Namespace
Google \ Cloud \ Iam \ V3Methods
__construct
Constructor.
| Parameters | |
|---|---|
| Name | Description |
data |
array
Optional. Data for populating the Message object. |
↳ description |
string
Optional. Customer specified description of the rule. Must be less than or equal to 256 characters. |
↳ effect |
int
Required. The effect of the rule. |
↳ principals |
string[]
Required. The identities for which this rule's effect governs using one or more permissions on Google Cloud resources. This field can contain the following values: * * |
↳ excluded_principals |
string[]
Optional. The identities that are excluded from the access policy rule, even if they are listed in the |
↳ operation |
AccessPolicyRule\Operation
Required. Attributes that are used to determine whether this rule applies to a request. |
↳ conditions |
array|Google\Protobuf\Internal\MapField
Optional. The conditions that determine whether this rule applies to a request. Conditions are identified by their key, which is the FQDN of the service that they are relevant to. For example: |
getDescription
Optional. Customer specified description of the rule. Must be less than or equal to 256 characters.
| Returns | |
|---|---|
| Type | Description |
string |
|
hasDescription
clearDescription
setDescription
Optional. Customer specified description of the rule. Must be less than or equal to 256 characters.
| Parameter | |
|---|---|
| Name | Description |
var |
string
|
| Returns | |
|---|---|
| Type | Description |
$this |
|
getEffect
Required. The effect of the rule.
| Returns | |
|---|---|
| Type | Description |
int |
|
hasEffect
clearEffect
setEffect
Required. The effect of the rule.
| Parameter | |
|---|---|
| Name | Description |
var |
int
|
| Returns | |
|---|---|
| Type | Description |
$this |
|
getPrincipals
Required. The identities for which this rule's effect governs 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/{group_id}: A Google group. For example,principalSet://goog/group/admins\@example.com.principalSet://goog/cloudIdentityCustomerId/{customer_id}: All of the principals associated with the specified Google Workspace or Cloud Identity customer ID. For example,principalSet://goog/cloudIdentityCustomerId/C01Abc35. If an identifier that was previously set on a policy is soft deleted, then calls to read that policy will return the identifier with a deleted prefix. Users cannot set identifiers with this syntax.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/{group_id}?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.
| Returns | |
|---|---|
| Type | Description |
Google\Protobuf\RepeatedField<string> |
|
setPrincipals
Required. The identities for which this rule's effect governs 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/{group_id}: A Google group. For example,principalSet://goog/group/admins\@example.com.principalSet://goog/cloudIdentityCustomerId/{customer_id}: All of the principals associated with the specified Google Workspace or Cloud Identity customer ID. For example,principalSet://goog/cloudIdentityCustomerId/C01Abc35. If an identifier that was previously set on a policy is soft deleted, then calls to read that policy will return the identifier with a deleted prefix. Users cannot set identifiers with this syntax.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/{group_id}?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.
| Parameter | |
|---|---|
| Name | Description |
var |
string[]
|
| Returns | |
|---|---|
| Type | Description |
$this |
|
getExcludedPrincipals
Optional. The identities that are excluded from the access policy rule,
even if they are listed in the principals. For example, you could add a
Google group to the principals, then exclude specific users who belong to
that group.
| Returns | |
|---|---|
| Type | Description |
Google\Protobuf\RepeatedField<string> |
|
setExcludedPrincipals
Optional. The identities that are excluded from the access policy rule,
even if they are listed in the principals. For example, you could add a
Google group to the principals, then exclude specific users who belong to
that group.
| Parameter | |
|---|---|
| Name | Description |
var |
string[]
|
| Returns | |
|---|---|
| Type | Description |
$this |
|
getOperation
Required. Attributes that are used to determine whether this rule applies to a request.
| Returns | |
|---|---|
| Type | Description |
AccessPolicyRule\Operation|null |
|
hasOperation
clearOperation
setOperation
Required. Attributes that are used to determine whether this rule applies to a request.
| Parameter | |
|---|---|
| Name | Description |
var |
AccessPolicyRule\Operation
|
| Returns | |
|---|---|
| Type | Description |
$this |
|
getConditions
Optional. The conditions that determine whether this rule applies to a request. Conditions are identified by their key, which is the FQDN of the service that they are relevant to. For example:
"conditions": {
"iam.googleapis.com": {
"expression": <cel expression>
}
}
Each rule is evaluated independently. If this rule does not apply to a request, other rules might still apply.
Currently supported keys are as follows:
eventarc.googleapis.com: Can useCELfunctions that evaluate resource fields.iam.googleapis.com: Can useCELfunctions that evaluate resource tags and combine them using boolean and logical operators. Other functions and operators are not supported.
| Returns | |
|---|---|
| Type | Description |
Google\Protobuf\Internal\MapField |
|
setConditions
Optional. The conditions that determine whether this rule applies to a request. Conditions are identified by their key, which is the FQDN of the service that they are relevant to. For example:
"conditions": {
"iam.googleapis.com": {
"expression": <cel expression>
}
}
Each rule is evaluated independently. If this rule does not apply to a request, other rules might still apply.
Currently supported keys are as follows:
eventarc.googleapis.com: Can useCELfunctions that evaluate resource fields.iam.googleapis.com: Can useCELfunctions that evaluate resource tags and combine them using boolean and logical operators. Other functions and operators are not supported.
| Parameter | |
|---|---|
| Name | Description |
var |
array|Google\Protobuf\Internal\MapField
|
| Returns | |
|---|---|
| Type | Description |
$this |
|