Class: Google::Apis::IamV1::ServiceAccount
- Inherits:
-
Object
- Object
- Google::Apis::IamV1::ServiceAccount
- 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
An IAM service account. A service account is an account for an application or a virtual machine (VM) instance, not a person. You can use a service account to call Google APIs. To learn more, read the overview of service accounts. When you create a service account, you specify the project ID that owns the service account, as well as a name that must be unique within the project. IAM uses these values to create an email address that identifies the service account. //
Instance Attribute Summary collapse
-
#description ⇒ String
Optional.
-
#disabled ⇒ Boolean
(also: #disabled?)
Output only.
-
#display_name ⇒ String
Optional.
-
#email ⇒ String
Output only.
-
#etag ⇒ String
Deprecated.
-
#name ⇒ String
The resource name of the service account.
-
#oauth2_client_id ⇒ String
Output only.
-
#project_id ⇒ String
Output only.
-
#unique_id ⇒ String
Output only.
Instance Method Summary collapse
-
#initialize(**args) ⇒ ServiceAccount
constructor
A new instance of ServiceAccount.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ ServiceAccount
Returns a new instance of ServiceAccount.
2248 2249 2250 |
# File 'lib/google/apis/iam_v1/classes.rb', line 2248 def initialize(**args) update!(**args) end |
Instance Attribute Details
#description ⇒ String
Optional. A user-specified, human-readable description of the service account.
The maximum length is 256 UTF-8 bytes.
Corresponds to the JSON property description
2190 2191 2192 |
# File 'lib/google/apis/iam_v1/classes.rb', line 2190 def description @description end |
#disabled ⇒ Boolean Also known as: disabled?
Output only. Whether the service account is disabled.
Corresponds to the JSON property disabled
2195 2196 2197 |
# File 'lib/google/apis/iam_v1/classes.rb', line 2195 def disabled @disabled end |
#display_name ⇒ String
Optional. A user-specified, human-readable name for the service account. The
maximum length is 100 UTF-8 bytes.
Corresponds to the JSON property displayName
2202 2203 2204 |
# File 'lib/google/apis/iam_v1/classes.rb', line 2202 def display_name @display_name end |
#email ⇒ String
Output only. The email address of the service account.
Corresponds to the JSON property email
2207 2208 2209 |
# File 'lib/google/apis/iam_v1/classes.rb', line 2207 def email @email end |
#etag ⇒ String
Deprecated. Do not use.
Corresponds to the JSON property etag
NOTE: Values are automatically base64 encoded/decoded in the client library.
2213 2214 2215 |
# File 'lib/google/apis/iam_v1/classes.rb', line 2213 def etag @etag end |
#name ⇒ String
The resource name of the service account. Use one of the following formats: *
projects/
PROJECT_ID/serviceAccounts/
EMAIL_ADDRESS* `projects/`PROJECT_ID`
/serviceAccounts/`UNIQUE_ID
As an alternative, you can use the -
wildcard
character instead of the project ID: * projects/-/serviceAccounts/
EMAIL_ADDRESS* `projects/-/serviceAccounts/`UNIQUE_ID
When possible,
avoid using the -
wildcard character, because it can cause response messages
to contain misleading error codes. For example, if you try to access the
service account projects/-/serviceAccounts/fake@example.com
, which does not
exist, the response contains an HTTP 403 Forbidden
error instead of a 404
Not Found
error.
Corresponds to the JSON property name
2227 2228 2229 |
# File 'lib/google/apis/iam_v1/classes.rb', line 2227 def name @name end |
#oauth2_client_id ⇒ String
Output only. The OAuth 2.0 client ID for the service account.
Corresponds to the JSON property oauth2ClientId
2232 2233 2234 |
# File 'lib/google/apis/iam_v1/classes.rb', line 2232 def oauth2_client_id @oauth2_client_id end |
#project_id ⇒ String
Output only. The ID of the project that owns the service account.
Corresponds to the JSON property projectId
2237 2238 2239 |
# File 'lib/google/apis/iam_v1/classes.rb', line 2237 def project_id @project_id end |
#unique_id ⇒ String
Output only. The unique, stable numeric ID for the service account. Each
service account retains its unique ID even if you delete the service account.
For example, if you delete a service account, then create a new service
account with the same name, the new service account has a different unique ID
than the deleted service account.
Corresponds to the JSON property uniqueId
2246 2247 2248 |
# File 'lib/google/apis/iam_v1/classes.rb', line 2246 def unique_id @unique_id end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
2253 2254 2255 2256 2257 2258 2259 2260 2261 2262 2263 |
# File 'lib/google/apis/iam_v1/classes.rb', line 2253 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) @email = args[:email] if args.key?(:email) @etag = args[:etag] if args.key?(:etag) @name = args[:name] if args.key?(:name) @oauth2_client_id = args[:oauth2_client_id] if args.key?(:oauth2_client_id) @project_id = args[:project_id] if args.key?(:project_id) @unique_id = args[:unique_id] if args.key?(:unique_id) end |