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.
810 811 812 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 810 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
788 789 790 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 788 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
795 796 797 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 795 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
802 803 804 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 802 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
808 809 810 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 808 def sources @sources end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
815 816 817 818 819 820 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 815 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 |