Class: Google::Apis::IamV1::WorkloadIdentityPool

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

Represents a collection of workload identities. You can define IAM policies to grant these identities access to Google Cloud resources.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ WorkloadIdentityPool

Returns a new instance of WorkloadIdentityPool.



3774
3775
3776
# File 'lib/google/apis/iam_v1/classes.rb', line 3774

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

Instance Attribute Details

#descriptionString

Optional. A description of the pool. Cannot exceed 256 characters. Corresponds to the JSON property description

Returns:

  • (String)


3723
3724
3725
# File 'lib/google/apis/iam_v1/classes.rb', line 3723

def description
  @description
end

#disabledBoolean Also known as: disabled?

Optional. Whether the pool is disabled. You cannot use a disabled pool to exchange tokens, or use existing tokens to access resources. If the pool is re- enabled, existing tokens grant access again. Corresponds to the JSON property disabled

Returns:

  • (Boolean)


3730
3731
3732
# File 'lib/google/apis/iam_v1/classes.rb', line 3730

def disabled
  @disabled
end

#display_nameString

Optional. A display name for the pool. Cannot exceed 32 characters. Corresponds to the JSON property displayName

Returns:

  • (String)


3736
3737
3738
# File 'lib/google/apis/iam_v1/classes.rb', line 3736

def display_name
  @display_name
end

#expire_timeString

Output only. Time after which the workload identity pool will be permanently purged and cannot be recovered. Corresponds to the JSON property expireTime

Returns:

  • (String)


3742
3743
3744
# File 'lib/google/apis/iam_v1/classes.rb', line 3742

def expire_time
  @expire_time
end

#inline_certificate_issuance_configGoogle::Apis::IamV1::InlineCertificateIssuanceConfig

Represents configuration for generating mutual TLS (mTLS) certificates for the identities within this pool. Corresponds to the JSON property inlineCertificateIssuanceConfig



3748
3749
3750
# File 'lib/google/apis/iam_v1/classes.rb', line 3748

def inline_certificate_issuance_config
  @inline_certificate_issuance_config
end

#inline_trust_configGoogle::Apis::IamV1::InlineTrustConfig

Defines configuration for extending trust to additional trust domains. By establishing trust with another domain, the current domain will recognize and accept certificates issued by entities within the trusted domains. Note that a trust domain automatically trusts itself, eliminating the need for explicit configuration. Corresponds to the JSON property inlineTrustConfig



3757
3758
3759
# File 'lib/google/apis/iam_v1/classes.rb', line 3757

def inline_trust_config
  @inline_trust_config
end

#modeString

Immutable. The mode the pool is operating in. Corresponds to the JSON property mode

Returns:

  • (String)


3762
3763
3764
# File 'lib/google/apis/iam_v1/classes.rb', line 3762

def mode
  @mode
end

#nameString

Identifier. The resource name of the pool. Corresponds to the JSON property name

Returns:

  • (String)


3767
3768
3769
# File 'lib/google/apis/iam_v1/classes.rb', line 3767

def name
  @name
end

#stateString

Output only. The state of the pool. Corresponds to the JSON property state

Returns:

  • (String)


3772
3773
3774
# File 'lib/google/apis/iam_v1/classes.rb', line 3772

def state
  @state
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3779
3780
3781
3782
3783
3784
3785
3786
3787
3788
3789
# File 'lib/google/apis/iam_v1/classes.rb', line 3779

def update!(**args)
  @description = args[:description] if args.key?(:description)
  @disabled = args[:disabled] if args.key?(:disabled)
  @display_name = args[:display_name] if args.key?(:display_name)
  @expire_time = args[:expire_time] if args.key?(:expire_time)
  @inline_certificate_issuance_config = args[:inline_certificate_issuance_config] if args.key?(:inline_certificate_issuance_config)
  @inline_trust_config = args[:inline_trust_config] if args.key?(:inline_trust_config)
  @mode = args[:mode] if args.key?(:mode)
  @name = args[:name] if args.key?(:name)
  @state = args[:state] if args.key?(:state)
end