Class IamWorkloadIdentityPoolProviderConfig.Jsii$Proxy
- java.lang.Object
-
- software.amazon.jsii.JsiiObject
-
- com.hashicorp.cdktf.providers.google.iam_workload_identity_pool_provider.IamWorkloadIdentityPoolProviderConfig.Jsii$Proxy
-
- All Implemented Interfaces:
IamWorkloadIdentityPoolProviderConfig,com.hashicorp.cdktf.TerraformMetaArguments,software.amazon.jsii.JsiiSerializable
- Enclosing interface:
- IamWorkloadIdentityPoolProviderConfig
@Stability(Stable) @Internal public static final class IamWorkloadIdentityPoolProviderConfig.Jsii$Proxy extends software.amazon.jsii.JsiiObject implements IamWorkloadIdentityPoolProviderConfig
An implementation forIamWorkloadIdentityPoolProviderConfig
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class software.amazon.jsii.JsiiObject
software.amazon.jsii.JsiiObject.InitializationMode
-
Nested classes/interfaces inherited from interface com.hashicorp.cdktf.providers.google.iam_workload_identity_pool_provider.IamWorkloadIdentityPoolProviderConfig
IamWorkloadIdentityPoolProviderConfig.Builder, IamWorkloadIdentityPoolProviderConfig.Jsii$Proxy
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedJsii$Proxy(IamWorkloadIdentityPoolProviderConfig.Builder builder)Constructor that initializes the object based on literal property values passed by theIamWorkloadIdentityPoolProviderConfig.Builder.protectedJsii$Proxy(software.amazon.jsii.JsiiObjectRef objRef)Constructor that initializes the object based on values retrieved from the JsiiObject.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description com.fasterxml.jackson.databind.JsonNode$jsii$toJson()booleanequals(Object o)StringgetAttributeCondition()A Common Expression Language expression, in plain text, to restrict what otherwise valid authentication credentials issued by the provider should not be accepted.Map<String,String>getAttributeMapping()Maps attributes from authentication credentials issued by an external identity provider to Google Cloud attributes, such as 'subject' and 'segment'.IamWorkloadIdentityPoolProviderAwsgetAws()aws block.ObjectgetConnection()ObjectgetCount()List<com.hashicorp.cdktf.ITerraformDependable>getDependsOn()StringgetDescription()A description for the provider.ObjectgetDisabled()Whether the provider is disabled.StringgetDisplayName()A display name for the provider.com.hashicorp.cdktf.ITerraformIteratorgetForEach()StringgetId()Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/iam_workload_identity_pool_provider#id IamWorkloadIdentityPoolProvider#id}.com.hashicorp.cdktf.TerraformResourceLifecyclegetLifecycle()IamWorkloadIdentityPoolProviderOidcgetOidc()oidc block.StringgetProject()Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/iam_workload_identity_pool_provider#project IamWorkloadIdentityPoolProvider#project}.com.hashicorp.cdktf.TerraformProvidergetProvider()List<Object>getProvisioners()IamWorkloadIdentityPoolProviderSamlgetSaml()saml block.IamWorkloadIdentityPoolProviderTimeoutsgetTimeouts()timeouts block.StringgetWorkloadIdentityPoolId()The ID used for the pool, which is the final component of the pool resource name.StringgetWorkloadIdentityPoolProviderId()The ID for the provider, which becomes the final component of the resource name.inthashCode()
-
-
-
Constructor Detail
-
Jsii$Proxy
protected Jsii$Proxy(software.amazon.jsii.JsiiObjectRef objRef)
Constructor that initializes the object based on values retrieved from the JsiiObject.- Parameters:
objRef- Reference to the JSII managed object.
-
Jsii$Proxy
protected Jsii$Proxy(IamWorkloadIdentityPoolProviderConfig.Builder builder)
Constructor that initializes the object based on literal property values passed by theIamWorkloadIdentityPoolProviderConfig.Builder.
-
-
Method Detail
-
getWorkloadIdentityPoolId
public final String getWorkloadIdentityPoolId()
Description copied from interface:IamWorkloadIdentityPoolProviderConfigThe ID used for the pool, which is the final component of the pool resource name.This value should be 4-32 characters, and may contain the characters [a-z0-9-]. The prefix 'gcp-' is reserved for use by Google, and may not be specified. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/iam_workload_identity_pool_provider#workload_identity_pool_id IamWorkloadIdentityPoolProvider#workload_identity_pool_id}
- Specified by:
getWorkloadIdentityPoolIdin interfaceIamWorkloadIdentityPoolProviderConfig
-
getWorkloadIdentityPoolProviderId
public final String getWorkloadIdentityPoolProviderId()
Description copied from interface:IamWorkloadIdentityPoolProviderConfigThe ID for the provider, which becomes the final component of the resource name.This value must be 4-32 characters, and may contain the characters [a-z0-9-]. The prefix 'gcp-' is reserved for use by Google, and may not be specified. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/iam_workload_identity_pool_provider#workload_identity_pool_provider_id IamWorkloadIdentityPoolProvider#workload_identity_pool_provider_id}
- Specified by:
getWorkloadIdentityPoolProviderIdin interfaceIamWorkloadIdentityPoolProviderConfig
-
getAttributeCondition
public final String getAttributeCondition()
Description copied from interface:IamWorkloadIdentityPoolProviderConfigA Common Expression Language expression, in plain text, to restrict what otherwise valid authentication credentials issued by the provider should not be accepted.The expression must output a boolean representing whether to allow the federation. The following keywords may be referenced in the expressions: * 'assertion': JSON representing the authentication credential issued by the provider. * 'google': The Google attributes mapped from the assertion in the 'attribute_mappings'. * 'attribute': The custom attributes mapped from the assertion in the 'attribute_mappings'. The maximum length of the attribute condition expression is 4096 characters. If unspecified, all valid authentication credential are accepted. The following example shows how to only allow credentials with a mapped 'google.groups' value of 'admins': ``` "'admins' in google.groups" ``` Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/iam_workload_identity_pool_provider#attribute_condition IamWorkloadIdentityPoolProvider#attribute_condition}
- Specified by:
getAttributeConditionin interfaceIamWorkloadIdentityPoolProviderConfig
-
getAttributeMapping
public final Map<String,String> getAttributeMapping()
Description copied from interface:IamWorkloadIdentityPoolProviderConfigMaps attributes from authentication credentials issued by an external identity provider to Google Cloud attributes, such as 'subject' and 'segment'.Each key must be a string specifying the Google Cloud IAM attribute to map to. The following keys are supported: * 'google.subject': The principal IAM is authenticating. You can reference this value in IAM bindings. This is also the subject that appears in Cloud Logging logs. Cannot exceed 127 characters. * 'google.groups': Groups the external identity belongs to. You can grant groups access to resources using an IAM 'principalSet' binding; access applies to all members of the group. You can also provide custom attributes by specifying 'attribute.{custom_attribute}', where '{custom_attribute}' is the name of the custom attribute to be mapped. You can define a maximum of 50 custom attributes. The maximum length of a mapped attribute key is 100 characters, and the key may only contain the characters [a-z0-9_]. You can reference these attributes in IAM policies to define fine-grained access for a workload to Google Cloud resources. For example: * 'google.subject': 'principal://iam.googleapis.com/projects/{project}/locations/{location}/workloadIdentityPools/{pool}/subject/{value}' * 'google.groups': 'principalSet://iam.googleapis.com/projects/{project}/locations/{location}/workloadIdentityPools/{pool}/group/{value}' * 'attribute.{custom_attribute}': 'principalSet://iam.googleapis.com/projects/{project}/locations/{location}/workloadIdentityPools/{pool}/attribute.{custom_attribute}/{value}' Each value must be a [Common Expression Language](https://opensource.google/projects/cel) function that maps an identity provider credential to the normalized attribute specified by the corresponding map key. You can use the 'assertion' keyword in the expression to access a JSON representation of the authentication credential issued by the provider. The maximum length of an attribute mapping expression is 2048 characters. When evaluated, the total size of all mapped attributes must not exceed 8KB. For AWS providers, the following rules apply: * If no attribute mapping is defined, the following default mapping applies: ``` { "google.subject":"assertion.arn", "attribute.aws_role": "assertion.arn.contains('assumed-role')" " ? assertion.arn.extract('{account_arn}assumed-role/')" " + 'assumed-role/'" " + assertion.arn.extract('assumed-role/{role_name}/')" " : assertion.arn", } ``` * If any custom attribute mappings are defined, they must include a mapping to the 'google.subject' attribute. For OIDC providers, the following rules apply: * Custom attribute mappings must be defined, and must include a mapping to the 'google.subject' attribute. For example, the following maps the 'sub' claim of the incoming credential to the 'subject' attribute on a Google token. ``` {"google.subject": "assertion.sub"} ``` Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/iam_workload_identity_pool_provider#attribute_mapping IamWorkloadIdentityPoolProvider#attribute_mapping}
- Specified by:
getAttributeMappingin interfaceIamWorkloadIdentityPoolProviderConfig
-
getAws
public final IamWorkloadIdentityPoolProviderAws getAws()
Description copied from interface:IamWorkloadIdentityPoolProviderConfigaws block.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/iam_workload_identity_pool_provider#aws IamWorkloadIdentityPoolProvider#aws}
- Specified by:
getAwsin interfaceIamWorkloadIdentityPoolProviderConfig
-
getDescription
public final String getDescription()
Description copied from interface:IamWorkloadIdentityPoolProviderConfigA description for the provider. Cannot exceed 256 characters.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/iam_workload_identity_pool_provider#description IamWorkloadIdentityPoolProvider#description}
- Specified by:
getDescriptionin interfaceIamWorkloadIdentityPoolProviderConfig
-
getDisabled
public final Object getDisabled()
Description copied from interface:IamWorkloadIdentityPoolProviderConfigWhether the provider is disabled. You cannot use a disabled provider to exchange tokens. However, existing tokens still grant access.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/iam_workload_identity_pool_provider#disabled IamWorkloadIdentityPoolProvider#disabled}
- Specified by:
getDisabledin interfaceIamWorkloadIdentityPoolProviderConfig
-
getDisplayName
public final String getDisplayName()
Description copied from interface:IamWorkloadIdentityPoolProviderConfigA display name for the provider. Cannot exceed 32 characters.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/iam_workload_identity_pool_provider#display_name IamWorkloadIdentityPoolProvider#display_name}
- Specified by:
getDisplayNamein interfaceIamWorkloadIdentityPoolProviderConfig
-
getId
public final String getId()
Description copied from interface:IamWorkloadIdentityPoolProviderConfigDocs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/iam_workload_identity_pool_provider#id IamWorkloadIdentityPoolProvider#id}.Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.
- Specified by:
getIdin interfaceIamWorkloadIdentityPoolProviderConfig
-
getOidc
public final IamWorkloadIdentityPoolProviderOidc getOidc()
Description copied from interface:IamWorkloadIdentityPoolProviderConfigoidc block.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/iam_workload_identity_pool_provider#oidc IamWorkloadIdentityPoolProvider#oidc}
- Specified by:
getOidcin interfaceIamWorkloadIdentityPoolProviderConfig
-
getProject
public final String getProject()
Description copied from interface:IamWorkloadIdentityPoolProviderConfigDocs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/iam_workload_identity_pool_provider#project IamWorkloadIdentityPoolProvider#project}.- Specified by:
getProjectin interfaceIamWorkloadIdentityPoolProviderConfig
-
getSaml
public final IamWorkloadIdentityPoolProviderSaml getSaml()
Description copied from interface:IamWorkloadIdentityPoolProviderConfigsaml block.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/iam_workload_identity_pool_provider#saml IamWorkloadIdentityPoolProvider#saml}
- Specified by:
getSamlin interfaceIamWorkloadIdentityPoolProviderConfig
-
getTimeouts
public final IamWorkloadIdentityPoolProviderTimeouts getTimeouts()
Description copied from interface:IamWorkloadIdentityPoolProviderConfigtimeouts block.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/iam_workload_identity_pool_provider#timeouts IamWorkloadIdentityPoolProvider#timeouts}
- Specified by:
getTimeoutsin interfaceIamWorkloadIdentityPoolProviderConfig
-
getConnection
public final Object getConnection()
- Specified by:
getConnectionin interfacecom.hashicorp.cdktf.TerraformMetaArguments
-
getCount
public final Object getCount()
- Specified by:
getCountin interfacecom.hashicorp.cdktf.TerraformMetaArguments
-
getDependsOn
public final List<com.hashicorp.cdktf.ITerraformDependable> getDependsOn()
- Specified by:
getDependsOnin interfacecom.hashicorp.cdktf.TerraformMetaArguments
-
getForEach
public final com.hashicorp.cdktf.ITerraformIterator getForEach()
- Specified by:
getForEachin interfacecom.hashicorp.cdktf.TerraformMetaArguments
-
getLifecycle
public final com.hashicorp.cdktf.TerraformResourceLifecycle getLifecycle()
- Specified by:
getLifecyclein interfacecom.hashicorp.cdktf.TerraformMetaArguments
-
getProvider
public final com.hashicorp.cdktf.TerraformProvider getProvider()
- Specified by:
getProviderin interfacecom.hashicorp.cdktf.TerraformMetaArguments
-
getProvisioners
public final List<Object> getProvisioners()
- Specified by:
getProvisionersin interfacecom.hashicorp.cdktf.TerraformMetaArguments
-
$jsii$toJson
@Internal public com.fasterxml.jackson.databind.JsonNode $jsii$toJson()
- Specified by:
$jsii$toJsonin interfacesoftware.amazon.jsii.JsiiSerializable
-
-