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.
819 820 821 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 819 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
797 798 799 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 797 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
804 805 806 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 804 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
811 812 813 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 811 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
817 818 819 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 817 def sources @sources end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
824 825 826 827 828 829 |
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 824 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 |