Class: Google::Apis::IamV1::WorkforcePoolProviderScimTenant

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/iam_v1/classes.rb,
lib/google/apis/iam_v1/representations.rb,
lib/google/apis/iam_v1/representations.rb

Overview

Gemini Enterprise only. Represents a SCIM tenant. Used for provisioning and managing identity data (such as Users and Groups) in cross-domain environments.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ WorkforcePoolProviderScimTenant

Returns a new instance of WorkforcePoolProviderScimTenant.



3644
3645
3646
# File 'lib/google/apis/iam_v1/classes.rb', line 3644

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

Instance Attribute Details

#base_uriString

Output only. Gemini Enterprise only. Represents the base URI as defined in RFC 7644, Section 1.3. Clients must use this as the root address for managing resources under the tenant. Format: https://iamscim.googleapis.com/`version`/`tenant_id`/ Corresponds to the JSON property baseUri

Returns:

  • (String)


3585
3586
3587
# File 'lib/google/apis/iam_v1/classes.rb', line 3585

def base_uri
  @base_uri
end

#claim_mappingHash<String,String>

Required. Immutable. Gemini Enterprise only. Maps SCIM attributes to Google attributes. This mapping is used to associate the attributes synced via SCIM with the Google Cloud attributes used in IAM policies for Workforce Identity Federation. SCIM-managed user and group attributes are mapped to google. subject and google.group respectively. Each key must be a string specifying the Google Cloud IAM attribute to map to. The supported keys are as follows: * google.subject: The principal IAM is authenticating. You can reference this value in IAM bindings. This is also the subject that appears in Cloud Logging logs. This is a required field and the mapped subject cannot exceed 127 bytes.

  • google.group: Group the authenticating user belongs to. You can grant group access to resources using an IAM principalSet binding; access applies to all members of the group. Each value must be a Common Expression Language expression that maps SCIM user or group attribute to the normalized attribute specified by the corresponding map key. Example: To map the SCIM user's externalId to google.subject and the SCIM group's externalId to google.group: ` "google.subject": "user. externalId", "google.group": "group.externalId" ` Corresponds to the JSON property claimMapping

Returns:

  • (Hash<String,String>)


3606
3607
3608
# File 'lib/google/apis/iam_v1/classes.rb', line 3606

def claim_mapping
  @claim_mapping
end

#descriptionString

Optional. Gemini Enterprise only. The description of the SCIM tenant. Cannot exceed 256 characters. Corresponds to the JSON property description

Returns:

  • (String)


3612
3613
3614
# File 'lib/google/apis/iam_v1/classes.rb', line 3612

def description
  @description
end

#display_nameString

Optional. Gemini Enterprise only. The display name of the SCIM tenant. Cannot exceed 32 characters. Corresponds to the JSON property displayName

Returns:

  • (String)


3618
3619
3620
# File 'lib/google/apis/iam_v1/classes.rb', line 3618

def display_name
  @display_name
end

#nameString

Identifier. Gemini Enterprise only. The resource name of the SCIM Tenant. Format: locations/location/workforcePools/workforce_pool/providers/ workforce_pool_provider/scimTenants/scim_tenant` Corresponds to the JSON propertyname`

Returns:

  • (String)


3625
3626
3627
# File 'lib/google/apis/iam_v1/classes.rb', line 3625

def name
  @name
end

#purge_timeString

Output only. Gemini Enterprise only. The timestamp that represents the time when the SCIM tenant is purged. Corresponds to the JSON property purgeTime

Returns:

  • (String)


3631
3632
3633
# File 'lib/google/apis/iam_v1/classes.rb', line 3631

def purge_time
  @purge_time
end

#service_agentString

Output only. Service Agent created by SCIM Tenant API. SCIM tokens created under this tenant will be attached to this service agent. Corresponds to the JSON property serviceAgent

Returns:

  • (String)


3637
3638
3639
# File 'lib/google/apis/iam_v1/classes.rb', line 3637

def service_agent
  @service_agent
end

#stateString

Output only. Gemini Enterprise only. The state of the tenant. Corresponds to the JSON property state

Returns:

  • (String)


3642
3643
3644
# File 'lib/google/apis/iam_v1/classes.rb', line 3642

def state
  @state
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3649
3650
3651
3652
3653
3654
3655
3656
3657
3658
# File 'lib/google/apis/iam_v1/classes.rb', line 3649

def update!(**args)
  @base_uri = args[:base_uri] if args.key?(:base_uri)
  @claim_mapping = args[:claim_mapping] if args.key?(:claim_mapping)
  @description = args[:description] if args.key?(:description)
  @display_name = args[:display_name] if args.key?(:display_name)
  @name = args[:name] if args.key?(:name)
  @purge_time = args[:purge_time] if args.key?(:purge_time)
  @service_agent = args[:service_agent] if args.key?(:service_agent)
  @state = args[:state] if args.key?(:state)
end