Class: Google::Apis::PolicysimulatorV1beta::GoogleCloudPolicysimulatorV1betaExplainedPolicy
- Inherits:
-
Object
- Object
- Google::Apis::PolicysimulatorV1beta::GoogleCloudPolicysimulatorV1betaExplainedPolicy
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/policysimulator_v1beta/classes.rb,
lib/google/apis/policysimulator_v1beta/representations.rb,
lib/google/apis/policysimulator_v1beta/representations.rb
Overview
Details about how a specific IAM Policy contributed to the access check.
Instance Attribute Summary collapse
-
#access ⇒ String
Indicates whether this policy provides the specified permission to the specified principal for the specified resource.
-
#binding_explanations ⇒ Array<Google::Apis::PolicysimulatorV1beta::GoogleCloudPolicysimulatorV1betaBindingExplanation>
Details about how each binding in the policy affects the principal's ability, or inability, to use the permission for the resource.
-
#full_resource_name ⇒ String
The full resource name that identifies the resource.
-
#policy ⇒ Google::Apis::PolicysimulatorV1beta::GoogleIamV1Policy
An Identity and Access Management (IAM) policy, which specifies access controls for Google Cloud resources.
-
#relevance ⇒ String
The relevance of this policy to the overall determination in the TroubleshootIamPolicyResponse.
Instance Method Summary collapse
-
#initialize(**args) ⇒ GoogleCloudPolicysimulatorV1betaExplainedPolicy
constructor
A new instance of GoogleCloudPolicysimulatorV1betaExplainedPolicy.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ GoogleCloudPolicysimulatorV1betaExplainedPolicy
Returns a new instance of GoogleCloudPolicysimulatorV1betaExplainedPolicy.
1193 1194 1195 |
# File 'lib/google/apis/policysimulator_v1beta/classes.rb', line 1193 def initialize(**args) update!(**args) end |
Instance Attribute Details
#access ⇒ String
Indicates whether this policy 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 policy that overrides this policy. To determine whether the
principal actually has the permission, use the access field in the
TroubleshootIamPolicyResponse.
Corresponds to the JSON property access
1136 1137 1138 |
# File 'lib/google/apis/policysimulator_v1beta/classes.rb', line 1136 def access @access end |
#binding_explanations ⇒ Array<Google::Apis::PolicysimulatorV1beta::GoogleCloudPolicysimulatorV1betaBindingExplanation>
Details about how each binding in the policy affects the principal's ability,
or inability, to use the permission for the resource. If the user who created
the Replay does not have access to the policy, this field is omitted.
Corresponds to the JSON property bindingExplanations
1143 1144 1145 |
# File 'lib/google/apis/policysimulator_v1beta/classes.rb', line 1143 def binding_explanations @binding_explanations end |
#full_resource_name ⇒ String
The full resource name that identifies the resource. For example, //compute.
googleapis.com/projects/my-project/zones/us-central1-a/instances/my-instance.
If the user who created the Replay does not have access to the policy, this
field is omitted. For examples of full resource names for Google Cloud
services, see https://cloud.google.com/iam/help/troubleshooter/full-resource-
names.
Corresponds to the JSON property fullResourceName
1153 1154 1155 |
# File 'lib/google/apis/policysimulator_v1beta/classes.rb', line 1153 def full_resource_name @full_resource_name end |
#policy ⇒ Google::Apis::PolicysimulatorV1beta::GoogleIamV1Policy
An Identity and Access Management (IAM) policy, which specifies access
controls for Google Cloud resources. A Policy is a collection of bindings.
A binding binds one or more members, or principals, to a single role.
Principals can be user accounts, service accounts, Google groups, and domains (
such as G Suite). A role is a named list of permissions; each role can be
an IAM predefined role or a user-created custom role. For some types of Google
Cloud resources, a binding can also specify a condition, which is a
logical expression that allows access to a resource only if the expression
evaluates to true. A condition can add constraints based on attributes of
the request, the resource, or both. To learn which resources support
conditions in their IAM policies, see the IAM documentation. JSON example: ` "
bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members": [
"user:mike@example.com", "group:admins@example.com", "domain:google.com", "
serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
], "condition": ` "title": "expirable access", "description": "Does not grant
access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` YAML
example: bindings: - members: - user:mike@example.com - group:admins@
example.com - domain:google.com - serviceAccount:my-project-id@appspot.
gserviceaccount.com role: roles/resourcemanager.organizationAdmin - members: -
user:eve@example.com role: roles/resourcemanager.organizationViewer condition:
title: expirable access description: Does not grant access after Sep 2020
expression: request.time < timestamp('2020-10-01T00:00:00.000Z') etag:
BwWWja0YfJA= version: 3 For a description of IAM and its features, see the
IAM documentation.
Corresponds to the JSON property policy
1184 1185 1186 |
# File 'lib/google/apis/policysimulator_v1beta/classes.rb', line 1184 def policy @policy end |
#relevance ⇒ String
The relevance of this policy to the overall determination in the
TroubleshootIamPolicyResponse. If the user who created the Replay does not
have access to the policy, this field is omitted.
Corresponds to the JSON property relevance
1191 1192 1193 |
# File 'lib/google/apis/policysimulator_v1beta/classes.rb', line 1191 def relevance @relevance end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1198 1199 1200 1201 1202 1203 1204 |
# File 'lib/google/apis/policysimulator_v1beta/classes.rb', line 1198 def update!(**args) @access = args[:access] if args.key?(:access) @binding_explanations = args[:binding_explanations] if args.key?(:binding_explanations) @full_resource_name = args[:full_resource_name] if args.key?(:full_resource_name) @policy = args[:policy] if args.key?(:policy) @relevance = args[:relevance] if args.key?(:relevance) end |