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.



3639
3640
3641
# File 'lib/google/apis/iam_v1/classes.rb', line 3639

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)


3580
3581
3582
# File 'lib/google/apis/iam_v1/classes.rb', line 3580

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


3601
3602
3603
# File 'lib/google/apis/iam_v1/classes.rb', line 3601

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)


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

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)


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

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)


3620
3621
3622
# File 'lib/google/apis/iam_v1/classes.rb', line 3620

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)


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

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)


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

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)


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

def state
  @state
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3644
3645
3646
3647
3648
3649
3650
3651
3652
3653
# File 'lib/google/apis/iam_v1/classes.rb', line 3644

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