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.



1188
1189
1190
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 1188

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>)


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

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)


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

def identity_type
  @identity_type
end

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

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



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

def sources
  @sources
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1193
1194
1195
1196
1197
# File 'lib/google/apis/accesscontextmanager_v1/classes.rb', line 1193

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