- Resource: WorkloadIdentityPool
- State
- Mode
- InlineCertificateIssuanceConfig
- KeyAlgorithm
- InlineTrustConfig
- Methods
Resource: WorkloadIdentityPool
Represents a collection of workload identities. You can define IAM policies to grant these identities access to Google Cloud resources.
| JSON representation |
|---|
{ "name": string, "displayName": string, "description": string, "state": enum ( |
| Fields | |
|---|---|
name |
Identifier. The resource name of the pool. |
displayName |
Optional. A display name for the pool. Cannot exceed 32 characters. |
description |
Optional. A description of the pool. Cannot exceed 256 characters. |
state |
Output only. The state of the pool. |
disabled |
Optional. Whether the pool is disabled. You cannot use a disabled pool to exchange tokens, or use existing tokens to access resources. If the pool is re-enabled, existing tokens grant access again. |
mode |
Immutable. The mode the pool is operating in. |
expireTime |
Output only. Time after which the workload identity pool will be permanently purged and cannot be recovered. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: |
| Certificate issuance configuration to use for generating X.509 certificates for the workloads. The following is a list of mutually exclusive fields. At most one of the fields will be set in a response: | |
inlineCertificateIssuanceConfig |
Optional. Defines the Certificate Authority (CA) pool resources and configurations required for issuance and rotation of mTLS workload certificates. |
| End of mutually exclusive fields. | |
| Trust configuration for establishing trust with other trust domains. The following is a list of mutually exclusive fields. At most one of the fields will be set in a response: | |
inlineTrustConfig |
Optional. Represents config to add additional trusted trust domains. |
| End of mutually exclusive fields. | |
State
The current state of the pool.
| Enums | |
|---|---|
STATE_UNSPECIFIED |
State unspecified. |
ACTIVE |
The pool is active, and may be used in Google Cloud policies. |
DELETED |
The pool is soft-deleted. Soft-deleted pools are permanently deleted after approximately 30 days. You can restore a soft-deleted pool using You cannot reuse the ID of a soft-deleted pool until it is permanently deleted. While a pool is deleted, you cannot use it to exchange tokens, or use existing tokens to access resources. If the pool is undeleted, existing tokens grant access again. |
Mode
Represents the mode for the pool.
| Enums | |
|---|---|
MODE_UNSPECIFIED |
State unspecified. New pools should not use this mode. Pools with an unspecified mode will operate as if they are in federation-only mode. |
FEDERATION_ONLY |
Federation-only mode. FEDERATION_ONLY mode pools can only be used for federating external workload identities into Google Cloud. Unless otherwise noted, no structure or format constraints are applied to workload identities in a FEDERATION_ONLY mode pool, and you cannot create any resources within the pool besides providers. |
TRUST_DOMAIN |
Trust-domain mode. TRUST_DOMAIN mode pools can be used to assign identities to Google Cloud workloads. Identities within a TRUST_DOMAIN mode pool share the same root of trust.
|
SYSTEM_TRUST_DOMAIN |
SYSTEM_TRUST_DOMAIN mode pools are managed by Google Cloud services. Neither
|
InlineCertificateIssuanceConfig
Represents configuration for generating mutual TLS (mTLS) certificates for the identities within this pool.
| JSON representation |
|---|
{
"caPools": {
string: string,
...
},
"useDefaultSharedCa": boolean,
"lifetime": string,
"keyAlgorithm": enum ( |
| Fields | |
|---|---|
caPools |
Optional. A required mapping of a Google Cloud region to the CA pool resource located in that region. The CA pool is used for certificate issuance, adhering to the following constraints:
An object containing a list of |
useDefaultSharedCa |
Optional. Determines whether the trust domain utilizes the Google Cloud-provisioned default CA. A default CA in the same region as the workload will be selected to issue the certificate. Enabling this will clear any existing NOTE: This field is mutually exclusive with |
lifetime |
Optional. Lifetime of the workload certificates issued by the CA pool. Must be between 24 hours and 30 days. If not specified, this will be defaulted to 24 hours. A duration in seconds with up to nine fractional digits, ending with ' |
keyAlgorithm |
Optional. Key algorithm to use when generating the key pair. This key pair will be used to create the certificate. If not specified, this will default to ECDSA_P256. |
rotationWindowPercentage |
Optional. Rotation window percentage, the percentage of remaining lifetime after which certificate rotation is initiated. Must be between 50 and 80. If no value is specified, rotation window percentage is defaulted to 50. |
KeyAlgorithm
Key generation algorithm types for X.509 certificates.
| Enums | |
|---|---|
KEY_ALGORITHM_UNSPECIFIED |
Unspecified key algorithm. Defaults to ECDSA_P256. |
RSA_2048 |
Specifies RSA with a 2048-bit modulus. |
RSA_3072 |
Specifies RSA with a 3072-bit modulus. |
RSA_4096 |
Specifies RSA with a 4096-bit modulus. |
ECDSA_P256 |
Specifies ECDSA with curve P256. |
ECDSA_P384 |
Specifies ECDSA with curve P384. |
InlineTrustConfig
Defines configuration for extending trust to additional trust domains. By establishing trust with another domain, the current domain will recognize and accept certificates issued by entities within the trusted domains. Note that a trust domain automatically trusts itself, eliminating the need for explicit configuration.
| JSON representation |
|---|
{
"additionalTrustBundles": {
string: {
object ( |
| Fields | |
|---|---|
additionalTrustBundles |
Optional. Maps specific trust domains (e.g., "example.com") to their corresponding Note that a trust domain automatically trusts itself and don't need to be specified here. If however, this WorkloadIdentityPool's trust domain contains any trust anchors in the additionalTrustBundles map, those trust anchors will be appended to the trust bundle automatically derived from your InlineCertificateIssuanceConfig's caPools. An object containing a list of |
Methods |
|
|---|---|
|
Add an AttestationRule on a WorkloadIdentityPoolManagedIdentity. |
|
Creates a new WorkloadIdentityPool. |
|
Deletes a WorkloadIdentityPool. |
|
Gets an individual WorkloadIdentityPool. |
|
Gets the IAM policy of a WorkloadIdentityPool. |
|
Lists all non-deleted WorkloadIdentityPools in a project. |
|
List all AttestationRule on a WorkloadIdentityPoolManagedIdentity. |
|
Updates an existing WorkloadIdentityPool. |
|
Remove an AttestationRule on a WorkloadIdentityPoolManagedIdentity. |
|
Set all AttestationRule on a WorkloadIdentityPoolManagedIdentity. |
|
Sets the IAM policies on a WorkloadIdentityPool |
|
Returns the caller's permissions on a WorkloadIdentityPool |
|
Undeletes a WorkloadIdentityPool, as long as it was deleted fewer than 30 days ago. |