Class: Google::Apis::CloudassetV1::Options
- Inherits:
-
Object
- Object
- Google::Apis::CloudassetV1::Options
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- generated/google/apis/cloudasset_v1/classes.rb,
generated/google/apis/cloudasset_v1/representations.rb,
generated/google/apis/cloudasset_v1/representations.rb
Overview
Contains query options.
Instance Attribute Summary collapse
-
#analyze_service_account_impersonation ⇒ Boolean
(also: #analyze_service_account_impersonation?)
Optional.
-
#expand_groups ⇒ Boolean
(also: #expand_groups?)
Optional.
-
#expand_resources ⇒ Boolean
(also: #expand_resources?)
Optional.
-
#expand_roles ⇒ Boolean
(also: #expand_roles?)
Optional.
-
#output_group_edges ⇒ Boolean
(also: #output_group_edges?)
Optional.
-
#output_resource_edges ⇒ Boolean
(also: #output_resource_edges?)
Optional.
Instance Method Summary collapse
-
#initialize(**args) ⇒ Options
constructor
A new instance of Options.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ Options
Returns a new instance of Options.
2696 2697 2698 |
# File 'generated/google/apis/cloudasset_v1/classes.rb', line 2696 def initialize(**args) update!(**args) end |
Instance Attribute Details
#analyze_service_account_impersonation ⇒ Boolean Also known as: analyze_service_account_impersonation?
Optional. If true, the response will include access analysis from identities
to resources via service account impersonation. This is a very expensive
operation, because many derived queries will be executed. We highly recommend
you use AssetService.AnalyzeIamPolicyLongrunning rpc instead. For example, if
the request analyzes for which resources user A has permission P, and there's
an IAM policy states user A has iam.serviceAccounts.getAccessToken permission
to a service account SA, and there's another IAM policy states service account
SA has permission P to a GCP folder F, then user A potentially has access to
the GCP folder F. And those advanced analysis results will be included in
AnalyzeIamPolicyResponse.service_account_impersonation_analysis. Another
example, if the request analyzes for who has permission P to a GCP folder F,
and there's an IAM policy states user A has iam.serviceAccounts.actAs
permission to a service account SA, and there's another IAM policy states
service account SA has permission P to the GCP folder F, then user A
potentially has access to the GCP folder F. And those advanced analysis
results will be included in AnalyzeIamPolicyResponse.
service_account_impersonation_analysis. Default is false.
Corresponds to the JSON property analyzeServiceAccountImpersonation
2642 2643 2644 |
# File 'generated/google/apis/cloudasset_v1/classes.rb', line 2642 def analyze_service_account_impersonation @analyze_service_account_impersonation end |
#expand_groups ⇒ Boolean Also known as: expand_groups?
Optional. If true, the identities section of the result will expand any Google
groups appearing in an IAM policy binding. If IamPolicyAnalysisQuery.
identity_selector is specified, the identity in the result will be determined
by the selector, and this flag is not allowed to set. Default is false.
Corresponds to the JSON property expandGroups
2651 2652 2653 |
# File 'generated/google/apis/cloudasset_v1/classes.rb', line 2651 def @expand_groups end |
#expand_resources ⇒ Boolean Also known as: expand_resources?
Optional. If true and IamPolicyAnalysisQuery.resource_selector is not
specified, the resource section of the result will expand any resource
attached to an IAM policy to include resources lower in the resource hierarchy.
For example, if the request analyzes for which resources user A has
permission P, and the results include an IAM policy with P on a GCP folder,
the results will also include resources in that folder with permission P. If
true and IamPolicyAnalysisQuery.resource_selector is specified, the resource
section of the result will expand the specified resource to include resources
lower in the resource hierarchy. Only project or lower resources are supported.
Folder and organization resource cannot be used together with this option.
For example, if the request analyzes for which users have permission P on a
GCP project with this option enabled, the results will include all users who
have permission P on that project or any lower resource. Default is false.
Corresponds to the JSON property expandResources
2669 2670 2671 |
# File 'generated/google/apis/cloudasset_v1/classes.rb', line 2669 def @expand_resources end |
#expand_roles ⇒ Boolean Also known as: expand_roles?
Optional. If true, the access section of result will expand any roles
appearing in IAM policy bindings to include their permissions. If
IamPolicyAnalysisQuery.access_selector is specified, the access section of the
result will be determined by the selector, and this flag is not allowed to set.
Default is false.
Corresponds to the JSON property expandRoles
2679 2680 2681 |
# File 'generated/google/apis/cloudasset_v1/classes.rb', line 2679 def @expand_roles end |
#output_group_edges ⇒ Boolean Also known as: output_group_edges?
Optional. If true, the result will output group identity edges, starting from
the binding's group members, to any expanded identities. Default is false.
Corresponds to the JSON property outputGroupEdges
2686 2687 2688 |
# File 'generated/google/apis/cloudasset_v1/classes.rb', line 2686 def output_group_edges @output_group_edges end |
#output_resource_edges ⇒ Boolean Also known as: output_resource_edges?
Optional. If true, the result will output resource edges, starting from the
policy attached resource, to any expanded resources. Default is false.
Corresponds to the JSON property outputResourceEdges
2693 2694 2695 |
# File 'generated/google/apis/cloudasset_v1/classes.rb', line 2693 def output_resource_edges @output_resource_edges end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
2701 2702 2703 2704 2705 2706 2707 2708 |
# File 'generated/google/apis/cloudasset_v1/classes.rb', line 2701 def update!(**args) @analyze_service_account_impersonation = args[:analyze_service_account_impersonation] if args.key?(:analyze_service_account_impersonation) @expand_groups = args[:expand_groups] if args.key?(:expand_groups) @expand_resources = args[:expand_resources] if args.key?(:expand_resources) @expand_roles = args[:expand_roles] if args.key?(:expand_roles) @output_group_edges = args[:output_group_edges] if args.key?(:output_group_edges) @output_resource_edges = args[:output_resource_edges] if args.key?(:output_resource_edges) end |