Class: Google::Apis::CloudassetV1::GoogleCloudAssetV1AccessControlList

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

An access control list, derived from the above IAM policy binding, which contains a set of resources and accesses. May include one item from each set to compose an access control entry. NOTICE that there could be multiple access control lists for one IAM policy binding. The access control lists are created based on resource and access combinations. For example, assume we have the following cases in one IAM policy binding: - Permission P1 and P2 apply to resource R1 and R2; - Permission P3 applies to resource R2 and R3; This will result in the following access control lists: - AccessControlList 1: [R1, R2], [P1, P2] - AccessControlList 2: [R2, R3], [P3]

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GoogleCloudAssetV1AccessControlList

Returns a new instance of GoogleCloudAssetV1AccessControlList.



1078
1079
1080
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 1078

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

Instance Attribute Details

#accessesArray<Google::Apis::CloudassetV1::GoogleCloudAssetV1Access>

The accesses that match one of the following conditions: - The access_selector, if it is specified in request; - Otherwise, access specifiers reachable from the policy binding's role. Corresponds to the JSON property accesses



1055
1056
1057
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 1055

def accesses
  @accesses
end

#condition_evaluationGoogle::Apis::CloudassetV1::ConditionEvaluation

The Condition evaluation. Corresponds to the JSON property conditionEvaluation



1060
1061
1062
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 1060

def condition_evaluation
  @condition_evaluation
end

#resource_edgesArray<Google::Apis::CloudassetV1::GoogleCloudAssetV1Edge>

Resource edges of the graph starting from the policy attached resource to any descendant resources. The Edge.source_node contains the full resource name of a parent resource and Edge.target_node contains the full resource name of a child resource. This field is present only if the output_resource_edges option is enabled in request. Corresponds to the JSON property resourceEdges



1069
1070
1071
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 1069

def resource_edges
  @resource_edges
end

#resourcesArray<Google::Apis::CloudassetV1::GoogleCloudAssetV1Resource>

The resources that match one of the following conditions: - The resource_selector, if it is specified in request; - Otherwise, resources reachable from the policy attached resource. Corresponds to the JSON property resources



1076
1077
1078
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 1076

def resources
  @resources
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1083
1084
1085
1086
1087
1088
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 1083

def update!(**args)
  @accesses = args[:accesses] if args.key?(:accesses)
  @condition_evaluation = args[:condition_evaluation] if args.key?(:condition_evaluation)
  @resource_edges = args[:resource_edges] if args.key?(:resource_edges)
  @resources = args[:resources] if args.key?(:resources)
end