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
IMessage<ServiceAccount>, IEquatable<ServiceAccount>, IDeepCloneable<ServiceAccount>, 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 |
Boolean |
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 |