Class: Google::Apis::GkehubV1beta1::Authority

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

Overview

Authority encodes how Google will recognize identities from this Membership. See the workload identity documentation for more details: https://cloud.google. com/kubernetes-engine/docs/how-to/workload-identity

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Authority

Returns a new instance of Authority.



170
171
172
# File 'lib/google/apis/gkehub_v1beta1/classes.rb', line 170

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

Instance Attribute Details

#identity_providerString

Output only. An identity provider that reflects the issuer in the workload identity pool. Corresponds to the JSON property identityProvider

Returns:

  • (String)


127
128
129
# File 'lib/google/apis/gkehub_v1beta1/classes.rb', line 127

def identity_provider
  @identity_provider
end

#issuerString

Optional. A JSON Web Token (JWT) issuer URI. issuer must start with https:// and be a valid URL with length <2000 characters. If set, then Google will allow valid OIDC tokens from this issuer to authenticate within the workload_identity_pool. OIDC discovery will be performed on this URI to validate tokens from the issuer. Clearing issuer disables Workload Identity. issuer cannot be directly modified; it must be cleared (and Workload Identity disabled) before using a new issuer (and re-enabling Workload Identity). Corresponds to the JSON property issuer

Returns:

  • (String)


139
140
141
# File 'lib/google/apis/gkehub_v1beta1/classes.rb', line 139

def issuer
  @issuer
end

#oidc_jwksString

Optional. OIDC verification keys for this Membership in JWKS format (RFC 7517). When this field is set, OIDC discovery will NOT be performed on issuer, and instead OIDC tokens will be validated using this field. Corresponds to the JSON property oidcJwks NOTE: Values are automatically base64 encoded/decoded in the client library.

Returns:

  • (String)


147
148
149
# File 'lib/google/apis/gkehub_v1beta1/classes.rb', line 147

def oidc_jwks
  @oidc_jwks
end

#scope_tenancy_identity_providerString

Optional. Output only. The identity provider for the scope-tenancy workload identity pool. Corresponds to the JSON property scopeTenancyIdentityProvider

Returns:

  • (String)


153
154
155
# File 'lib/google/apis/gkehub_v1beta1/classes.rb', line 153

def scope_tenancy_identity_provider
  @scope_tenancy_identity_provider
end

#scope_tenancy_workload_identity_poolString

Optional. Output only. The name of the scope-tenancy workload identity pool. This pool is set in the fleet-level feature. Corresponds to the JSON property scopeTenancyWorkloadIdentityPool

Returns:

  • (String)


159
160
161
# File 'lib/google/apis/gkehub_v1beta1/classes.rb', line 159

def scope_tenancy_workload_identity_pool
  @scope_tenancy_workload_identity_pool
end

#workload_identity_poolString

Output only. The name of the workload identity pool in which issuer will be recognized. There is a single Workload Identity Pool per Hub that is shared between all Memberships that belong to that Hub. For a Hub hosted in PROJECT_ID, the workload pool format is `PROJECT_ID.hub.id.goog, although this is subject to change in newer versions of this API. Corresponds to the JSON propertyworkloadIdentityPool`

Returns:

  • (String)


168
169
170
# File 'lib/google/apis/gkehub_v1beta1/classes.rb', line 168

def workload_identity_pool
  @workload_identity_pool
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



175
176
177
178
179
180
181
182
# File 'lib/google/apis/gkehub_v1beta1/classes.rb', line 175

def update!(**args)
  @identity_provider = args[:identity_provider] if args.key?(:identity_provider)
  @issuer = args[:issuer] if args.key?(:issuer)
  @oidc_jwks = args[:oidc_jwks] if args.key?(:oidc_jwks)
  @scope_tenancy_identity_provider = args[:scope_tenancy_identity_provider] if args.key?(:scope_tenancy_identity_provider)
  @scope_tenancy_workload_identity_pool = args[:scope_tenancy_workload_identity_pool] if args.key?(:scope_tenancy_workload_identity_pool)
  @workload_identity_pool = args[:workload_identity_pool] if args.key?(:workload_identity_pool)
end