Class: Google::Apis::AccesscontextmanagerV1::EgressTo
- Inherits:
-
Object
- Object
- Google::Apis::AccesscontextmanagerV1::EgressTo
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/accesscontextmanager_v1/classes.rb,
lib/google/apis/accesscontextmanager_v1/representations.rb,
lib/google/apis/accesscontextmanager_v1/representations.rb
Overview
Defines the conditions under which an EgressPolicy matches a request.
Conditions are based on information about the ApiOperation intended to be
performed on the resources specified. Note that if the destination of the
request is also protected by a ServicePerimeter, then that ServicePerimeter
must have an IngressPolicy which allows access in order for this request to
succeed. The request must match operations AND resources fields in order
to be allowed egress out of the perimeter.
Instance Attribute Summary collapse
-
#external_resources ⇒ Array<String>
A list of external resources that are allowed to be accessed.
-
#operations ⇒ Array<Google::Apis::AccesscontextmanagerV1::ApiOperation>
A list of ApiOperations allowed to be performed by the sources specified in the corresponding EgressFrom.
-
#resources ⇒ Array<String>
A list of resources, currently only projects in the form
projects/, that are allowed to be accessed by sources defined in the corresponding EgressFrom.
Instance Method Summary collapse
-
#initialize(**args) ⇒ EgressTo
constructor
A new instance of EgressTo.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ EgressTo
Returns a new instance of EgressTo.
697 698 699 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 697 def initialize(**args) update!(**args) end |
Instance Attribute Details
#external_resources ⇒ Array<String>
A list of external resources that are allowed to be accessed. Only AWS and
Azure resources are supported. For Amazon S3, the supported format is s3://
BUCKET_NAME. For Azure Storage, the supported format is azure://myaccount.blob.
core.windows.net/CONTAINER_NAME. A request matches if it contains an external
resource in this list (Example: s3://bucket/path). Currently '*' is not
allowed.
Corresponds to the JSON property externalResources
679 680 681 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 679 def external_resources @external_resources end |
#operations ⇒ Array<Google::Apis::AccesscontextmanagerV1::ApiOperation>
A list of ApiOperations allowed to be performed by the sources specified in
the corresponding EgressFrom. A request matches if it uses an operation/
service in this list.
Corresponds to the JSON property operations
686 687 688 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 686 def operations @operations end |
#resources ⇒ Array<String>
A list of resources, currently only projects in the form projects/, that are
allowed to be accessed by sources defined in the corresponding EgressFrom. A
request matches if it contains a resource in this list. If * is specified
for resources, then this EgressTo rule will authorize access to all
resources outside the perimeter.
Corresponds to the JSON property resources
695 696 697 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 695 def resources @resources end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
702 703 704 705 706 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 702 def update!(**args) @external_resources = args[:external_resources] if args.key?(:external_resources) @operations = args[:operations] if args.key?(:operations) @resources = args[:resources] if args.key?(:resources) end |