Class: Google::Apis::IamcredentialsV1::GenerateAccessTokenRequest

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

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GenerateAccessTokenRequest

Returns a new instance of GenerateAccessTokenRequest.



62
63
64
# File 'lib/google/apis/iamcredentials_v1/classes.rb', line 62

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

Instance Attribute Details

#delegatesArray<String>

The sequence of service accounts in a delegation chain. This field is required for delegated requests. For direct requests, which are more common, do not specify this field. Each service account must be granted the roles/iam.serviceAccountTokenCreator role on its next service account in the chain. The last service account in the chain must be granted the roles/iam.serviceAccountTokenCreator role on the service account that is specified in the name field of the request. The delegates must have the following format: projects/-/serviceAccounts/ ACCOUNT_EMAIL_OR_UNIQUEID`. The-wildcard character is required; replacing it with a project ID is invalid. Corresponds to the JSON propertydelegates`

Returns:

  • (Array<String>)


42
43
44
# File 'lib/google/apis/iamcredentials_v1/classes.rb', line 42

def delegates
  @delegates
end

#lifetimeString

The desired lifetime duration of the access token in seconds. By default, the maximum allowed value is 1 hour. To set a lifetime of up to 12 hours, you can add the service account as an allowed value in an Organization Policy that enforces the constraints/iam.allowServiceAccountCredentialLifetimeExtension constraint. See detailed instructions at https://cloud.google.com/iam/help/ credentials/lifetime If a value is not specified, the token's lifetime will be set to a default value of 1 hour. Corresponds to the JSON property lifetime

Returns:

  • (String)


53
54
55
# File 'lib/google/apis/iamcredentials_v1/classes.rb', line 53

def lifetime
  @lifetime
end

#scopeArray<String>

Required. Code to identify the scopes to be included in the OAuth 2.0 access token. See https://developers.google.com/identity/protocols/googlescopes for more information. At least one value required. Corresponds to the JSON property scope

Returns:

  • (Array<String>)


60
61
62
# File 'lib/google/apis/iamcredentials_v1/classes.rb', line 60

def scope
  @scope
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



67
68
69
70
71
# File 'lib/google/apis/iamcredentials_v1/classes.rb', line 67

def update!(**args)
  @delegates = args[:delegates] if args.key?(:delegates)
  @lifetime = args[:lifetime] if args.key?(:lifetime)
  @scope = args[:scope] if args.key?(:scope)
end