public sealed class ServiceAccount : IMessage<ServiceAccount>, IEquatable<ServiceAccount>, IDeepCloneable<ServiceAccount>, IBufferMessage, IMessage
Reference documentation and code samples for the Identity and Access Management (IAM) v1 API class ServiceAccount.
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.
Implements
IMessageServiceAccount, IEquatableServiceAccount, IDeepCloneableServiceAccount, IBufferMessage, IMessageNamespace
Google.Cloud.Iam.Admin.V1Assembly
Google.Cloud.Iam.Admin.V1.dll
Constructors
ServiceAccount()
public ServiceAccount()
ServiceAccount(ServiceAccount)
public ServiceAccount(ServiceAccount other)
Parameter | |
---|---|
Name | Description |
other |
ServiceAccount |
Properties
Description
public string Description { get; set; }
Optional. A user-specified, human-readable description of the service account. The maximum length is 256 UTF-8 bytes.
Property Value | |
---|---|
Type | Description |
string |
Disabled
public bool Disabled { get; set; }
Output only. Whether the service account is disabled.
Property Value | |
---|---|
Type | Description |
bool |
DisplayName
public string DisplayName { get; set; }
Optional. A user-specified, human-readable name for the service account. The maximum length is 100 UTF-8 bytes.
Property Value | |
---|---|
Type | Description |
string |
public string Email { get; set; }
Output only. The email address of the service account.
Property Value | |
---|---|
Type | Description |
string |
Etag
[Obsolete]
public ByteString Etag { get; set; }
Deprecated. Do not use.
Property Value | |
---|---|
Type | Description |
ByteString |
Name
public string Name { get; set; }
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 get 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.
Property Value | |
---|---|
Type | Description |
string |
Oauth2ClientId
public string Oauth2ClientId { get; set; }
Output only. The OAuth 2.0 client ID for the service account.
Property Value | |
---|---|
Type | Description |
string |
ProjectId
public string ProjectId { get; set; }
Output only. The ID of the project that owns the service account.
Property Value | |
---|---|
Type | Description |
string |
ServiceAccountName
public ServiceAccountName ServiceAccountName { get; set; }
ServiceAccountName-typed view over the Name resource name property.
Property Value | |
---|---|
Type | Description |
ServiceAccountName |
UniqueId
public string UniqueId { get; set; }
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.
Property Value | |
---|---|
Type | Description |
string |