Policy Simulator V1 API - Class Google::Cloud::PolicySimulator::V1::BindingExplanation (v0.4.0)

Reference documentation and code samples for the Policy Simulator V1 API class Google::Cloud::PolicySimulator::V1::BindingExplanation.

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

Inherits

  • Object

Extended By

  • Google::Protobuf::MessageExts::ClassMethods

Includes

  • Google::Protobuf::MessageExts

Methods

#access

def access() -> ::Google::Cloud::PolicySimulator::V1::AccessState
Returns
  • (::Google::Cloud::PolicySimulator::V1::AccessState) — Required. Indicates whether this binding provides the specified permission to the specified principal for the specified resource.

    This field does not indicate whether the principal actually has the permission for the resource. There might be another binding that overrides this binding. To determine whether the principal actually has the permission, use the access field in the [TroubleshootIamPolicyResponse][IamChecker.TroubleshootIamPolicyResponse].

#access=

def access=(value) -> ::Google::Cloud::PolicySimulator::V1::AccessState
Parameter
  • value (::Google::Cloud::PolicySimulator::V1::AccessState) — Required. Indicates whether this binding provides the specified permission to the specified principal for the specified resource.

    This field does not indicate whether the principal actually has the permission for the resource. There might be another binding that overrides this binding. To determine whether the principal actually has the permission, use the access field in the [TroubleshootIamPolicyResponse][IamChecker.TroubleshootIamPolicyResponse].

Returns
  • (::Google::Cloud::PolicySimulator::V1::AccessState) — Required. Indicates whether this binding provides the specified permission to the specified principal for the specified resource.

    This field does not indicate whether the principal actually has the permission for the resource. There might be another binding that overrides this binding. To determine whether the principal actually has the permission, use the access field in the [TroubleshootIamPolicyResponse][IamChecker.TroubleshootIamPolicyResponse].

#condition

def condition() -> ::Google::Type::Expr
Returns
  • (::Google::Type::Expr) — A condition expression that prevents this binding from granting access unless the expression evaluates to true.

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

#condition=

def condition=(value) -> ::Google::Type::Expr
Parameter
  • value (::Google::Type::Expr) — A condition expression that prevents this binding from granting access unless the expression evaluates to true.

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

Returns
  • (::Google::Type::Expr) — A condition expression that prevents this binding from granting access unless the expression evaluates to true.

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

#memberships

def memberships() -> ::Google::Protobuf::Map{::String => ::Google::Cloud::PolicySimulator::V1::BindingExplanation::AnnotatedMembership}
Returns
  • (::Google::Protobuf::Map{::String => ::Google::Cloud::PolicySimulator::V1::BindingExplanation::AnnotatedMembership}) — Indicates whether each principal in the binding includes the principal specified in the request, either directly or indirectly. Each key identifies a principal in the binding, and each value indicates whether the principal in the binding includes the principal in the request.

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

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

    The principal in the replayed access tuple is user:bob@example.com. This user is a principal of the group group:product-eng@example.com.

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

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

#memberships=

def memberships=(value) -> ::Google::Protobuf::Map{::String => ::Google::Cloud::PolicySimulator::V1::BindingExplanation::AnnotatedMembership}
Parameter
  • value (::Google::Protobuf::Map{::String => ::Google::Cloud::PolicySimulator::V1::BindingExplanation::AnnotatedMembership}) — Indicates whether each principal in the binding includes the principal specified in the request, either directly or indirectly. Each key identifies a principal in the binding, and each value indicates whether the principal in the binding includes the principal in the request.

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

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

    The principal in the replayed access tuple is user:bob@example.com. This user is a principal of the group group:product-eng@example.com.

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

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

Returns
  • (::Google::Protobuf::Map{::String => ::Google::Cloud::PolicySimulator::V1::BindingExplanation::AnnotatedMembership}) — Indicates whether each principal in the binding includes the principal specified in the request, either directly or indirectly. Each key identifies a principal in the binding, and each value indicates whether the principal in the binding includes the principal in the request.

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

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

    The principal in the replayed access tuple is user:bob@example.com. This user is a principal of the group group:product-eng@example.com.

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

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

#relevance

def relevance() -> ::Google::Cloud::PolicySimulator::V1::HeuristicRelevance
Returns

#relevance=

def relevance=(value) -> ::Google::Cloud::PolicySimulator::V1::HeuristicRelevance
Parameter
Returns

#role

def role() -> ::String
Returns
  • (::String) — The role that this binding grants. For example, roles/compute.serviceAgent.

    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.

#role=

def role=(value) -> ::String
Parameter
  • value (::String) — The role that this binding grants. For example, roles/compute.serviceAgent.

    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.

Returns
  • (::String) — The role that this binding grants. For example, roles/compute.serviceAgent.

    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.

#role_permission

def role_permission() -> ::Google::Cloud::PolicySimulator::V1::BindingExplanation::RolePermission
Returns

#role_permission=

def role_permission=(value) -> ::Google::Cloud::PolicySimulator::V1::BindingExplanation::RolePermission
Parameter
Returns

#role_permission_relevance

def role_permission_relevance() -> ::Google::Cloud::PolicySimulator::V1::HeuristicRelevance
Returns

#role_permission_relevance=

def role_permission_relevance=(value) -> ::Google::Cloud::PolicySimulator::V1::HeuristicRelevance
Parameter
Returns