Class: Google::Apis::CloudassetV1::IamPolicyAnalysisQuery

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
lib/google/apis/cloudasset_v1/classes.rb,
lib/google/apis/cloudasset_v1/representations.rb,
lib/google/apis/cloudasset_v1/representations.rb

Overview

IAM policy analysis query message.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ IamPolicyAnalysisQuery

Returns a new instance of IamPolicyAnalysisQuery.



3892
3893
3894
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 3892

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#access_selectorGoogle::Apis::CloudassetV1::AccessSelector

Specifies roles and/or permissions to analyze, to determine both the identities possessing them and the resources they control. If multiple values are specified, results will include roles or permissions matching any of them. The total number of roles and permissions should be equal or less than 10. Corresponds to the JSON property accessSelector



3853
3854
3855
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 3853

def access_selector
  @access_selector
end

#condition_contextGoogle::Apis::CloudassetV1::ConditionContext

The IAM conditions context. Corresponds to the JSON property conditionContext



3858
3859
3860
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 3858

def condition_context
  @condition_context
end

#identity_selectorGoogle::Apis::CloudassetV1::IdentitySelector

Specifies an identity for which to determine resource access, based on roles assigned either directly to them or to the groups they belong to, directly or indirectly. Corresponds to the JSON property identitySelector



3865
3866
3867
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 3865

def identity_selector
  @identity_selector
end

#optionsGoogle::Apis::CloudassetV1::Options

Contains query options. Corresponds to the JSON property options



3870
3871
3872
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 3870

def options
  @options
end

#resource_selectorGoogle::Apis::CloudassetV1::ResourceSelector

Specifies the resource to analyze for access policies, which may be set directly on the resource, or on ancestors such as organizations, folders or projects. Corresponds to the JSON property resourceSelector



3877
3878
3879
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 3877

def resource_selector
  @resource_selector
end

#scopeString

Required. The relative name of the root asset. Only resources and IAM policies within the scope will be analyzed. This can only be an organization number ( such as "organizations/123"), a folder number (such as "folders/123"), a project ID (such as "projects/my-project-id"), or a project number (such as " projects/12345"). To know how to get organization ID, visit here . To know how to get folder or project ID, visit here . Corresponds to the JSON property scope

Returns:

  • (String)


3890
3891
3892
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 3890

def scope
  @scope
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3897
3898
3899
3900
3901
3902
3903
3904
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 3897

def update!(**args)
  @access_selector = args[:access_selector] if args.key?(:access_selector)
  @condition_context = args[:condition_context] if args.key?(:condition_context)
  @identity_selector = args[:identity_selector] if args.key?(:identity_selector)
  @options = args[:options] if args.key?(:options)
  @resource_selector = args[:resource_selector] if args.key?(:resource_selector)
  @scope = args[:scope] if args.key?(:scope)
end