workload_identity_pool_provider_keys
Creates, updates, deletes, gets or lists a workload_identity_pool_provider_keys
resource.
Overview
Name | workload_identity_pool_provider_keys |
Type | Resource |
Id | google.iam.workload_identity_pool_provider_keys |
Fields
The following fields are returned by SELECT
queries:
- get
- list
Successful response
Name | Datatype | Description |
---|---|---|
name | string | Output only. The resource name of the key. |
expireTime | string (google-datetime) | Output only. Time after which the key will be permanently purged and cannot be recovered. Note that the key may get purged before this timestamp if the total limit of keys per provider is crossed. |
keyData | object | Immutable. Public half of the asymmetric key. (id: KeyData) |
state | string | Output only. The state of the key. |
use | string | Required. The purpose of the key. |
Successful response
Name | Datatype | Description |
---|---|---|
name | string | Output only. The resource name of the key. |
expireTime | string (google-datetime) | Output only. Time after which the key will be permanently purged and cannot be recovered. Note that the key may get purged before this timestamp if the total limit of keys per provider is crossed. |
keyData | object | Immutable. Public half of the asymmetric key. (id: KeyData) |
state | string | Output only. The state of the key. |
use | string | Required. The purpose of the key. |
Methods
The following methods are available for this resource:
Name | Accessible by | Required Params | Optional Params | Description |
---|---|---|---|---|
get | select | projectsId , locationsId , workloadIdentityPoolsId , providersId , keysId | Gets an individual WorkloadIdentityPoolProviderKey. | |
list | select | projectsId , locationsId , workloadIdentityPoolsId , providersId | pageSize , pageToken , showDeleted | Lists all non-deleted WorkloadIdentityPoolProviderKeys in a project. If show_deleted is set to true , then deleted pools are also listed. |
create | insert | projectsId , locationsId , workloadIdentityPoolsId , providersId | workloadIdentityPoolProviderKeyId | Create a new WorkloadIdentityPoolProviderKey in a WorkloadIdentityPoolProvider. |
delete | delete | projectsId , locationsId , workloadIdentityPoolsId , providersId , keysId | Deletes an WorkloadIdentityPoolProviderKey. You can undelete a key for 30 days. After 30 days, deletion is permanent. | |
undelete | exec | projectsId , locationsId , workloadIdentityPoolsId , providersId , keysId | Undeletes an WorkloadIdentityPoolProviderKey, as long as it was deleted fewer than 30 days ago. |
Parameters
Parameters can be passed in the WHERE
clause of a query. Check the Methods section to see which parameters are required or optional for each operation.
Name | Datatype | Description |
---|---|---|
keysId | string | |
locationsId | string | |
projectsId | string | |
providersId | string | |
workloadIdentityPoolsId | string | |
pageSize | integer (int32) | |
pageToken | string | |
showDeleted | boolean | |
workloadIdentityPoolProviderKeyId | string |
SELECT
examples
- get
- list
Gets an individual WorkloadIdentityPoolProviderKey.
SELECT
name,
expireTime,
keyData,
state,
use
FROM google.iam.workload_identity_pool_provider_keys
WHERE projectsId = '{{ projectsId }}' -- required
AND locationsId = '{{ locationsId }}' -- required
AND workloadIdentityPoolsId = '{{ workloadIdentityPoolsId }}' -- required
AND providersId = '{{ providersId }}' -- required
AND keysId = '{{ keysId }}' -- required;
Lists all non-deleted WorkloadIdentityPoolProviderKeys in a project. If show_deleted is set to true
, then deleted pools are also listed.
SELECT
name,
expireTime,
keyData,
state,
use
FROM google.iam.workload_identity_pool_provider_keys
WHERE projectsId = '{{ projectsId }}' -- required
AND locationsId = '{{ locationsId }}' -- required
AND workloadIdentityPoolsId = '{{ workloadIdentityPoolsId }}' -- required
AND providersId = '{{ providersId }}' -- required
AND pageSize = '{{ pageSize }}'
AND pageToken = '{{ pageToken }}'
AND showDeleted = '{{ showDeleted }}';
INSERT
examples
- create
- Manifest
Create a new WorkloadIdentityPoolProviderKey in a WorkloadIdentityPoolProvider.
INSERT INTO google.iam.workload_identity_pool_provider_keys (
data__keyData,
data__use,
projectsId,
locationsId,
workloadIdentityPoolsId,
providersId,
workloadIdentityPoolProviderKeyId
)
SELECT
'{{ keyData }}',
'{{ use }}',
'{{ projectsId }}',
'{{ locationsId }}',
'{{ workloadIdentityPoolsId }}',
'{{ providersId }}',
'{{ workloadIdentityPoolProviderKeyId }}'
RETURNING
name,
done,
error,
metadata,
response
;
# Description fields are for documentation purposes
- name: workload_identity_pool_provider_keys
props:
- name: projectsId
value: string
description: Required parameter for the workload_identity_pool_provider_keys resource.
- name: locationsId
value: string
description: Required parameter for the workload_identity_pool_provider_keys resource.
- name: workloadIdentityPoolsId
value: string
description: Required parameter for the workload_identity_pool_provider_keys resource.
- name: providersId
value: string
description: Required parameter for the workload_identity_pool_provider_keys resource.
- name: keyData
value: object
description: >
Immutable. Public half of the asymmetric key.
- name: use
value: string
description: >
Required. The purpose of the key.
valid_values: ['KEY_USE_UNSPECIFIED', 'ENCRYPTION']
- name: workloadIdentityPoolProviderKeyId
value: string
DELETE
examples
- delete
Deletes an WorkloadIdentityPoolProviderKey. You can undelete a key for 30 days. After 30 days, deletion is permanent.
DELETE FROM google.iam.workload_identity_pool_provider_keys
WHERE projectsId = '{{ projectsId }}' --required
AND locationsId = '{{ locationsId }}' --required
AND workloadIdentityPoolsId = '{{ workloadIdentityPoolsId }}' --required
AND providersId = '{{ providersId }}' --required
AND keysId = '{{ keysId }}' --required;
Lifecycle Methods
- undelete
Undeletes an WorkloadIdentityPoolProviderKey, as long as it was deleted fewer than 30 days ago.
EXEC google.iam.workload_identity_pool_provider_keys.undelete
@projectsId='{{ projectsId }}' --required,
@locationsId='{{ locationsId }}' --required,
@workloadIdentityPoolsId='{{ workloadIdentityPoolsId }}' --required,
@providersId='{{ providersId }}' --required,
@keysId='{{ keysId }}' --required;