Policy Troubleshooter v3 API - Class AllowBindingExplanation (1.0.0-beta02)

public sealed class AllowBindingExplanation : IMessage<AllowBindingExplanation>, IEquatable<AllowBindingExplanation>, IDeepCloneable<AllowBindingExplanation>, IBufferMessage, IMessage

Reference documentation and code samples for the Policy Troubleshooter v3 API class AllowBindingExplanation.

Details about how a role binding in an allow policy affects a principal's ability to use a permission.

Inheritance

object > AllowBindingExplanation

Namespace

Google.Cloud.PolicyTroubleshooter.Iam.V3

Assembly

Google.Cloud.PolicyTroubleshooter.Iam.V3.dll

Constructors

AllowBindingExplanation()

public AllowBindingExplanation()

AllowBindingExplanation(AllowBindingExplanation)

public AllowBindingExplanation(AllowBindingExplanation other)
Parameter
NameDescription
otherAllowBindingExplanation

Properties

AllowAccessState

public AllowAccessState AllowAccessState { get; set; }

Required. Indicates whether this role binding gives the specified permission to the specified principal on the specified resource.

This field does not indicate whether the principal actually has the permission on the resource. There might be another role binding that overrides this role binding. To determine whether the principal actually has the permission, use the overall_access_state field in the [TroubleshootIamPolicyResponse][google.cloud.policytroubleshooter.iam.v3.TroubleshootIamPolicyResponse].

Property Value
TypeDescription
AllowAccessState

CombinedMembership

public AllowBindingExplanation.Types.AnnotatedAllowMembership CombinedMembership { get; set; }

The combined result of all memberships. Indicates if the principal is included in any role binding, either directly or indirectly.

Property Value
TypeDescription
AllowBindingExplanationTypesAnnotatedAllowMembership

Condition

public Expr Condition { get; set; }

A condition expression that specifies when the role binding grants access.

To learn about IAM Conditions, see https://cloud.google.com/iam/help/conditions/overview.

Property Value
TypeDescription
Expr

ConditionExplanation

public ConditionExplanation ConditionExplanation { get; set; }

Condition evaluation state for this role binding.

Property Value
TypeDescription
ConditionExplanation

Memberships

public MapField<string, AllowBindingExplanation.Types.AnnotatedAllowMembership> Memberships { get; }

Indicates whether each role binding includes the principal specified in the request, either directly or indirectly. Each key identifies a principal in the role binding, and each value indicates whether the principal in the role binding includes the principal in the request.

For example, suppose that a role binding includes the following principals:

  • user:alice@example.com
  • group:product-eng@example.com

You want to troubleshoot access for user:bob@example.com. This user is a member of the group group:product-eng@example.com.

For the first principal in the role binding, the key is user:alice@example.com, and the membership field in the value is set to NOT_INCLUDED.

For the second principal in the role binding, the key is group:product-eng@example.com, and the membership field in the value is set to INCLUDED.

Property Value
TypeDescription
MapFieldstringAllowBindingExplanationTypesAnnotatedAllowMembership

Relevance

public HeuristicRelevance Relevance { get; set; }

The relevance of this role binding to the overall determination for the entire policy.

Property Value
TypeDescription
HeuristicRelevance

Role

public string Role { get; set; }

The role that this role binding grants. For example, roles/compute.admin.

For a complete list of predefined IAM roles, as well as the permissions in each role, see https://cloud.google.com/iam/help/roles/reference.

Property Value
TypeDescription
string

RolePermission

public RolePermissionInclusionState RolePermission { get; set; }

Indicates whether the role granted by this role binding contains the specified permission.

Property Value
TypeDescription
RolePermissionInclusionState

RolePermissionRelevance

public HeuristicRelevance RolePermissionRelevance { get; set; }

The relevance of the permission's existence, or nonexistence, in the role to the overall determination for the entire policy.

Property Value
TypeDescription
HeuristicRelevance