pulumi-gcp 8.32.0__py3-none-any.whl → 8.32.0a1747459264__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- pulumi_gcp/__init__.py +0 -88
- pulumi_gcp/accesscontextmanager/authorized_orgs_desc.py +2 -2
- pulumi_gcp/apigateway/api_config_iam_binding.py +0 -13
- pulumi_gcp/apigateway/api_config_iam_member.py +0 -13
- pulumi_gcp/apigateway/api_config_iam_policy.py +0 -13
- pulumi_gcp/apigateway/api_iam_binding.py +0 -13
- pulumi_gcp/apigateway/api_iam_member.py +0 -13
- pulumi_gcp/apigateway/api_iam_policy.py +0 -13
- pulumi_gcp/apigateway/gateway_iam_binding.py +0 -13
- pulumi_gcp/apigateway/gateway_iam_member.py +0 -13
- pulumi_gcp/apigateway/gateway_iam_policy.py +0 -13
- pulumi_gcp/apigateway/get_api_config_iam_policy.py +0 -2
- pulumi_gcp/apigateway/get_api_iam_policy.py +0 -2
- pulumi_gcp/apigateway/get_gateway_iam_policy.py +0 -2
- pulumi_gcp/apigee/environment_iam_binding.py +0 -27
- pulumi_gcp/apigee/environment_iam_member.py +0 -27
- pulumi_gcp/apigee/environment_iam_policy.py +0 -27
- pulumi_gcp/apigee/get_environment_iam_policy.py +0 -6
- pulumi_gcp/beyondcorp/__init__.py +0 -1
- pulumi_gcp/beyondcorp/application.py +4 -8
- pulumi_gcp/beyondcorp/application_iam_binding.py +0 -26
- pulumi_gcp/beyondcorp/application_iam_member.py +0 -26
- pulumi_gcp/beyondcorp/application_iam_policy.py +0 -26
- pulumi_gcp/beyondcorp/get_application_iam_policy.py +0 -4
- pulumi_gcp/beyondcorp/get_security_gateway_iam_policy.py +0 -2
- pulumi_gcp/beyondcorp/outputs.py +0 -45
- pulumi_gcp/beyondcorp/security_gateway_iam_binding.py +0 -13
- pulumi_gcp/beyondcorp/security_gateway_iam_member.py +0 -13
- pulumi_gcp/beyondcorp/security_gateway_iam_policy.py +0 -13
- pulumi_gcp/bigquery/__init__.py +0 -1
- pulumi_gcp/bigquery/connection_iam_binding.py +11 -4
- pulumi_gcp/bigquery/connection_iam_member.py +11 -4
- pulumi_gcp/bigquery/connection_iam_policy.py +11 -4
- pulumi_gcp/bigquery/data_transfer_config.py +2 -2
- pulumi_gcp/bigquery/get_connection_iam_policy.py +4 -2
- pulumi_gcp/bigquery/get_table_iam_policy.py +0 -4
- pulumi_gcp/bigquery/iam_binding.py +0 -26
- pulumi_gcp/bigquery/iam_member.py +0 -26
- pulumi_gcp/bigquery/iam_policy.py +0 -26
- pulumi_gcp/bigqueryanalyticshub/data_exchange_iam_binding.py +7 -7
- pulumi_gcp/bigqueryanalyticshub/data_exchange_iam_member.py +7 -7
- pulumi_gcp/bigqueryanalyticshub/data_exchange_iam_policy.py +7 -7
- pulumi_gcp/bigqueryanalyticshub/get_data_exchange_iam_policy.py +2 -2
- pulumi_gcp/bigqueryanalyticshub/get_listing_iam_policy.py +2 -2
- pulumi_gcp/bigqueryanalyticshub/listing_iam_binding.py +7 -7
- pulumi_gcp/bigqueryanalyticshub/listing_iam_member.py +7 -7
- pulumi_gcp/bigqueryanalyticshub/listing_iam_policy.py +7 -7
- pulumi_gcp/bigqueryanalyticshub/listing_subscription.py +6 -6
- pulumi_gcp/bigquerydatapolicy/data_policy_iam_binding.py +0 -13
- pulumi_gcp/bigquerydatapolicy/data_policy_iam_member.py +0 -13
- pulumi_gcp/bigquerydatapolicy/data_policy_iam_policy.py +0 -13
- pulumi_gcp/bigquerydatapolicy/get_iam_policy.py +0 -2
- pulumi_gcp/bigtable/logical_view.py +0 -49
- pulumi_gcp/cloudbuild/trigger.py +2 -2
- pulumi_gcp/clouddeploy/get_delivery_pipeline_iam_policy.py +0 -6
- pulumi_gcp/clouddeploy/get_target_iam_policy.py +0 -6
- pulumi_gcp/colab/schedule.py +2 -2
- pulumi_gcp/compute/_inputs.py +0 -126
- pulumi_gcp/compute/backend_service.py +51 -259
- pulumi_gcp/compute/get_backend_service.py +1 -23
- pulumi_gcp/compute/get_global_forwarding_rule.py +1 -23
- pulumi_gcp/compute/get_instance_template.py +1 -12
- pulumi_gcp/compute/get_network_endpoint_group.py +1 -12
- pulumi_gcp/compute/global_forwarding_rule.py +0 -199
- pulumi_gcp/compute/instance_template.py +0 -28
- pulumi_gcp/compute/network_endpoint_group.py +0 -28
- pulumi_gcp/compute/outputs.py +0 -110
- pulumi_gcp/compute/region_backend_service.py +51 -58
- pulumi_gcp/container/cluster.py +0 -47
- pulumi_gcp/container/get_cluster.py +1 -12
- pulumi_gcp/datacatalog/entry_group_iam_binding.py +0 -34
- pulumi_gcp/datacatalog/entry_group_iam_member.py +0 -34
- pulumi_gcp/datacatalog/entry_group_iam_policy.py +0 -34
- pulumi_gcp/datacatalog/get_entry_group_iam_policy.py +0 -8
- pulumi_gcp/datacatalog/get_tag_template_iam_policy.py +0 -8
- pulumi_gcp/datacatalog/get_taxonomy_iam_policy.py +0 -8
- pulumi_gcp/datacatalog/tag_template_iam_binding.py +0 -34
- pulumi_gcp/datacatalog/tag_template_iam_member.py +0 -34
- pulumi_gcp/datacatalog/tag_template_iam_policy.py +0 -34
- pulumi_gcp/datacatalog/taxonomy_iam_binding.py +0 -34
- pulumi_gcp/datacatalog/taxonomy_iam_member.py +0 -34
- pulumi_gcp/datacatalog/taxonomy_iam_policy.py +0 -34
- pulumi_gcp/dataplex/__init__.py +0 -5
- pulumi_gcp/dataplex/_inputs.py +0 -98
- pulumi_gcp/dataplex/aspect_type_iam_binding.py +0 -13
- pulumi_gcp/dataplex/aspect_type_iam_member.py +0 -13
- pulumi_gcp/dataplex/aspect_type_iam_policy.py +0 -13
- pulumi_gcp/dataplex/asset_iam_binding.py +0 -53
- pulumi_gcp/dataplex/asset_iam_member.py +0 -53
- pulumi_gcp/dataplex/asset_iam_policy.py +0 -53
- pulumi_gcp/dataplex/datascan_iam_binding.py +0 -13
- pulumi_gcp/dataplex/datascan_iam_member.py +0 -13
- pulumi_gcp/dataplex/datascan_iam_policy.py +0 -13
- pulumi_gcp/dataplex/entry_group_iam_binding.py +0 -13
- pulumi_gcp/dataplex/entry_group_iam_member.py +0 -13
- pulumi_gcp/dataplex/entry_group_iam_policy.py +0 -13
- pulumi_gcp/dataplex/entry_type_iam_binding.py +0 -13
- pulumi_gcp/dataplex/entry_type_iam_member.py +0 -13
- pulumi_gcp/dataplex/entry_type_iam_policy.py +0 -13
- pulumi_gcp/dataplex/get_aspect_type_iam_policy.py +0 -2
- pulumi_gcp/dataplex/get_asset_iam_policy.py +0 -10
- pulumi_gcp/dataplex/get_datascan_iam_policy.py +0 -2
- pulumi_gcp/dataplex/get_entry_group_iam_policy.py +0 -2
- pulumi_gcp/dataplex/get_entry_type_iam_policy.py +0 -2
- pulumi_gcp/dataplex/get_lake_iam_policy.py +0 -6
- pulumi_gcp/dataplex/get_task_iam_policy.py +0 -2
- pulumi_gcp/dataplex/get_zone_iam_policy.py +0 -8
- pulumi_gcp/dataplex/lake_iam_binding.py +0 -27
- pulumi_gcp/dataplex/lake_iam_member.py +0 -27
- pulumi_gcp/dataplex/lake_iam_policy.py +0 -27
- pulumi_gcp/dataplex/outputs.py +0 -56
- pulumi_gcp/dataplex/task_iam_binding.py +0 -13
- pulumi_gcp/dataplex/task_iam_member.py +0 -13
- pulumi_gcp/dataplex/task_iam_policy.py +0 -13
- pulumi_gcp/dataplex/zone_iam_binding.py +0 -40
- pulumi_gcp/dataplex/zone_iam_member.py +0 -40
- pulumi_gcp/dataplex/zone_iam_policy.py +0 -40
- pulumi_gcp/dataproc/autoscaling_policy_iam_binding.py +25 -4
- pulumi_gcp/dataproc/autoscaling_policy_iam_member.py +25 -4
- pulumi_gcp/dataproc/autoscaling_policy_iam_policy.py +25 -4
- pulumi_gcp/dataproc/get_autoscaling_policy_iam_policy.py +8 -2
- pulumi_gcp/dataproc/get_metastore_database_iam_policy.py +0 -8
- pulumi_gcp/dataproc/get_metastore_federation_iam_policy.py +0 -2
- pulumi_gcp/dataproc/get_metastore_service_iam_policy.py +0 -2
- pulumi_gcp/dataproc/get_metastore_table_iam_policy.py +0 -10
- pulumi_gcp/dataproc/metastore_database_iam_binding.py +0 -40
- pulumi_gcp/dataproc/metastore_database_iam_member.py +0 -40
- pulumi_gcp/dataproc/metastore_database_iam_policy.py +0 -40
- pulumi_gcp/dataproc/metastore_federation_iam_binding.py +0 -13
- pulumi_gcp/dataproc/metastore_federation_iam_member.py +0 -13
- pulumi_gcp/dataproc/metastore_federation_iam_policy.py +0 -13
- pulumi_gcp/dataproc/metastore_service_iam_binding.py +0 -13
- pulumi_gcp/dataproc/metastore_service_iam_member.py +0 -13
- pulumi_gcp/dataproc/metastore_service_iam_policy.py +0 -13
- pulumi_gcp/dataproc/metastore_table_iam_binding.py +0 -53
- pulumi_gcp/dataproc/metastore_table_iam_member.py +0 -53
- pulumi_gcp/dataproc/metastore_table_iam_policy.py +0 -53
- pulumi_gcp/diagflow/_inputs.py +0 -56
- pulumi_gcp/diagflow/cx_agent.py +0 -60
- pulumi_gcp/diagflow/cx_flow.py +0 -2
- pulumi_gcp/diagflow/entity_type.py +2 -2
- pulumi_gcp/diagflow/outputs.py +0 -35
- pulumi_gcp/edgecontainer/node_pool.py +2 -2
- pulumi_gcp/endpoints/consumers_iam_binding.py +0 -26
- pulumi_gcp/endpoints/consumers_iam_member.py +0 -26
- pulumi_gcp/endpoints/consumers_iam_policy.py +0 -26
- pulumi_gcp/endpoints/get_service_consumers_iam_policy.py +0 -8
- pulumi_gcp/endpoints/get_service_iam_policy.py +0 -6
- pulumi_gcp/endpoints/service_iam_binding.py +0 -13
- pulumi_gcp/endpoints/service_iam_member.py +0 -13
- pulumi_gcp/endpoints/service_iam_policy.py +0 -13
- pulumi_gcp/firebase/__init__.py +0 -3
- pulumi_gcp/firebase/_inputs.py +0 -1527
- pulumi_gcp/firebase/app_hosting_backend.py +0 -104
- pulumi_gcp/firebase/extensions_instance.py +4 -4
- pulumi_gcp/firebase/outputs.py +0 -1075
- pulumi_gcp/firestore/database.py +0 -9
- pulumi_gcp/gemini/get_repository_group_iam_policy.py +0 -4
- pulumi_gcp/gemini/repository_group_iam_binding.py +0 -26
- pulumi_gcp/gemini/repository_group_iam_member.py +0 -26
- pulumi_gcp/gemini/repository_group_iam_policy.py +0 -26
- pulumi_gcp/gkebackup/backup_channel.py +9 -9
- pulumi_gcp/gkebackup/restore_channel.py +9 -9
- pulumi_gcp/gkehub/get_membership_iam_policy.py +0 -2
- pulumi_gcp/gkehub/get_scope_iam_policy.py +0 -2
- pulumi_gcp/gkehub/membership_iam_binding.py +0 -13
- pulumi_gcp/gkehub/membership_iam_member.py +0 -13
- pulumi_gcp/gkehub/membership_iam_policy.py +0 -13
- pulumi_gcp/gkehub/scope_iam_binding.py +0 -13
- pulumi_gcp/gkehub/scope_iam_member.py +0 -13
- pulumi_gcp/gkehub/scope_iam_policy.py +0 -13
- pulumi_gcp/iam/__init__.py +0 -4
- pulumi_gcp/iam/_inputs.py +0 -432
- pulumi_gcp/iam/get_workload_identity_pool.py +1 -35
- pulumi_gcp/iam/oauth_client_credential.py +0 -6
- pulumi_gcp/iam/outputs.py +0 -510
- pulumi_gcp/iam/workload_identity_pool.py +24 -446
- pulumi_gcp/iap/app_engine_service_iam_binding.py +14 -14
- pulumi_gcp/iap/app_engine_service_iam_member.py +14 -14
- pulumi_gcp/iap/app_engine_service_iam_policy.py +14 -14
- pulumi_gcp/iap/app_engine_version_iam_binding.py +14 -14
- pulumi_gcp/iap/app_engine_version_iam_member.py +14 -14
- pulumi_gcp/iap/app_engine_version_iam_policy.py +14 -14
- pulumi_gcp/iap/get_app_engine_service_iam_policy.py +4 -4
- pulumi_gcp/iap/get_app_engine_version_iam_policy.py +4 -4
- pulumi_gcp/iap/get_tunnel_dest_group_iam_policy.py +0 -2
- pulumi_gcp/iap/get_tunnel_instance_iam_policy.py +0 -6
- pulumi_gcp/iap/get_web_region_backend_service_iam_policy.py +0 -6
- pulumi_gcp/iap/get_web_type_app_engine_iam_policy.py +2 -2
- pulumi_gcp/iap/tunnel_dest_group_iam_binding.py +0 -13
- pulumi_gcp/iap/tunnel_dest_group_iam_member.py +0 -13
- pulumi_gcp/iap/tunnel_dest_group_iam_policy.py +0 -13
- pulumi_gcp/iap/tunnel_instance_iam_binding.py +0 -27
- pulumi_gcp/iap/tunnel_instance_iam_member.py +0 -27
- pulumi_gcp/iap/tunnel_instance_iam_policy.py +0 -27
- pulumi_gcp/iap/web_region_backend_service_iam_binding.py +0 -27
- pulumi_gcp/iap/web_region_backend_service_iam_member.py +0 -27
- pulumi_gcp/iap/web_region_backend_service_iam_policy.py +0 -27
- pulumi_gcp/iap/web_type_app_enging_iam_binding.py +7 -7
- pulumi_gcp/iap/web_type_app_enging_iam_member.py +7 -7
- pulumi_gcp/iap/web_type_app_enging_iam_policy.py +7 -7
- pulumi_gcp/lustre/__init__.py +0 -1
- pulumi_gcp/lustre/instance.py +0 -12
- pulumi_gcp/netapp/backup.py +2 -2
- pulumi_gcp/networksecurity/intercept_deployment.py +0 -10
- pulumi_gcp/networksecurity/intercept_deployment_group.py +0 -8
- pulumi_gcp/networksecurity/intercept_endpoint_group.py +0 -12
- pulumi_gcp/networksecurity/intercept_endpoint_group_association.py +0 -16
- pulumi_gcp/pulumi-plugin.json +1 -1
- pulumi_gcp/secretmanager/get_regional_secret_iam_policy.py +0 -2
- pulumi_gcp/secretmanager/get_secret_iam_policy.py +0 -2
- pulumi_gcp/secretmanager/regional_secret_iam_binding.py +0 -13
- pulumi_gcp/secretmanager/regional_secret_iam_member.py +0 -13
- pulumi_gcp/secretmanager/regional_secret_iam_policy.py +0 -13
- pulumi_gcp/secretmanager/secret_iam_binding.py +0 -13
- pulumi_gcp/secretmanager/secret_iam_member.py +0 -13
- pulumi_gcp/secretmanager/secret_iam_policy.py +0 -13
- pulumi_gcp/securesourcemanager/get_instance_iam_policy.py +4 -2
- pulumi_gcp/securesourcemanager/get_repository_iam_policy.py +4 -2
- pulumi_gcp/securesourcemanager/repository_iam_binding.py +11 -4
- pulumi_gcp/securesourcemanager/repository_iam_member.py +11 -4
- pulumi_gcp/securesourcemanager/repository_iam_policy.py +11 -4
- pulumi_gcp/securitycenter/v2_organization_scc_big_query_export.py +2 -2
- pulumi_gcp/securitycenter/v2_organization_scc_big_query_exports.py +2 -2
- pulumi_gcp/vertex/ai_feature_online_store_featureview_iam_binding.py +0 -13
- pulumi_gcp/vertex/ai_feature_online_store_featureview_iam_member.py +0 -13
- pulumi_gcp/vertex/ai_feature_online_store_featureview_iam_policy.py +0 -13
- pulumi_gcp/vertex/get_ai_feature_online_store_featureview_iam_policy.py +0 -2
- pulumi_gcp/vmwareengine/external_address.py +4 -4
- pulumi_gcp/workstations/get_workstation_config_iam_policy.py +0 -6
- pulumi_gcp/workstations/get_workstation_iam_policy.py +0 -10
- pulumi_gcp/workstations/workstation_config_iam_binding.py +0 -33
- pulumi_gcp/workstations/workstation_config_iam_member.py +0 -33
- pulumi_gcp/workstations/workstation_config_iam_policy.py +0 -33
- pulumi_gcp/workstations/workstation_iam_binding.py +0 -53
- pulumi_gcp/workstations/workstation_iam_member.py +0 -53
- pulumi_gcp/workstations/workstation_iam_policy.py +0 -53
- {pulumi_gcp-8.32.0.dist-info → pulumi_gcp-8.32.0a1747459264.dist-info}/METADATA +1 -1
- {pulumi_gcp-8.32.0.dist-info → pulumi_gcp-8.32.0a1747459264.dist-info}/RECORD +241 -256
- {pulumi_gcp-8.32.0.dist-info → pulumi_gcp-8.32.0a1747459264.dist-info}/WHEEL +1 -1
- pulumi_gcp/beyondcorp/get_security_gateway.py +0 -222
- pulumi_gcp/bigquery/row_access_policy.py +0 -787
- pulumi_gcp/dataplex/get_glossary_iam_policy.py +0 -185
- pulumi_gcp/dataplex/glossary.py +0 -772
- pulumi_gcp/dataplex/glossary_iam_binding.py +0 -837
- pulumi_gcp/dataplex/glossary_iam_member.py +0 -837
- pulumi_gcp/dataplex/glossary_iam_policy.py +0 -676
- pulumi_gcp/firebase/app_hosting_default_domain.py +0 -721
- pulumi_gcp/firebase/app_hosting_domain.py +0 -796
- pulumi_gcp/firebase/app_hosting_traffic.py +0 -914
- pulumi_gcp/iam/get_workload_identity_pool_iam_policy.py +0 -156
- pulumi_gcp/iam/workload_identity_pool_iam_binding.py +0 -539
- pulumi_gcp/iam/workload_identity_pool_iam_member.py +0 -539
- pulumi_gcp/iam/workload_identity_pool_iam_policy.py +0 -358
- pulumi_gcp/lustre/get_instance.py +0 -280
- {pulumi_gcp-8.32.0.dist-info → pulumi_gcp-8.32.0a1747459264.dist-info}/top_level.txt +0 -0
@@ -14,8 +14,6 @@ if sys.version_info >= (3, 11):
|
|
14
14
|
else:
|
15
15
|
from typing_extensions import NotRequired, TypedDict, TypeAlias
|
16
16
|
from .. import _utilities
|
17
|
-
from . import outputs
|
18
|
-
from ._inputs import *
|
19
17
|
|
20
18
|
__all__ = ['WorkloadIdentityPoolArgs', 'WorkloadIdentityPool']
|
21
19
|
|
@@ -26,9 +24,6 @@ class WorkloadIdentityPoolArgs:
|
|
26
24
|
description: Optional[pulumi.Input[builtins.str]] = None,
|
27
25
|
disabled: Optional[pulumi.Input[builtins.bool]] = None,
|
28
26
|
display_name: Optional[pulumi.Input[builtins.str]] = None,
|
29
|
-
inline_certificate_issuance_config: Optional[pulumi.Input['WorkloadIdentityPoolInlineCertificateIssuanceConfigArgs']] = None,
|
30
|
-
inline_trust_config: Optional[pulumi.Input['WorkloadIdentityPoolInlineTrustConfigArgs']] = None,
|
31
|
-
mode: Optional[pulumi.Input[builtins.str]] = None,
|
32
27
|
project: Optional[pulumi.Input[builtins.str]] = None):
|
33
28
|
"""
|
34
29
|
The set of arguments for constructing a WorkloadIdentityPool resource.
|
@@ -43,34 +38,6 @@ class WorkloadIdentityPoolArgs:
|
|
43
38
|
existing tokens to access resources. If the pool is re-enabled, existing tokens grant
|
44
39
|
access again.
|
45
40
|
:param pulumi.Input[builtins.str] display_name: A display name for the pool. Cannot exceed 32 characters.
|
46
|
-
:param pulumi.Input['WorkloadIdentityPoolInlineCertificateIssuanceConfigArgs'] inline_certificate_issuance_config: Represents configuration for generating mutual TLS (mTLS) certificates for the identities
|
47
|
-
within this pool. Defines the Certificate Authority (CA) pool resources and configurations
|
48
|
-
required for issuance and rotation of mTLS workload certificates.
|
49
|
-
Structure is documented below.
|
50
|
-
:param pulumi.Input['WorkloadIdentityPoolInlineTrustConfigArgs'] inline_trust_config: Represents config to add additional trusted trust domains. Defines configuration for extending
|
51
|
-
trust to additional trust domains. By establishing trust with another domain, the current
|
52
|
-
domain will recognize and accept certificates issued by entities within the trusted domains.
|
53
|
-
Note that a trust domain automatically trusts itself, eliminating the need for explicit
|
54
|
-
configuration.
|
55
|
-
Structure is documented below.
|
56
|
-
:param pulumi.Input[builtins.str] mode: The mode for the pool is operating in. Pools with an unspecified mode will operate as if they
|
57
|
-
are in `FEDERATION_ONLY` mode.
|
58
|
-
|
59
|
-
> **Note** This field cannot be changed after the Workload Identity Pool is created. While
|
60
|
-
`pulumi preview` may show an update if you change this field's value, `pulumi up`
|
61
|
-
**will fail with an API error** (such as `Error 400: Attempted to update an immutable field.`).
|
62
|
-
To specify a different `mode`, please create a new Workload Identity Pool resource.
|
63
|
-
* `FEDERATION_ONLY`: Pools can only be used for federating external workload identities into
|
64
|
-
Google Cloud. Unless otherwise noted, no structure or format constraints are applied to
|
65
|
-
workload identities in a `FEDERATION_ONLY` mode pool, and you may not create any resources
|
66
|
-
within the pool besides providers.
|
67
|
-
* `TRUST_DOMAIN`: Pools can be used to assign identities to Google Cloud workloads. All
|
68
|
-
identities within a `TRUST_DOMAIN` mode pool must consist of a single namespace and individual
|
69
|
-
workload identifier. The subject identifier for all identities must conform to the following
|
70
|
-
format: `ns/<namespace>/sa/<workload_identifier>`.
|
71
|
-
`iam.WorkloadIdentityPoolProvider`s cannot be created within `TRUST_DOMAIN`
|
72
|
-
mode pools.
|
73
|
-
Possible values are: `FEDERATION_ONLY`, `TRUST_DOMAIN`.
|
74
41
|
:param pulumi.Input[builtins.str] project: The ID of the project in which the resource belongs.
|
75
42
|
If it is not provided, the provider project is used.
|
76
43
|
"""
|
@@ -81,12 +48,6 @@ class WorkloadIdentityPoolArgs:
|
|
81
48
|
pulumi.set(__self__, "disabled", disabled)
|
82
49
|
if display_name is not None:
|
83
50
|
pulumi.set(__self__, "display_name", display_name)
|
84
|
-
if inline_certificate_issuance_config is not None:
|
85
|
-
pulumi.set(__self__, "inline_certificate_issuance_config", inline_certificate_issuance_config)
|
86
|
-
if inline_trust_config is not None:
|
87
|
-
pulumi.set(__self__, "inline_trust_config", inline_trust_config)
|
88
|
-
if mode is not None:
|
89
|
-
pulumi.set(__self__, "mode", mode)
|
90
51
|
if project is not None:
|
91
52
|
pulumi.set(__self__, "project", project)
|
92
53
|
|
@@ -145,67 +106,6 @@ class WorkloadIdentityPoolArgs:
|
|
145
106
|
def display_name(self, value: Optional[pulumi.Input[builtins.str]]):
|
146
107
|
pulumi.set(self, "display_name", value)
|
147
108
|
|
148
|
-
@property
|
149
|
-
@pulumi.getter(name="inlineCertificateIssuanceConfig")
|
150
|
-
def inline_certificate_issuance_config(self) -> Optional[pulumi.Input['WorkloadIdentityPoolInlineCertificateIssuanceConfigArgs']]:
|
151
|
-
"""
|
152
|
-
Represents configuration for generating mutual TLS (mTLS) certificates for the identities
|
153
|
-
within this pool. Defines the Certificate Authority (CA) pool resources and configurations
|
154
|
-
required for issuance and rotation of mTLS workload certificates.
|
155
|
-
Structure is documented below.
|
156
|
-
"""
|
157
|
-
return pulumi.get(self, "inline_certificate_issuance_config")
|
158
|
-
|
159
|
-
@inline_certificate_issuance_config.setter
|
160
|
-
def inline_certificate_issuance_config(self, value: Optional[pulumi.Input['WorkloadIdentityPoolInlineCertificateIssuanceConfigArgs']]):
|
161
|
-
pulumi.set(self, "inline_certificate_issuance_config", value)
|
162
|
-
|
163
|
-
@property
|
164
|
-
@pulumi.getter(name="inlineTrustConfig")
|
165
|
-
def inline_trust_config(self) -> Optional[pulumi.Input['WorkloadIdentityPoolInlineTrustConfigArgs']]:
|
166
|
-
"""
|
167
|
-
Represents config to add additional trusted trust domains. Defines configuration for extending
|
168
|
-
trust to additional trust domains. By establishing trust with another domain, the current
|
169
|
-
domain will recognize and accept certificates issued by entities within the trusted domains.
|
170
|
-
Note that a trust domain automatically trusts itself, eliminating the need for explicit
|
171
|
-
configuration.
|
172
|
-
Structure is documented below.
|
173
|
-
"""
|
174
|
-
return pulumi.get(self, "inline_trust_config")
|
175
|
-
|
176
|
-
@inline_trust_config.setter
|
177
|
-
def inline_trust_config(self, value: Optional[pulumi.Input['WorkloadIdentityPoolInlineTrustConfigArgs']]):
|
178
|
-
pulumi.set(self, "inline_trust_config", value)
|
179
|
-
|
180
|
-
@property
|
181
|
-
@pulumi.getter
|
182
|
-
def mode(self) -> Optional[pulumi.Input[builtins.str]]:
|
183
|
-
"""
|
184
|
-
The mode for the pool is operating in. Pools with an unspecified mode will operate as if they
|
185
|
-
are in `FEDERATION_ONLY` mode.
|
186
|
-
|
187
|
-
> **Note** This field cannot be changed after the Workload Identity Pool is created. While
|
188
|
-
`pulumi preview` may show an update if you change this field's value, `pulumi up`
|
189
|
-
**will fail with an API error** (such as `Error 400: Attempted to update an immutable field.`).
|
190
|
-
To specify a different `mode`, please create a new Workload Identity Pool resource.
|
191
|
-
* `FEDERATION_ONLY`: Pools can only be used for federating external workload identities into
|
192
|
-
Google Cloud. Unless otherwise noted, no structure or format constraints are applied to
|
193
|
-
workload identities in a `FEDERATION_ONLY` mode pool, and you may not create any resources
|
194
|
-
within the pool besides providers.
|
195
|
-
* `TRUST_DOMAIN`: Pools can be used to assign identities to Google Cloud workloads. All
|
196
|
-
identities within a `TRUST_DOMAIN` mode pool must consist of a single namespace and individual
|
197
|
-
workload identifier. The subject identifier for all identities must conform to the following
|
198
|
-
format: `ns/<namespace>/sa/<workload_identifier>`.
|
199
|
-
`iam.WorkloadIdentityPoolProvider`s cannot be created within `TRUST_DOMAIN`
|
200
|
-
mode pools.
|
201
|
-
Possible values are: `FEDERATION_ONLY`, `TRUST_DOMAIN`.
|
202
|
-
"""
|
203
|
-
return pulumi.get(self, "mode")
|
204
|
-
|
205
|
-
@mode.setter
|
206
|
-
def mode(self, value: Optional[pulumi.Input[builtins.str]]):
|
207
|
-
pulumi.set(self, "mode", value)
|
208
|
-
|
209
109
|
@property
|
210
110
|
@pulumi.getter
|
211
111
|
def project(self) -> Optional[pulumi.Input[builtins.str]]:
|
@@ -226,9 +126,6 @@ class _WorkloadIdentityPoolState:
|
|
226
126
|
description: Optional[pulumi.Input[builtins.str]] = None,
|
227
127
|
disabled: Optional[pulumi.Input[builtins.bool]] = None,
|
228
128
|
display_name: Optional[pulumi.Input[builtins.str]] = None,
|
229
|
-
inline_certificate_issuance_config: Optional[pulumi.Input['WorkloadIdentityPoolInlineCertificateIssuanceConfigArgs']] = None,
|
230
|
-
inline_trust_config: Optional[pulumi.Input['WorkloadIdentityPoolInlineTrustConfigArgs']] = None,
|
231
|
-
mode: Optional[pulumi.Input[builtins.str]] = None,
|
232
129
|
name: Optional[pulumi.Input[builtins.str]] = None,
|
233
130
|
project: Optional[pulumi.Input[builtins.str]] = None,
|
234
131
|
state: Optional[pulumi.Input[builtins.str]] = None,
|
@@ -240,44 +137,16 @@ class _WorkloadIdentityPoolState:
|
|
240
137
|
existing tokens to access resources. If the pool is re-enabled, existing tokens grant
|
241
138
|
access again.
|
242
139
|
:param pulumi.Input[builtins.str] display_name: A display name for the pool. Cannot exceed 32 characters.
|
243
|
-
:param pulumi.Input['WorkloadIdentityPoolInlineCertificateIssuanceConfigArgs'] inline_certificate_issuance_config: Represents configuration for generating mutual TLS (mTLS) certificates for the identities
|
244
|
-
within this pool. Defines the Certificate Authority (CA) pool resources and configurations
|
245
|
-
required for issuance and rotation of mTLS workload certificates.
|
246
|
-
Structure is documented below.
|
247
|
-
:param pulumi.Input['WorkloadIdentityPoolInlineTrustConfigArgs'] inline_trust_config: Represents config to add additional trusted trust domains. Defines configuration for extending
|
248
|
-
trust to additional trust domains. By establishing trust with another domain, the current
|
249
|
-
domain will recognize and accept certificates issued by entities within the trusted domains.
|
250
|
-
Note that a trust domain automatically trusts itself, eliminating the need for explicit
|
251
|
-
configuration.
|
252
|
-
Structure is documented below.
|
253
|
-
:param pulumi.Input[builtins.str] mode: The mode for the pool is operating in. Pools with an unspecified mode will operate as if they
|
254
|
-
are in `FEDERATION_ONLY` mode.
|
255
|
-
|
256
|
-
> **Note** This field cannot be changed after the Workload Identity Pool is created. While
|
257
|
-
`pulumi preview` may show an update if you change this field's value, `pulumi up`
|
258
|
-
**will fail with an API error** (such as `Error 400: Attempted to update an immutable field.`).
|
259
|
-
To specify a different `mode`, please create a new Workload Identity Pool resource.
|
260
|
-
* `FEDERATION_ONLY`: Pools can only be used for federating external workload identities into
|
261
|
-
Google Cloud. Unless otherwise noted, no structure or format constraints are applied to
|
262
|
-
workload identities in a `FEDERATION_ONLY` mode pool, and you may not create any resources
|
263
|
-
within the pool besides providers.
|
264
|
-
* `TRUST_DOMAIN`: Pools can be used to assign identities to Google Cloud workloads. All
|
265
|
-
identities within a `TRUST_DOMAIN` mode pool must consist of a single namespace and individual
|
266
|
-
workload identifier. The subject identifier for all identities must conform to the following
|
267
|
-
format: `ns/<namespace>/sa/<workload_identifier>`.
|
268
|
-
`iam.WorkloadIdentityPoolProvider`s cannot be created within `TRUST_DOMAIN`
|
269
|
-
mode pools.
|
270
|
-
Possible values are: `FEDERATION_ONLY`, `TRUST_DOMAIN`.
|
271
140
|
:param pulumi.Input[builtins.str] name: The resource name of the pool as
|
272
141
|
`projects/{project_number}/locations/global/workloadIdentityPools/{workload_identity_pool_id}`.
|
273
142
|
:param pulumi.Input[builtins.str] project: The ID of the project in which the resource belongs.
|
274
143
|
If it is not provided, the provider project is used.
|
275
144
|
:param pulumi.Input[builtins.str] state: The state of the pool.
|
276
|
-
*
|
277
|
-
*
|
278
|
-
*
|
145
|
+
* STATE_UNSPECIFIED: State unspecified.
|
146
|
+
* ACTIVE: The pool is active, and may be used in Google Cloud policies.
|
147
|
+
* DELETED: The pool is soft-deleted. Soft-deleted pools are permanently deleted after
|
279
148
|
approximately 30 days. You can restore a soft-deleted pool using
|
280
|
-
|
149
|
+
UndeleteWorkloadIdentityPool. You cannot reuse the ID of a soft-deleted pool until it is
|
281
150
|
permanently deleted. While a pool is deleted, you cannot use it to exchange tokens, or
|
282
151
|
use existing tokens to access resources. If the pool is undeleted, existing tokens grant
|
283
152
|
access again.
|
@@ -294,12 +163,6 @@ class _WorkloadIdentityPoolState:
|
|
294
163
|
pulumi.set(__self__, "disabled", disabled)
|
295
164
|
if display_name is not None:
|
296
165
|
pulumi.set(__self__, "display_name", display_name)
|
297
|
-
if inline_certificate_issuance_config is not None:
|
298
|
-
pulumi.set(__self__, "inline_certificate_issuance_config", inline_certificate_issuance_config)
|
299
|
-
if inline_trust_config is not None:
|
300
|
-
pulumi.set(__self__, "inline_trust_config", inline_trust_config)
|
301
|
-
if mode is not None:
|
302
|
-
pulumi.set(__self__, "mode", mode)
|
303
166
|
if name is not None:
|
304
167
|
pulumi.set(__self__, "name", name)
|
305
168
|
if project is not None:
|
@@ -347,67 +210,6 @@ class _WorkloadIdentityPoolState:
|
|
347
210
|
def display_name(self, value: Optional[pulumi.Input[builtins.str]]):
|
348
211
|
pulumi.set(self, "display_name", value)
|
349
212
|
|
350
|
-
@property
|
351
|
-
@pulumi.getter(name="inlineCertificateIssuanceConfig")
|
352
|
-
def inline_certificate_issuance_config(self) -> Optional[pulumi.Input['WorkloadIdentityPoolInlineCertificateIssuanceConfigArgs']]:
|
353
|
-
"""
|
354
|
-
Represents configuration for generating mutual TLS (mTLS) certificates for the identities
|
355
|
-
within this pool. Defines the Certificate Authority (CA) pool resources and configurations
|
356
|
-
required for issuance and rotation of mTLS workload certificates.
|
357
|
-
Structure is documented below.
|
358
|
-
"""
|
359
|
-
return pulumi.get(self, "inline_certificate_issuance_config")
|
360
|
-
|
361
|
-
@inline_certificate_issuance_config.setter
|
362
|
-
def inline_certificate_issuance_config(self, value: Optional[pulumi.Input['WorkloadIdentityPoolInlineCertificateIssuanceConfigArgs']]):
|
363
|
-
pulumi.set(self, "inline_certificate_issuance_config", value)
|
364
|
-
|
365
|
-
@property
|
366
|
-
@pulumi.getter(name="inlineTrustConfig")
|
367
|
-
def inline_trust_config(self) -> Optional[pulumi.Input['WorkloadIdentityPoolInlineTrustConfigArgs']]:
|
368
|
-
"""
|
369
|
-
Represents config to add additional trusted trust domains. Defines configuration for extending
|
370
|
-
trust to additional trust domains. By establishing trust with another domain, the current
|
371
|
-
domain will recognize and accept certificates issued by entities within the trusted domains.
|
372
|
-
Note that a trust domain automatically trusts itself, eliminating the need for explicit
|
373
|
-
configuration.
|
374
|
-
Structure is documented below.
|
375
|
-
"""
|
376
|
-
return pulumi.get(self, "inline_trust_config")
|
377
|
-
|
378
|
-
@inline_trust_config.setter
|
379
|
-
def inline_trust_config(self, value: Optional[pulumi.Input['WorkloadIdentityPoolInlineTrustConfigArgs']]):
|
380
|
-
pulumi.set(self, "inline_trust_config", value)
|
381
|
-
|
382
|
-
@property
|
383
|
-
@pulumi.getter
|
384
|
-
def mode(self) -> Optional[pulumi.Input[builtins.str]]:
|
385
|
-
"""
|
386
|
-
The mode for the pool is operating in. Pools with an unspecified mode will operate as if they
|
387
|
-
are in `FEDERATION_ONLY` mode.
|
388
|
-
|
389
|
-
> **Note** This field cannot be changed after the Workload Identity Pool is created. While
|
390
|
-
`pulumi preview` may show an update if you change this field's value, `pulumi up`
|
391
|
-
**will fail with an API error** (such as `Error 400: Attempted to update an immutable field.`).
|
392
|
-
To specify a different `mode`, please create a new Workload Identity Pool resource.
|
393
|
-
* `FEDERATION_ONLY`: Pools can only be used for federating external workload identities into
|
394
|
-
Google Cloud. Unless otherwise noted, no structure or format constraints are applied to
|
395
|
-
workload identities in a `FEDERATION_ONLY` mode pool, and you may not create any resources
|
396
|
-
within the pool besides providers.
|
397
|
-
* `TRUST_DOMAIN`: Pools can be used to assign identities to Google Cloud workloads. All
|
398
|
-
identities within a `TRUST_DOMAIN` mode pool must consist of a single namespace and individual
|
399
|
-
workload identifier. The subject identifier for all identities must conform to the following
|
400
|
-
format: `ns/<namespace>/sa/<workload_identifier>`.
|
401
|
-
`iam.WorkloadIdentityPoolProvider`s cannot be created within `TRUST_DOMAIN`
|
402
|
-
mode pools.
|
403
|
-
Possible values are: `FEDERATION_ONLY`, `TRUST_DOMAIN`.
|
404
|
-
"""
|
405
|
-
return pulumi.get(self, "mode")
|
406
|
-
|
407
|
-
@mode.setter
|
408
|
-
def mode(self, value: Optional[pulumi.Input[builtins.str]]):
|
409
|
-
pulumi.set(self, "mode", value)
|
410
|
-
|
411
213
|
@property
|
412
214
|
@pulumi.getter
|
413
215
|
def name(self) -> Optional[pulumi.Input[builtins.str]]:
|
@@ -439,11 +241,11 @@ class _WorkloadIdentityPoolState:
|
|
439
241
|
def state(self) -> Optional[pulumi.Input[builtins.str]]:
|
440
242
|
"""
|
441
243
|
The state of the pool.
|
442
|
-
*
|
443
|
-
*
|
444
|
-
*
|
244
|
+
* STATE_UNSPECIFIED: State unspecified.
|
245
|
+
* ACTIVE: The pool is active, and may be used in Google Cloud policies.
|
246
|
+
* DELETED: The pool is soft-deleted. Soft-deleted pools are permanently deleted after
|
445
247
|
approximately 30 days. You can restore a soft-deleted pool using
|
446
|
-
|
248
|
+
UndeleteWorkloadIdentityPool. You cannot reuse the ID of a soft-deleted pool until it is
|
447
249
|
permanently deleted. While a pool is deleted, you cannot use it to exchange tokens, or
|
448
250
|
use existing tokens to access resources. If the pool is undeleted, existing tokens grant
|
449
251
|
access again.
|
@@ -481,9 +283,6 @@ class WorkloadIdentityPool(pulumi.CustomResource):
|
|
481
283
|
description: Optional[pulumi.Input[builtins.str]] = None,
|
482
284
|
disabled: Optional[pulumi.Input[builtins.bool]] = None,
|
483
285
|
display_name: Optional[pulumi.Input[builtins.str]] = None,
|
484
|
-
inline_certificate_issuance_config: Optional[pulumi.Input[Union['WorkloadIdentityPoolInlineCertificateIssuanceConfigArgs', 'WorkloadIdentityPoolInlineCertificateIssuanceConfigArgsDict']]] = None,
|
485
|
-
inline_trust_config: Optional[pulumi.Input[Union['WorkloadIdentityPoolInlineTrustConfigArgs', 'WorkloadIdentityPoolInlineTrustConfigArgsDict']]] = None,
|
486
|
-
mode: Optional[pulumi.Input[builtins.str]] = None,
|
487
286
|
project: Optional[pulumi.Input[builtins.str]] = None,
|
488
287
|
workload_identity_pool_id: Optional[pulumi.Input[builtins.str]] = None,
|
489
288
|
__props__=None):
|
@@ -495,8 +294,6 @@ class WorkloadIdentityPool(pulumi.CustomResource):
|
|
495
294
|
|
496
295
|
* [API documentation](https://cloud.google.com/iam/docs/reference/rest/v1/projects.locations.workloadIdentityPools)
|
497
296
|
* How-to Guides
|
498
|
-
* [Configure managed workload identity authentication for Compute Engine](https://cloud.google.com/iam/docs/create-managed-workload-identities)
|
499
|
-
* [Configure managed workload identity authentication for GKE](https://cloud.google.com/iam/docs/create-managed-workload-identities-gke)
|
500
297
|
* [Managing workload identity pools](https://cloud.google.com/iam/docs/manage-workload-identity-pools-providers#pools)
|
501
298
|
|
502
299
|
## Example Usage
|
@@ -509,7 +306,7 @@ class WorkloadIdentityPool(pulumi.CustomResource):
|
|
509
306
|
|
510
307
|
example = gcp.iam.WorkloadIdentityPool("example", workload_identity_pool_id="example-pool")
|
511
308
|
```
|
512
|
-
### Iam Workload Identity Pool Full
|
309
|
+
### Iam Workload Identity Pool Full
|
513
310
|
|
514
311
|
```python
|
515
312
|
import pulumi
|
@@ -517,59 +314,9 @@ class WorkloadIdentityPool(pulumi.CustomResource):
|
|
517
314
|
|
518
315
|
example = gcp.iam.WorkloadIdentityPool("example",
|
519
316
|
workload_identity_pool_id="example-pool",
|
520
|
-
display_name="Name of
|
521
|
-
description="Identity pool
|
522
|
-
disabled=True
|
523
|
-
mode="FEDERATION_ONLY")
|
524
|
-
```
|
525
|
-
### Iam Workload Identity Pool Full Trust Domain Mode
|
526
|
-
|
527
|
-
```python
|
528
|
-
import pulumi
|
529
|
-
import pulumi_gcp as gcp
|
530
|
-
import pulumi_std as std
|
531
|
-
|
532
|
-
example = gcp.iam.WorkloadIdentityPool("example",
|
533
|
-
workload_identity_pool_id="example-pool",
|
534
|
-
display_name="Name of the pool",
|
535
|
-
description="Identity pool operates in TRUST_DOMAIN mode",
|
536
|
-
disabled=True,
|
537
|
-
mode="TRUST_DOMAIN",
|
538
|
-
inline_certificate_issuance_config={
|
539
|
-
"ca_pools": {
|
540
|
-
"us-central1": "projects/project-bar/locations/us-central1/caPools/ca-pool-bar",
|
541
|
-
"asia-east2": "projects/project-foo/locations/asia-east2/caPools/ca-pool-foo",
|
542
|
-
},
|
543
|
-
"lifetime": "86400s",
|
544
|
-
"rotation_window_percentage": 50,
|
545
|
-
"key_algorithm": "ECDSA_P256",
|
546
|
-
},
|
547
|
-
inline_trust_config={
|
548
|
-
"additional_trust_bundles": [
|
549
|
-
{
|
550
|
-
"trust_domain": "example.com",
|
551
|
-
"trust_anchors": [
|
552
|
-
{
|
553
|
-
"pem_certificate": std.file(input="test-fixtures/trust_anchor_1.pem").result,
|
554
|
-
},
|
555
|
-
{
|
556
|
-
"pem_certificate": std.file(input="test-fixtures/trust_anchor_2.pem").result,
|
557
|
-
},
|
558
|
-
],
|
559
|
-
},
|
560
|
-
{
|
561
|
-
"trust_domain": "example.net",
|
562
|
-
"trust_anchors": [
|
563
|
-
{
|
564
|
-
"pem_certificate": std.file(input="test-fixtures/trust_anchor_3.pem").result,
|
565
|
-
},
|
566
|
-
{
|
567
|
-
"pem_certificate": std.file(input="test-fixtures/trust_anchor_4.pem").result,
|
568
|
-
},
|
569
|
-
],
|
570
|
-
},
|
571
|
-
],
|
572
|
-
})
|
317
|
+
display_name="Name of pool",
|
318
|
+
description="Identity pool for automated test",
|
319
|
+
disabled=True)
|
573
320
|
```
|
574
321
|
|
575
322
|
## Import
|
@@ -603,34 +350,6 @@ class WorkloadIdentityPool(pulumi.CustomResource):
|
|
603
350
|
existing tokens to access resources. If the pool is re-enabled, existing tokens grant
|
604
351
|
access again.
|
605
352
|
:param pulumi.Input[builtins.str] display_name: A display name for the pool. Cannot exceed 32 characters.
|
606
|
-
:param pulumi.Input[Union['WorkloadIdentityPoolInlineCertificateIssuanceConfigArgs', 'WorkloadIdentityPoolInlineCertificateIssuanceConfigArgsDict']] inline_certificate_issuance_config: Represents configuration for generating mutual TLS (mTLS) certificates for the identities
|
607
|
-
within this pool. Defines the Certificate Authority (CA) pool resources and configurations
|
608
|
-
required for issuance and rotation of mTLS workload certificates.
|
609
|
-
Structure is documented below.
|
610
|
-
:param pulumi.Input[Union['WorkloadIdentityPoolInlineTrustConfigArgs', 'WorkloadIdentityPoolInlineTrustConfigArgsDict']] inline_trust_config: Represents config to add additional trusted trust domains. Defines configuration for extending
|
611
|
-
trust to additional trust domains. By establishing trust with another domain, the current
|
612
|
-
domain will recognize and accept certificates issued by entities within the trusted domains.
|
613
|
-
Note that a trust domain automatically trusts itself, eliminating the need for explicit
|
614
|
-
configuration.
|
615
|
-
Structure is documented below.
|
616
|
-
:param pulumi.Input[builtins.str] mode: The mode for the pool is operating in. Pools with an unspecified mode will operate as if they
|
617
|
-
are in `FEDERATION_ONLY` mode.
|
618
|
-
|
619
|
-
> **Note** This field cannot be changed after the Workload Identity Pool is created. While
|
620
|
-
`pulumi preview` may show an update if you change this field's value, `pulumi up`
|
621
|
-
**will fail with an API error** (such as `Error 400: Attempted to update an immutable field.`).
|
622
|
-
To specify a different `mode`, please create a new Workload Identity Pool resource.
|
623
|
-
* `FEDERATION_ONLY`: Pools can only be used for federating external workload identities into
|
624
|
-
Google Cloud. Unless otherwise noted, no structure or format constraints are applied to
|
625
|
-
workload identities in a `FEDERATION_ONLY` mode pool, and you may not create any resources
|
626
|
-
within the pool besides providers.
|
627
|
-
* `TRUST_DOMAIN`: Pools can be used to assign identities to Google Cloud workloads. All
|
628
|
-
identities within a `TRUST_DOMAIN` mode pool must consist of a single namespace and individual
|
629
|
-
workload identifier. The subject identifier for all identities must conform to the following
|
630
|
-
format: `ns/<namespace>/sa/<workload_identifier>`.
|
631
|
-
`iam.WorkloadIdentityPoolProvider`s cannot be created within `TRUST_DOMAIN`
|
632
|
-
mode pools.
|
633
|
-
Possible values are: `FEDERATION_ONLY`, `TRUST_DOMAIN`.
|
634
353
|
:param pulumi.Input[builtins.str] project: The ID of the project in which the resource belongs.
|
635
354
|
If it is not provided, the provider project is used.
|
636
355
|
:param pulumi.Input[builtins.str] workload_identity_pool_id: The ID to use for the pool, which becomes the final component of the resource name. This
|
@@ -654,8 +373,6 @@ class WorkloadIdentityPool(pulumi.CustomResource):
|
|
654
373
|
|
655
374
|
* [API documentation](https://cloud.google.com/iam/docs/reference/rest/v1/projects.locations.workloadIdentityPools)
|
656
375
|
* How-to Guides
|
657
|
-
* [Configure managed workload identity authentication for Compute Engine](https://cloud.google.com/iam/docs/create-managed-workload-identities)
|
658
|
-
* [Configure managed workload identity authentication for GKE](https://cloud.google.com/iam/docs/create-managed-workload-identities-gke)
|
659
376
|
* [Managing workload identity pools](https://cloud.google.com/iam/docs/manage-workload-identity-pools-providers#pools)
|
660
377
|
|
661
378
|
## Example Usage
|
@@ -668,67 +385,17 @@ class WorkloadIdentityPool(pulumi.CustomResource):
|
|
668
385
|
|
669
386
|
example = gcp.iam.WorkloadIdentityPool("example", workload_identity_pool_id="example-pool")
|
670
387
|
```
|
671
|
-
### Iam Workload Identity Pool Full
|
672
|
-
|
673
|
-
```python
|
674
|
-
import pulumi
|
675
|
-
import pulumi_gcp as gcp
|
676
|
-
|
677
|
-
example = gcp.iam.WorkloadIdentityPool("example",
|
678
|
-
workload_identity_pool_id="example-pool",
|
679
|
-
display_name="Name of the pool",
|
680
|
-
description="Identity pool operates in FEDERATION_ONLY mode",
|
681
|
-
disabled=True,
|
682
|
-
mode="FEDERATION_ONLY")
|
683
|
-
```
|
684
|
-
### Iam Workload Identity Pool Full Trust Domain Mode
|
388
|
+
### Iam Workload Identity Pool Full
|
685
389
|
|
686
390
|
```python
|
687
391
|
import pulumi
|
688
392
|
import pulumi_gcp as gcp
|
689
|
-
import pulumi_std as std
|
690
393
|
|
691
394
|
example = gcp.iam.WorkloadIdentityPool("example",
|
692
395
|
workload_identity_pool_id="example-pool",
|
693
|
-
display_name="Name of
|
694
|
-
description="Identity pool
|
695
|
-
disabled=True
|
696
|
-
mode="TRUST_DOMAIN",
|
697
|
-
inline_certificate_issuance_config={
|
698
|
-
"ca_pools": {
|
699
|
-
"us-central1": "projects/project-bar/locations/us-central1/caPools/ca-pool-bar",
|
700
|
-
"asia-east2": "projects/project-foo/locations/asia-east2/caPools/ca-pool-foo",
|
701
|
-
},
|
702
|
-
"lifetime": "86400s",
|
703
|
-
"rotation_window_percentage": 50,
|
704
|
-
"key_algorithm": "ECDSA_P256",
|
705
|
-
},
|
706
|
-
inline_trust_config={
|
707
|
-
"additional_trust_bundles": [
|
708
|
-
{
|
709
|
-
"trust_domain": "example.com",
|
710
|
-
"trust_anchors": [
|
711
|
-
{
|
712
|
-
"pem_certificate": std.file(input="test-fixtures/trust_anchor_1.pem").result,
|
713
|
-
},
|
714
|
-
{
|
715
|
-
"pem_certificate": std.file(input="test-fixtures/trust_anchor_2.pem").result,
|
716
|
-
},
|
717
|
-
],
|
718
|
-
},
|
719
|
-
{
|
720
|
-
"trust_domain": "example.net",
|
721
|
-
"trust_anchors": [
|
722
|
-
{
|
723
|
-
"pem_certificate": std.file(input="test-fixtures/trust_anchor_3.pem").result,
|
724
|
-
},
|
725
|
-
{
|
726
|
-
"pem_certificate": std.file(input="test-fixtures/trust_anchor_4.pem").result,
|
727
|
-
},
|
728
|
-
],
|
729
|
-
},
|
730
|
-
],
|
731
|
-
})
|
396
|
+
display_name="Name of pool",
|
397
|
+
description="Identity pool for automated test",
|
398
|
+
disabled=True)
|
732
399
|
```
|
733
400
|
|
734
401
|
## Import
|
@@ -773,9 +440,6 @@ class WorkloadIdentityPool(pulumi.CustomResource):
|
|
773
440
|
description: Optional[pulumi.Input[builtins.str]] = None,
|
774
441
|
disabled: Optional[pulumi.Input[builtins.bool]] = None,
|
775
442
|
display_name: Optional[pulumi.Input[builtins.str]] = None,
|
776
|
-
inline_certificate_issuance_config: Optional[pulumi.Input[Union['WorkloadIdentityPoolInlineCertificateIssuanceConfigArgs', 'WorkloadIdentityPoolInlineCertificateIssuanceConfigArgsDict']]] = None,
|
777
|
-
inline_trust_config: Optional[pulumi.Input[Union['WorkloadIdentityPoolInlineTrustConfigArgs', 'WorkloadIdentityPoolInlineTrustConfigArgsDict']]] = None,
|
778
|
-
mode: Optional[pulumi.Input[builtins.str]] = None,
|
779
443
|
project: Optional[pulumi.Input[builtins.str]] = None,
|
780
444
|
workload_identity_pool_id: Optional[pulumi.Input[builtins.str]] = None,
|
781
445
|
__props__=None):
|
@@ -790,9 +454,6 @@ class WorkloadIdentityPool(pulumi.CustomResource):
|
|
790
454
|
__props__.__dict__["description"] = description
|
791
455
|
__props__.__dict__["disabled"] = disabled
|
792
456
|
__props__.__dict__["display_name"] = display_name
|
793
|
-
__props__.__dict__["inline_certificate_issuance_config"] = inline_certificate_issuance_config
|
794
|
-
__props__.__dict__["inline_trust_config"] = inline_trust_config
|
795
|
-
__props__.__dict__["mode"] = mode
|
796
457
|
__props__.__dict__["project"] = project
|
797
458
|
if workload_identity_pool_id is None and not opts.urn:
|
798
459
|
raise TypeError("Missing required property 'workload_identity_pool_id'")
|
@@ -812,9 +473,6 @@ class WorkloadIdentityPool(pulumi.CustomResource):
|
|
812
473
|
description: Optional[pulumi.Input[builtins.str]] = None,
|
813
474
|
disabled: Optional[pulumi.Input[builtins.bool]] = None,
|
814
475
|
display_name: Optional[pulumi.Input[builtins.str]] = None,
|
815
|
-
inline_certificate_issuance_config: Optional[pulumi.Input[Union['WorkloadIdentityPoolInlineCertificateIssuanceConfigArgs', 'WorkloadIdentityPoolInlineCertificateIssuanceConfigArgsDict']]] = None,
|
816
|
-
inline_trust_config: Optional[pulumi.Input[Union['WorkloadIdentityPoolInlineTrustConfigArgs', 'WorkloadIdentityPoolInlineTrustConfigArgsDict']]] = None,
|
817
|
-
mode: Optional[pulumi.Input[builtins.str]] = None,
|
818
476
|
name: Optional[pulumi.Input[builtins.str]] = None,
|
819
477
|
project: Optional[pulumi.Input[builtins.str]] = None,
|
820
478
|
state: Optional[pulumi.Input[builtins.str]] = None,
|
@@ -831,44 +489,16 @@ class WorkloadIdentityPool(pulumi.CustomResource):
|
|
831
489
|
existing tokens to access resources. If the pool is re-enabled, existing tokens grant
|
832
490
|
access again.
|
833
491
|
:param pulumi.Input[builtins.str] display_name: A display name for the pool. Cannot exceed 32 characters.
|
834
|
-
:param pulumi.Input[Union['WorkloadIdentityPoolInlineCertificateIssuanceConfigArgs', 'WorkloadIdentityPoolInlineCertificateIssuanceConfigArgsDict']] inline_certificate_issuance_config: Represents configuration for generating mutual TLS (mTLS) certificates for the identities
|
835
|
-
within this pool. Defines the Certificate Authority (CA) pool resources and configurations
|
836
|
-
required for issuance and rotation of mTLS workload certificates.
|
837
|
-
Structure is documented below.
|
838
|
-
:param pulumi.Input[Union['WorkloadIdentityPoolInlineTrustConfigArgs', 'WorkloadIdentityPoolInlineTrustConfigArgsDict']] inline_trust_config: Represents config to add additional trusted trust domains. Defines configuration for extending
|
839
|
-
trust to additional trust domains. By establishing trust with another domain, the current
|
840
|
-
domain will recognize and accept certificates issued by entities within the trusted domains.
|
841
|
-
Note that a trust domain automatically trusts itself, eliminating the need for explicit
|
842
|
-
configuration.
|
843
|
-
Structure is documented below.
|
844
|
-
:param pulumi.Input[builtins.str] mode: The mode for the pool is operating in. Pools with an unspecified mode will operate as if they
|
845
|
-
are in `FEDERATION_ONLY` mode.
|
846
|
-
|
847
|
-
> **Note** This field cannot be changed after the Workload Identity Pool is created. While
|
848
|
-
`pulumi preview` may show an update if you change this field's value, `pulumi up`
|
849
|
-
**will fail with an API error** (such as `Error 400: Attempted to update an immutable field.`).
|
850
|
-
To specify a different `mode`, please create a new Workload Identity Pool resource.
|
851
|
-
* `FEDERATION_ONLY`: Pools can only be used for federating external workload identities into
|
852
|
-
Google Cloud. Unless otherwise noted, no structure or format constraints are applied to
|
853
|
-
workload identities in a `FEDERATION_ONLY` mode pool, and you may not create any resources
|
854
|
-
within the pool besides providers.
|
855
|
-
* `TRUST_DOMAIN`: Pools can be used to assign identities to Google Cloud workloads. All
|
856
|
-
identities within a `TRUST_DOMAIN` mode pool must consist of a single namespace and individual
|
857
|
-
workload identifier. The subject identifier for all identities must conform to the following
|
858
|
-
format: `ns/<namespace>/sa/<workload_identifier>`.
|
859
|
-
`iam.WorkloadIdentityPoolProvider`s cannot be created within `TRUST_DOMAIN`
|
860
|
-
mode pools.
|
861
|
-
Possible values are: `FEDERATION_ONLY`, `TRUST_DOMAIN`.
|
862
492
|
:param pulumi.Input[builtins.str] name: The resource name of the pool as
|
863
493
|
`projects/{project_number}/locations/global/workloadIdentityPools/{workload_identity_pool_id}`.
|
864
494
|
:param pulumi.Input[builtins.str] project: The ID of the project in which the resource belongs.
|
865
495
|
If it is not provided, the provider project is used.
|
866
496
|
:param pulumi.Input[builtins.str] state: The state of the pool.
|
867
|
-
*
|
868
|
-
*
|
869
|
-
*
|
497
|
+
* STATE_UNSPECIFIED: State unspecified.
|
498
|
+
* ACTIVE: The pool is active, and may be used in Google Cloud policies.
|
499
|
+
* DELETED: The pool is soft-deleted. Soft-deleted pools are permanently deleted after
|
870
500
|
approximately 30 days. You can restore a soft-deleted pool using
|
871
|
-
|
501
|
+
UndeleteWorkloadIdentityPool. You cannot reuse the ID of a soft-deleted pool until it is
|
872
502
|
permanently deleted. While a pool is deleted, you cannot use it to exchange tokens, or
|
873
503
|
use existing tokens to access resources. If the pool is undeleted, existing tokens grant
|
874
504
|
access again.
|
@@ -886,9 +516,6 @@ class WorkloadIdentityPool(pulumi.CustomResource):
|
|
886
516
|
__props__.__dict__["description"] = description
|
887
517
|
__props__.__dict__["disabled"] = disabled
|
888
518
|
__props__.__dict__["display_name"] = display_name
|
889
|
-
__props__.__dict__["inline_certificate_issuance_config"] = inline_certificate_issuance_config
|
890
|
-
__props__.__dict__["inline_trust_config"] = inline_trust_config
|
891
|
-
__props__.__dict__["mode"] = mode
|
892
519
|
__props__.__dict__["name"] = name
|
893
520
|
__props__.__dict__["project"] = project
|
894
521
|
__props__.__dict__["state"] = state
|
@@ -921,55 +548,6 @@ class WorkloadIdentityPool(pulumi.CustomResource):
|
|
921
548
|
"""
|
922
549
|
return pulumi.get(self, "display_name")
|
923
550
|
|
924
|
-
@property
|
925
|
-
@pulumi.getter(name="inlineCertificateIssuanceConfig")
|
926
|
-
def inline_certificate_issuance_config(self) -> pulumi.Output[Optional['outputs.WorkloadIdentityPoolInlineCertificateIssuanceConfig']]:
|
927
|
-
"""
|
928
|
-
Represents configuration for generating mutual TLS (mTLS) certificates for the identities
|
929
|
-
within this pool. Defines the Certificate Authority (CA) pool resources and configurations
|
930
|
-
required for issuance and rotation of mTLS workload certificates.
|
931
|
-
Structure is documented below.
|
932
|
-
"""
|
933
|
-
return pulumi.get(self, "inline_certificate_issuance_config")
|
934
|
-
|
935
|
-
@property
|
936
|
-
@pulumi.getter(name="inlineTrustConfig")
|
937
|
-
def inline_trust_config(self) -> pulumi.Output[Optional['outputs.WorkloadIdentityPoolInlineTrustConfig']]:
|
938
|
-
"""
|
939
|
-
Represents config to add additional trusted trust domains. Defines configuration for extending
|
940
|
-
trust to additional trust domains. By establishing trust with another domain, the current
|
941
|
-
domain will recognize and accept certificates issued by entities within the trusted domains.
|
942
|
-
Note that a trust domain automatically trusts itself, eliminating the need for explicit
|
943
|
-
configuration.
|
944
|
-
Structure is documented below.
|
945
|
-
"""
|
946
|
-
return pulumi.get(self, "inline_trust_config")
|
947
|
-
|
948
|
-
@property
|
949
|
-
@pulumi.getter
|
950
|
-
def mode(self) -> pulumi.Output[Optional[builtins.str]]:
|
951
|
-
"""
|
952
|
-
The mode for the pool is operating in. Pools with an unspecified mode will operate as if they
|
953
|
-
are in `FEDERATION_ONLY` mode.
|
954
|
-
|
955
|
-
> **Note** This field cannot be changed after the Workload Identity Pool is created. While
|
956
|
-
`pulumi preview` may show an update if you change this field's value, `pulumi up`
|
957
|
-
**will fail with an API error** (such as `Error 400: Attempted to update an immutable field.`).
|
958
|
-
To specify a different `mode`, please create a new Workload Identity Pool resource.
|
959
|
-
* `FEDERATION_ONLY`: Pools can only be used for federating external workload identities into
|
960
|
-
Google Cloud. Unless otherwise noted, no structure or format constraints are applied to
|
961
|
-
workload identities in a `FEDERATION_ONLY` mode pool, and you may not create any resources
|
962
|
-
within the pool besides providers.
|
963
|
-
* `TRUST_DOMAIN`: Pools can be used to assign identities to Google Cloud workloads. All
|
964
|
-
identities within a `TRUST_DOMAIN` mode pool must consist of a single namespace and individual
|
965
|
-
workload identifier. The subject identifier for all identities must conform to the following
|
966
|
-
format: `ns/<namespace>/sa/<workload_identifier>`.
|
967
|
-
`iam.WorkloadIdentityPoolProvider`s cannot be created within `TRUST_DOMAIN`
|
968
|
-
mode pools.
|
969
|
-
Possible values are: `FEDERATION_ONLY`, `TRUST_DOMAIN`.
|
970
|
-
"""
|
971
|
-
return pulumi.get(self, "mode")
|
972
|
-
|
973
551
|
@property
|
974
552
|
@pulumi.getter
|
975
553
|
def name(self) -> pulumi.Output[builtins.str]:
|
@@ -993,11 +571,11 @@ class WorkloadIdentityPool(pulumi.CustomResource):
|
|
993
571
|
def state(self) -> pulumi.Output[builtins.str]:
|
994
572
|
"""
|
995
573
|
The state of the pool.
|
996
|
-
*
|
997
|
-
*
|
998
|
-
*
|
574
|
+
* STATE_UNSPECIFIED: State unspecified.
|
575
|
+
* ACTIVE: The pool is active, and may be used in Google Cloud policies.
|
576
|
+
* DELETED: The pool is soft-deleted. Soft-deleted pools are permanently deleted after
|
999
577
|
approximately 30 days. You can restore a soft-deleted pool using
|
1000
|
-
|
578
|
+
UndeleteWorkloadIdentityPool. You cannot reuse the ID of a soft-deleted pool until it is
|
1001
579
|
permanently deleted. While a pool is deleted, you cannot use it to exchange tokens, or
|
1002
580
|
use existing tokens to access resources. If the pool is undeleted, existing tokens grant
|
1003
581
|
access again.
|