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
sources
field. -
#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.
740 741 742 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 740 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, or third-
party identity. For third-party identity, only single identities are supported
and other identity types are not supported. The v1
identities that have the
prefix user
, group
, serviceAccount
, and principal
in https://cloud.
google.com/iam/docs/principal-identifiers#v1 are supported.
Corresponds to the JSON property identities
718 719 720 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 718 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
725 726 727 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 725 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
732 733 734 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 732 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
738 739 740 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 738 def sources @sources end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
745 746 747 748 749 750 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 745 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 |