Class: Google::Apis::AccesscontextmanagerV1::EgressFrom
- Inherits:
-
Object
- Object
- Google::Apis::AccesscontextmanagerV1::EgressFrom
- 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 based on information about the source of the request. 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.
Instance Attribute Summary collapse
-
#identities ⇒ Array<String>
A list of identities that are allowed access through [EgressPolicy].
-
#identity_type ⇒ String
Specifies the type of identities that are allowed access to outside the perimeter.
-
#source_restriction ⇒ String
Whether to enforce traffic restrictions based on
sourcesfield. -
#sources ⇒ Array<Google::Apis::AccesscontextmanagerV1::EgressSource>
Sources that this EgressPolicy authorizes access from.
Instance Method Summary collapse
-
#initialize(**args) ⇒ EgressFrom
constructor
A new instance of EgressFrom.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ EgressFrom
Returns a new instance of EgressFrom.
835 836 837 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 835 def initialize(**args) update!(**args) end |
Instance Attribute Details
#identities ⇒ Array<String>
A list of identities that are allowed access through [EgressPolicy].
Identities can be an individual user, service account, Google group, third-
party identity, or agent identity. For the list of supported identity types,
see https://docs.cloud.google.com/vpc-service-controls/docs/supported-
identities.
Corresponds to the JSON property identities
813 814 815 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 813 def identities @identities end |
#identity_type ⇒ String
Specifies the type of identities that are allowed access to outside the
perimeter. If left unspecified, then members of identities field will be
allowed access.
Corresponds to the JSON property identityType
820 821 822 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 820 def identity_type @identity_type end |
#source_restriction ⇒ String
Whether to enforce traffic restrictions based on sources field. If the
sources fields is non-empty, then this field must be set to
SOURCE_RESTRICTION_ENABLED.
Corresponds to the JSON property sourceRestriction
827 828 829 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 827 def source_restriction @source_restriction end |
#sources ⇒ Array<Google::Apis::AccesscontextmanagerV1::EgressSource>
Sources that this EgressPolicy authorizes access from. If this field is not
empty, then source_restriction must be set to SOURCE_RESTRICTION_ENABLED.
Corresponds to the JSON property sources
833 834 835 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 833 def sources @sources end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
840 841 842 843 844 845 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 840 def update!(**args) @identities = args[:identities] if args.key?(:identities) @identity_type = args[:identity_type] if args.key?(:identity_type) @source_restriction = args[:source_restriction] if args.key?(:source_restriction) @sources = args[:sources] if args.key?(:sources) end |