Class GoogleIamV3PolicyBinding
IAM policy binding resource.
Implements
Inherited Members
Namespace: Google.Apis.PolicyTroubleshooter.v3beta.Data
Assembly: Google.Apis.PolicyTroubleshooter.v3beta.dll
Syntax
public class GoogleIamV3PolicyBinding : IDirectResponseSchema
Properties
Annotations
Optional. User-defined annotations. See https://google.aip.dev/148#annotations for more details such as format and size limitations
Declaration
[JsonProperty("annotations")]
public virtual IDictionary<string, string> Annotations { get; set; }
Property Value
| Type | Description |
|---|---|
| IDictionary<string, string> |
Condition
Optional. The condition to apply to the policy binding. When set, the expression field in the Expr must
include from 1 to 10 subexpressions, joined by the "||"(Logical OR), "&&"(Logical AND) or
"!"(Logical NOT) operators and cannot contain more than 250 characters. The condition is currently only
supported when bound to policies of kind principal access boundary. When the bound policy is a principal
access boundary policy, the only supported attributes in any subexpression are principal.type and
principal.subject. An example expression is: "principal.type == 'iam.googleapis.com/ServiceAccount'" or
"principal.subject == 'bob@example.com'". Allowed operations for principal.subject: - principal.subject == - principal.subject != - principal.subject in [] - principal.subject.startsWith() -
principal.subject.endsWith() Allowed operations for principal.type: - principal.type == -
principal.type != - principal.type in [] Supported principal types are Workspace, Workforce Pool,
Workload Pool and Service Account. Allowed string must be one of: - iam.googleapis.com/WorkspaceIdentity -
iam.googleapis.com/WorkforcePoolIdentity - iam.googleapis.com/WorkloadPoolIdentity -
iam.googleapis.com/ServiceAccount
Declaration
[JsonProperty("condition")]
public virtual GoogleTypeExpr Condition { get; set; }
Property Value
| Type | Description |
|---|---|
| GoogleTypeExpr |
CreateTime
object representation of CreateTimeRaw.
Declaration
[JsonIgnore]
[Obsolete("This property is obsolete and may behave unexpectedly; please use CreateTimeDateTimeOffset instead.")]
public virtual object CreateTime { get; set; }
Property Value
| Type | Description |
|---|---|
| object |
CreateTimeDateTimeOffset
DateTimeOffset representation of CreateTimeRaw.
Declaration
[JsonIgnore]
public virtual DateTimeOffset? CreateTimeDateTimeOffset { get; set; }
Property Value
| Type | Description |
|---|---|
| DateTimeOffset? |
CreateTimeRaw
Output only. The time when the policy binding was created.
Declaration
[JsonProperty("createTime")]
public virtual string CreateTimeRaw { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
DisplayName
Optional. The description of the policy binding. Must be less than or equal to 63 characters.
Declaration
[JsonProperty("displayName")]
public virtual string DisplayName { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
ETag
Optional. The etag for the policy binding. If this is provided on update, it must match the server's etag.
Declaration
[JsonProperty("etag")]
public virtual string ETag { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
Name
Identifier. The name of the policy binding, in the format
{binding_parent/locations/{location}/policyBindings/{policy_binding_id}. The binding parent is the closest
Resource Manager resource (project, folder, or organization) to the binding target. Format: *
projects/{project_id}/locations/{location}/policyBindings/{policy_binding_id} *
projects/{project_number}/locations/{location}/policyBindings/{policy_binding_id} *
folders/{folder_id}/locations/{location}/policyBindings/{policy_binding_id} *
organizations/{organization_id}/locations/{location}/policyBindings/{policy_binding_id}
Declaration
[JsonProperty("name")]
public virtual string Name { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
Policy
Required. Immutable. The resource name of the policy to be bound. The binding parent and policy must belong to the same organization.
Declaration
[JsonProperty("policy")]
public virtual string Policy { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
PolicyKind
Immutable. The kind of the policy to attach in this binding. This field must be one of the following: - Left empty (will be automatically set to the policy kind) - The input policy kind
Declaration
[JsonProperty("policyKind")]
public virtual string PolicyKind { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
PolicyUid
Output only. The globally unique ID of the policy to be bound.
Declaration
[JsonProperty("policyUid")]
public virtual string PolicyUid { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
Target
Required. Immutable. The full resource name of the resource to which the policy will be bound. Immutable once set.
Declaration
[JsonProperty("target")]
public virtual GoogleIamV3PolicyBindingTarget Target { get; set; }
Property Value
| Type | Description |
|---|---|
| GoogleIamV3PolicyBindingTarget |
Uid
Output only. The globally unique ID of the policy binding. Assigned when the policy binding is created.
Declaration
[JsonProperty("uid")]
public virtual string Uid { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
UpdateTime
object representation of UpdateTimeRaw.
Declaration
[JsonIgnore]
[Obsolete("This property is obsolete and may behave unexpectedly; please use UpdateTimeDateTimeOffset instead.")]
public virtual object UpdateTime { get; set; }
Property Value
| Type | Description |
|---|---|
| object |
UpdateTimeDateTimeOffset
DateTimeOffset representation of UpdateTimeRaw.
Declaration
[JsonIgnore]
public virtual DateTimeOffset? UpdateTimeDateTimeOffset { get; set; }
Property Value
| Type | Description |
|---|---|
| DateTimeOffset? |
UpdateTimeRaw
Output only. The time when the policy binding was most recently updated.
Declaration
[JsonProperty("updateTime")]
public virtual string UpdateTimeRaw { get; set; }
Property Value
| Type | Description |
|---|---|
| string |