Class: Google::Apis::ServicecontrolV2::AuthenticationInfo

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

Overview

Authentication information for the operation.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ AuthenticationInfo

Returns a new instance of AuthenticationInfo.



425
426
427
# File 'lib/google/apis/servicecontrol_v2/classes.rb', line 425

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

Instance Attribute Details

#authority_selectorString

The authority selector specified by the requestor, if any. It is not guaranteed that the principal was allowed to use this authority. Corresponds to the JSON property authoritySelector

Returns:

  • (String)


375
376
377
# File 'lib/google/apis/servicecontrol_v2/classes.rb', line 375

def authority_selector
  @authority_selector
end

#principal_emailString

The email address of the authenticated user (or service account on behalf of third party principal) making the request. For third party identity callers, the principal_subject field is populated instead of this field. For privacy reasons, the principal email address is sometimes redacted. For more information, see Caller identities in audit logs. Corresponds to the JSON property principalEmail

Returns:

  • (String)


385
386
387
# File 'lib/google/apis/servicecontrol_v2/classes.rb', line 385

def principal_email
  @principal_email
end

#principal_subjectString

String representation of identity of requesting party. Populated for both first and third party identities. Corresponds to the JSON property principalSubject

Returns:

  • (String)


391
392
393
# File 'lib/google/apis/servicecontrol_v2/classes.rb', line 391

def principal_subject
  @principal_subject
end

#service_account_delegation_infoArray<Google::Apis::ServicecontrolV2::ServiceAccountDelegationInfo>

Identity delegation history of an authenticated service account that makes the request. It contains information on the real authorities that try to access GCP resources by delegating on a service account. When multiple authorities present, they are guaranteed to be sorted based on the original ordering of the identity delegation events. Corresponds to the JSON property serviceAccountDelegationInfo



400
401
402
# File 'lib/google/apis/servicecontrol_v2/classes.rb', line 400

def 
  @service_account_delegation_info
end

#service_account_key_nameString

The name of the service account key used to create or exchange credentials for authenticating the service account making the request. This is a scheme-less URI full resource name. For example: "//iam.googleapis.com/projects/ PROJECT_ID/serviceAccounts/ACCOUNT/keys/key" Corresponds to the JSON property serviceAccountKeyName

Returns:

  • (String)


408
409
410
# File 'lib/google/apis/servicecontrol_v2/classes.rb', line 408

def 
  @service_account_key_name
end

#service_delegation_historyGoogle::Apis::ServicecontrolV2::ServiceDelegationHistory

The history of delegation across multiple services as the result of the original user's action. Such as "service A uses its own account to do something for user B". This differs from ServiceAccountDelegationInfo, which only tracks the history of direct token exchanges (impersonation). Corresponds to the JSON property serviceDelegationHistory



416
417
418
# File 'lib/google/apis/servicecontrol_v2/classes.rb', line 416

def service_delegation_history
  @service_delegation_history
end

#third_party_principalHash<String,Object>

The third party identification (if any) of the authenticated user making the request. When the JSON object represented here has a proto equivalent, the proto name will be indicated in the @type property. Corresponds to the JSON property thirdPartyPrincipal

Returns:

  • (Hash<String,Object>)


423
424
425
# File 'lib/google/apis/servicecontrol_v2/classes.rb', line 423

def third_party_principal
  @third_party_principal
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



430
431
432
433
434
435
436
437
438
# File 'lib/google/apis/servicecontrol_v2/classes.rb', line 430

def update!(**args)
  @authority_selector = args[:authority_selector] if args.key?(:authority_selector)
  @principal_email = args[:principal_email] if args.key?(:principal_email)
  @principal_subject = args[:principal_subject] if args.key?(:principal_subject)
  @service_account_delegation_info = args[:service_account_delegation_info] if args.key?(:service_account_delegation_info)
  @service_account_key_name = args[:service_account_key_name] if args.key?(:service_account_key_name)
  @service_delegation_history = args[:service_delegation_history] if args.key?(:service_delegation_history)
  @third_party_principal = args[:third_party_principal] if args.key?(:third_party_principal)
end