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.
694 695 696 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 694 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
676 677 678 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 676 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
683 684 685 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 683 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
692 693 694 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 692 def resources @resources end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
699 700 701 702 703 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 699 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 |