Class: Google::Apis::AccesscontextmanagerV1::IngressFrom

Inherits:
Object
  • Object
show all
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 IngressPolicy matches a request. Conditions are based on information about the source of the request. The request must satisfy what is defined in sources AND identity related fields in order to match.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ IngressFrom

Returns a new instance of IngressFrom.



1180
1181
1182
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 1180

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#identitiesArray<String>

A list of identities that are allowed access through [IngressPolicy]. 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

Returns:

  • (Array<String>)


1166
1167
1168
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 1166

def identities
  @identities
end

#identity_typeString

Specifies the type of identities that are allowed access from outside the perimeter. If left unspecified, then members of identities field will be allowed access. Corresponds to the JSON property identityType

Returns:

  • (String)


1173
1174
1175
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 1173

def identity_type
  @identity_type
end

#sourcesArray<Google::Apis::AccesscontextmanagerV1::IngressSource>

Sources that this IngressPolicy authorizes access from. Corresponds to the JSON property sources



1178
1179
1180
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 1178

def sources
  @sources
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1185
1186
1187
1188
1189
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 1185

def update!(**args)
  @identities = args[:identities] if args.key?(:identities)
  @identity_type = args[:identity_type] if args.key?(:identity_type)
  @sources = args[:sources] if args.key?(:sources)
end