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.
699 700 701 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 699 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
681 682 683 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 681 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
688 689 690 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 688 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
697 698 699 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 697 def resources @resources end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
704 705 706 707 708 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 704 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 |