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.
933 934 935 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 933 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 formats are s3://
BUCKET_NAME, s3a://BUCKET_NAME, and s3n://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
915 916 917 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 915 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
922 923 924 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 922 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
931 932 933 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 931 def resources @resources end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
938 939 940 941 942 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 938 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 |