HashiCorp Vault

Pulumi Official
Package maintained by Pulumi
v5.6.0 published on Tuesday, Aug 16, 2022 by Pulumi

AuthBackendRole

Manages an AWS auth backend role in a Vault server. Roles constrain the instances or principals that can perform the login operation against the backend. See the Vault documentation for more information.

Example Usage

using System.Collections.Generic;
using Pulumi;
using Vault = Pulumi.Vault;

return await Deployment.RunAsync(() => 
{
    var aws = new Vault.AuthBackend("aws", new()
    {
        Type = "aws",
    });

    var example = new Vault.Aws.AuthBackendRole("example", new()
    {
        Backend = aws.Path,
        Role = "test-role",
        AuthType = "iam",
        BoundAmiIds = new[]
        {
            "ami-8c1be5f6",
        },
        BoundAccountIds = new[]
        {
            "123456789012",
        },
        BoundVpcIds = new[]
        {
            "vpc-b61106d4",
        },
        BoundSubnetIds = new[]
        {
            "vpc-133128f1",
        },
        BoundIamRoleArns = new[]
        {
            "arn:aws:iam::123456789012:role/MyRole",
        },
        BoundIamInstanceProfileArns = new[]
        {
            "arn:aws:iam::123456789012:instance-profile/MyProfile",
        },
        InferredEntityType = "ec2_instance",
        InferredAwsRegion = "us-east-1",
        TokenTtl = 60,
        TokenMaxTtl = 120,
        TokenPolicies = new[]
        {
            "default",
            "dev",
            "prod",
        },
    });

});
package main

import (
	"github.com/pulumi/pulumi-vault/sdk/v5/go/vault"
	"github.com/pulumi/pulumi-vault/sdk/v5/go/vault/aws"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		aws, err := vault.NewAuthBackend(ctx, "aws", &vault.AuthBackendArgs{
			Type: pulumi.String("aws"),
		})
		if err != nil {
			return err
		}
		_, err = aws.NewAuthBackendRole(ctx, "example", &aws.AuthBackendRoleArgs{
			Backend:  aws.Path,
			Role:     pulumi.String("test-role"),
			AuthType: pulumi.String("iam"),
			BoundAmiIds: pulumi.StringArray{
				pulumi.String("ami-8c1be5f6"),
			},
			BoundAccountIds: pulumi.StringArray{
				pulumi.String("123456789012"),
			},
			BoundVpcIds: pulumi.StringArray{
				pulumi.String("vpc-b61106d4"),
			},
			BoundSubnetIds: pulumi.StringArray{
				pulumi.String("vpc-133128f1"),
			},
			BoundIamRoleArns: pulumi.StringArray{
				pulumi.String("arn:aws:iam::123456789012:role/MyRole"),
			},
			BoundIamInstanceProfileArns: pulumi.StringArray{
				pulumi.String("arn:aws:iam::123456789012:instance-profile/MyProfile"),
			},
			InferredEntityType: pulumi.String("ec2_instance"),
			InferredAwsRegion:  pulumi.String("us-east-1"),
			TokenTtl:           pulumi.Int(60),
			TokenMaxTtl:        pulumi.Int(120),
			TokenPolicies: pulumi.StringArray{
				pulumi.String("default"),
				pulumi.String("dev"),
				pulumi.String("prod"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.vault.AuthBackend;
import com.pulumi.vault.AuthBackendArgs;
import com.pulumi.vault.aws.AuthBackendRole;
import com.pulumi.vault.aws.AuthBackendRoleArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    public static void stack(Context ctx) {
        var aws = new AuthBackend("aws", AuthBackendArgs.builder()        
            .type("aws")
            .build());

        var example = new AuthBackendRole("example", AuthBackendRoleArgs.builder()        
            .backend(aws.path())
            .role("test-role")
            .authType("iam")
            .boundAmiIds("ami-8c1be5f6")
            .boundAccountIds("123456789012")
            .boundVpcIds("vpc-b61106d4")
            .boundSubnetIds("vpc-133128f1")
            .boundIamRoleArns("arn:aws:iam::123456789012:role/MyRole")
            .boundIamInstanceProfileArns("arn:aws:iam::123456789012:instance-profile/MyProfile")
            .inferredEntityType("ec2_instance")
            .inferredAwsRegion("us-east-1")
            .tokenTtl(60)
            .tokenMaxTtl(120)
            .tokenPolicies(            
                "default",
                "dev",
                "prod")
            .build());

    }
}
import pulumi
import pulumi_vault as vault

aws = vault.AuthBackend("aws", type="aws")
example = vault.aws.AuthBackendRole("example",
    backend=aws.path,
    role="test-role",
    auth_type="iam",
    bound_ami_ids=["ami-8c1be5f6"],
    bound_account_ids=["123456789012"],
    bound_vpc_ids=["vpc-b61106d4"],
    bound_subnet_ids=["vpc-133128f1"],
    bound_iam_role_arns=["arn:aws:iam::123456789012:role/MyRole"],
    bound_iam_instance_profile_arns=["arn:aws:iam::123456789012:instance-profile/MyProfile"],
    inferred_entity_type="ec2_instance",
    inferred_aws_region="us-east-1",
    token_ttl=60,
    token_max_ttl=120,
    token_policies=[
        "default",
        "dev",
        "prod",
    ])
import * as pulumi from "@pulumi/pulumi";
import * as vault from "@pulumi/vault";

const aws = new vault.AuthBackend("aws", {type: "aws"});
const example = new vault.aws.AuthBackendRole("example", {
    backend: aws.path,
    role: "test-role",
    authType: "iam",
    boundAmiIds: ["ami-8c1be5f6"],
    boundAccountIds: ["123456789012"],
    boundVpcIds: ["vpc-b61106d4"],
    boundSubnetIds: ["vpc-133128f1"],
    boundIamRoleArns: ["arn:aws:iam::123456789012:role/MyRole"],
    boundIamInstanceProfileArns: ["arn:aws:iam::123456789012:instance-profile/MyProfile"],
    inferredEntityType: "ec2_instance",
    inferredAwsRegion: "us-east-1",
    tokenTtl: 60,
    tokenMaxTtl: 120,
    tokenPolicies: [
        "default",
        "dev",
        "prod",
    ],
});
resources:
  aws:
    type: vault:AuthBackend
    properties:
      type: aws
  example:
    type: vault:aws:AuthBackendRole
    properties:
      backend: ${aws.path}
      role: test-role
      authType: iam
      boundAmiIds:
        - ami-8c1be5f6
      boundAccountIds:
        - 123456789012
      boundVpcIds:
        - vpc-b61106d4
      boundSubnetIds:
        - vpc-133128f1
      boundIamRoleArns:
        - arn:aws:iam::123456789012:role/MyRole
      boundIamInstanceProfileArns:
        - arn:aws:iam::123456789012:instance-profile/MyProfile
      inferredEntityType: ec2_instance
      inferredAwsRegion: us-east-1
      tokenTtl: 60
      tokenMaxTtl: 120
      tokenPolicies:
        - default
        - dev
        - prod

Create a AuthBackendRole Resource

new AuthBackendRole(name: string, args: AuthBackendRoleArgs, opts?: CustomResourceOptions);
@overload
def AuthBackendRole(resource_name: str,
                    opts: Optional[ResourceOptions] = None,
                    allow_instance_migration: Optional[bool] = None,
                    auth_type: Optional[str] = None,
                    backend: Optional[str] = None,
                    bound_account_ids: Optional[Sequence[str]] = None,
                    bound_ami_ids: Optional[Sequence[str]] = None,
                    bound_ec2_instance_ids: Optional[Sequence[str]] = None,
                    bound_iam_instance_profile_arns: Optional[Sequence[str]] = None,
                    bound_iam_principal_arns: Optional[Sequence[str]] = None,
                    bound_iam_role_arns: Optional[Sequence[str]] = None,
                    bound_regions: Optional[Sequence[str]] = None,
                    bound_subnet_ids: Optional[Sequence[str]] = None,
                    bound_vpc_ids: Optional[Sequence[str]] = None,
                    disallow_reauthentication: Optional[bool] = None,
                    inferred_aws_region: Optional[str] = None,
                    inferred_entity_type: Optional[str] = None,
                    resolve_aws_unique_ids: Optional[bool] = None,
                    role: Optional[str] = None,
                    role_tag: Optional[str] = None,
                    token_bound_cidrs: Optional[Sequence[str]] = None,
                    token_explicit_max_ttl: Optional[int] = None,
                    token_max_ttl: Optional[int] = None,
                    token_no_default_policy: Optional[bool] = None,
                    token_num_uses: Optional[int] = None,
                    token_period: Optional[int] = None,
                    token_policies: Optional[Sequence[str]] = None,
                    token_ttl: Optional[int] = None,
                    token_type: Optional[str] = None)
@overload
def AuthBackendRole(resource_name: str,
                    args: AuthBackendRoleArgs,
                    opts: Optional[ResourceOptions] = None)
func NewAuthBackendRole(ctx *Context, name string, args AuthBackendRoleArgs, opts ...ResourceOption) (*AuthBackendRole, error)
public AuthBackendRole(string name, AuthBackendRoleArgs args, CustomResourceOptions? opts = null)
public AuthBackendRole(String name, AuthBackendRoleArgs args)
public AuthBackendRole(String name, AuthBackendRoleArgs args, CustomResourceOptions options)
type: vault:aws:AuthBackendRole
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

name string
The unique name of the resource.
args AuthBackendRoleArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name str
The unique name of the resource.
args AuthBackendRoleArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name string
The unique name of the resource.
args AuthBackendRoleArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name string
The unique name of the resource.
args AuthBackendRoleArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name String
The unique name of the resource.
args AuthBackendRoleArgs
The arguments to resource properties.
options CustomResourceOptions
Bag of options to control resource's behavior.

AuthBackendRole Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

Inputs

The AuthBackendRole resource accepts the following input properties:

Role string

The name of the role.

AllowInstanceMigration bool

If set to true, allows migration of the underlying instance where the client resides.

AuthType string

The auth type permitted for this role. Valid choices are ec2 and iam. Defaults to iam.

Backend string

Unique name of the auth backend to configure.

BoundAccountIds List<string>

If set, defines a constraint on the EC2 instances that can perform the login operation that they should be using the account ID specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

BoundAmiIds List<string>

If set, defines a constraint on the EC2 instances that can perform the login operation that they should be using the AMI ID specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

BoundEc2InstanceIds List<string>

Only EC2 instances that match this instance ID will be permitted to log in.

BoundIamInstanceProfileArns List<string>

If set, defines a constraint on the EC2 instances that can perform the login operation that they must be associated with an IAM instance profile ARN which has a prefix that matches the value specified by this field. The value is prefix-matched as though it were a glob ending in *. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

BoundIamPrincipalArns List<string>

If set, defines the IAM principal that must be authenticated when auth_type is set to iam. Wildcards are supported at the end of the ARN.

BoundIamRoleArns List<string>

If set, defines a constraint on the EC2 instances that can perform the login operation that they must match the IAM role ARN specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

BoundRegions List<string>

If set, defines a constraint on the EC2 instances that can perform the login operation that the region in their identity document must match the one specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

BoundSubnetIds List<string>

If set, defines a constraint on the EC2 instances that can perform the login operation that they be associated with the subnet ID that matches the value specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

BoundVpcIds List<string>

If set, defines a constraint on the EC2 instances that can perform the login operation that they be associated with the VPC ID that matches the value specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

DisallowReauthentication bool

IF set to true, only allows a single token to be granted per instance ID. This can only be set when auth_type is set to ec2.

InferredAwsRegion string

When inferred_entity_type is set, this is the region to search for the inferred entities. Required if inferred_entity_type is set. This only applies when auth_type is set to iam.

InferredEntityType string

If set, instructs Vault to turn on inferencing. The only valid value is ec2_instance, which instructs Vault to infer that the role comes from an EC2 instance in an IAM instance profile. This only applies when auth_type is set to iam.

ResolveAwsUniqueIds bool

Only valid when auth_type is iam. If set to true, the bound_iam_principal_arns are resolved to AWS Unique IDs for the bound principal ARN. This field is ignored when a bound_iam_principal_arn ends in a wildcard. Resolving to unique IDs more closely mimics the behavior of AWS services in that if an IAM user or role is deleted and a new one is recreated with the same name, those new users or roles won't get access to roles in Vault that were permissioned to the prior principals of the same name. Defaults to true. Once set to true, this cannot be changed to false without recreating the role.

RoleTag string

If set, enable role tags for this role. The value set for this field should be the key of the tag on the EC2 instance. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

TokenBoundCidrs List<string>

List of CIDR blocks; if set, specifies blocks of IP addresses which can authenticate successfully, and ties the resulting token to these blocks as well.

TokenExplicitMaxTtl int

If set, will encode an explicit max TTL onto the token in number of seconds. This is a hard cap even if token_ttl and token_max_ttl would otherwise allow a renewal.

TokenMaxTtl int

The maximum lifetime for generated tokens in number of seconds. Its current value will be referenced at renewal time.

TokenNoDefaultPolicy bool

If set, the default policy will not be set on generated tokens; otherwise it will be added to the policies set in token_policies.

TokenNumUses int

The maximum number of times a generated token may be used (within its lifetime); 0 means unlimited.

TokenPeriod int

If set, indicates that the token generated using this role should never expire. The token should be renewed within the duration specified by this value. At each renewal, the token's TTL will be set to the value of this field. Specified in seconds.

TokenPolicies List<string>

List of policies to encode onto generated tokens. Depending on the auth method, this list may be supplemented by user/group/other values.

TokenTtl int

The incremental lifetime for generated tokens in number of seconds. Its current value will be referenced at renewal time.

TokenType string

The type of token that should be generated. Can be service, batch, or default to use the mount's tuned default (which unless changed will be service tokens). For token store roles, there are two additional possibilities: default-service and default-batch which specify the type to return unless the client requests a different type at generation time.

Role string

The name of the role.

AllowInstanceMigration bool

If set to true, allows migration of the underlying instance where the client resides.

AuthType string

The auth type permitted for this role. Valid choices are ec2 and iam. Defaults to iam.

Backend string

Unique name of the auth backend to configure.

BoundAccountIds []string

If set, defines a constraint on the EC2 instances that can perform the login operation that they should be using the account ID specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

BoundAmiIds []string

If set, defines a constraint on the EC2 instances that can perform the login operation that they should be using the AMI ID specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

BoundEc2InstanceIds []string

Only EC2 instances that match this instance ID will be permitted to log in.

BoundIamInstanceProfileArns []string

If set, defines a constraint on the EC2 instances that can perform the login operation that they must be associated with an IAM instance profile ARN which has a prefix that matches the value specified by this field. The value is prefix-matched as though it were a glob ending in *. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

BoundIamPrincipalArns []string

If set, defines the IAM principal that must be authenticated when auth_type is set to iam. Wildcards are supported at the end of the ARN.

BoundIamRoleArns []string

If set, defines a constraint on the EC2 instances that can perform the login operation that they must match the IAM role ARN specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

BoundRegions []string

If set, defines a constraint on the EC2 instances that can perform the login operation that the region in their identity document must match the one specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

BoundSubnetIds []string

If set, defines a constraint on the EC2 instances that can perform the login operation that they be associated with the subnet ID that matches the value specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

BoundVpcIds []string

If set, defines a constraint on the EC2 instances that can perform the login operation that they be associated with the VPC ID that matches the value specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

DisallowReauthentication bool

IF set to true, only allows a single token to be granted per instance ID. This can only be set when auth_type is set to ec2.

InferredAwsRegion string

When inferred_entity_type is set, this is the region to search for the inferred entities. Required if inferred_entity_type is set. This only applies when auth_type is set to iam.

InferredEntityType string

If set, instructs Vault to turn on inferencing. The only valid value is ec2_instance, which instructs Vault to infer that the role comes from an EC2 instance in an IAM instance profile. This only applies when auth_type is set to iam.

ResolveAwsUniqueIds bool

Only valid when auth_type is iam. If set to true, the bound_iam_principal_arns are resolved to AWS Unique IDs for the bound principal ARN. This field is ignored when a bound_iam_principal_arn ends in a wildcard. Resolving to unique IDs more closely mimics the behavior of AWS services in that if an IAM user or role is deleted and a new one is recreated with the same name, those new users or roles won't get access to roles in Vault that were permissioned to the prior principals of the same name. Defaults to true. Once set to true, this cannot be changed to false without recreating the role.

RoleTag string

If set, enable role tags for this role. The value set for this field should be the key of the tag on the EC2 instance. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

TokenBoundCidrs []string

List of CIDR blocks; if set, specifies blocks of IP addresses which can authenticate successfully, and ties the resulting token to these blocks as well.

TokenExplicitMaxTtl int

If set, will encode an explicit max TTL onto the token in number of seconds. This is a hard cap even if token_ttl and token_max_ttl would otherwise allow a renewal.

TokenMaxTtl int

The maximum lifetime for generated tokens in number of seconds. Its current value will be referenced at renewal time.

TokenNoDefaultPolicy bool

If set, the default policy will not be set on generated tokens; otherwise it will be added to the policies set in token_policies.

TokenNumUses int

The maximum number of times a generated token may be used (within its lifetime); 0 means unlimited.

TokenPeriod int

If set, indicates that the token generated using this role should never expire. The token should be renewed within the duration specified by this value. At each renewal, the token's TTL will be set to the value of this field. Specified in seconds.

TokenPolicies []string

List of policies to encode onto generated tokens. Depending on the auth method, this list may be supplemented by user/group/other values.

TokenTtl int

The incremental lifetime for generated tokens in number of seconds. Its current value will be referenced at renewal time.

TokenType string

The type of token that should be generated. Can be service, batch, or default to use the mount's tuned default (which unless changed will be service tokens). For token store roles, there are two additional possibilities: default-service and default-batch which specify the type to return unless the client requests a different type at generation time.

role String

The name of the role.

allowInstanceMigration Boolean

If set to true, allows migration of the underlying instance where the client resides.

authType String

The auth type permitted for this role. Valid choices are ec2 and iam. Defaults to iam.

backend String

Unique name of the auth backend to configure.

boundAccountIds List<String>

If set, defines a constraint on the EC2 instances that can perform the login operation that they should be using the account ID specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

boundAmiIds List<String>

If set, defines a constraint on the EC2 instances that can perform the login operation that they should be using the AMI ID specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

boundEc2InstanceIds List<String>

Only EC2 instances that match this instance ID will be permitted to log in.

boundIamInstanceProfileArns List<String>

If set, defines a constraint on the EC2 instances that can perform the login operation that they must be associated with an IAM instance profile ARN which has a prefix that matches the value specified by this field. The value is prefix-matched as though it were a glob ending in *. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

boundIamPrincipalArns List<String>

If set, defines the IAM principal that must be authenticated when auth_type is set to iam. Wildcards are supported at the end of the ARN.

boundIamRoleArns List<String>

If set, defines a constraint on the EC2 instances that can perform the login operation that they must match the IAM role ARN specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

boundRegions List<String>

If set, defines a constraint on the EC2 instances that can perform the login operation that the region in their identity document must match the one specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

boundSubnetIds List<String>

If set, defines a constraint on the EC2 instances that can perform the login operation that they be associated with the subnet ID that matches the value specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

boundVpcIds List<String>

If set, defines a constraint on the EC2 instances that can perform the login operation that they be associated with the VPC ID that matches the value specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

disallowReauthentication Boolean

IF set to true, only allows a single token to be granted per instance ID. This can only be set when auth_type is set to ec2.

inferredAwsRegion String

When inferred_entity_type is set, this is the region to search for the inferred entities. Required if inferred_entity_type is set. This only applies when auth_type is set to iam.

inferredEntityType String

If set, instructs Vault to turn on inferencing. The only valid value is ec2_instance, which instructs Vault to infer that the role comes from an EC2 instance in an IAM instance profile. This only applies when auth_type is set to iam.

resolveAwsUniqueIds Boolean

Only valid when auth_type is iam. If set to true, the bound_iam_principal_arns are resolved to AWS Unique IDs for the bound principal ARN. This field is ignored when a bound_iam_principal_arn ends in a wildcard. Resolving to unique IDs more closely mimics the behavior of AWS services in that if an IAM user or role is deleted and a new one is recreated with the same name, those new users or roles won't get access to roles in Vault that were permissioned to the prior principals of the same name. Defaults to true. Once set to true, this cannot be changed to false without recreating the role.

roleTag String

If set, enable role tags for this role. The value set for this field should be the key of the tag on the EC2 instance. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

tokenBoundCidrs List<String>

List of CIDR blocks; if set, specifies blocks of IP addresses which can authenticate successfully, and ties the resulting token to these blocks as well.

tokenExplicitMaxTtl Integer

If set, will encode an explicit max TTL onto the token in number of seconds. This is a hard cap even if token_ttl and token_max_ttl would otherwise allow a renewal.

tokenMaxTtl Integer

The maximum lifetime for generated tokens in number of seconds. Its current value will be referenced at renewal time.

tokenNoDefaultPolicy Boolean

If set, the default policy will not be set on generated tokens; otherwise it will be added to the policies set in token_policies.

tokenNumUses Integer

The maximum number of times a generated token may be used (within its lifetime); 0 means unlimited.

tokenPeriod Integer

If set, indicates that the token generated using this role should never expire. The token should be renewed within the duration specified by this value. At each renewal, the token's TTL will be set to the value of this field. Specified in seconds.

tokenPolicies List<String>

List of policies to encode onto generated tokens. Depending on the auth method, this list may be supplemented by user/group/other values.

tokenTtl Integer

The incremental lifetime for generated tokens in number of seconds. Its current value will be referenced at renewal time.

tokenType String

The type of token that should be generated. Can be service, batch, or default to use the mount's tuned default (which unless changed will be service tokens). For token store roles, there are two additional possibilities: default-service and default-batch which specify the type to return unless the client requests a different type at generation time.

role string

The name of the role.

allowInstanceMigration boolean

If set to true, allows migration of the underlying instance where the client resides.

authType string

The auth type permitted for this role. Valid choices are ec2 and iam. Defaults to iam.

backend string

Unique name of the auth backend to configure.

boundAccountIds string[]

If set, defines a constraint on the EC2 instances that can perform the login operation that they should be using the account ID specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

boundAmiIds string[]

If set, defines a constraint on the EC2 instances that can perform the login operation that they should be using the AMI ID specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

boundEc2InstanceIds string[]

Only EC2 instances that match this instance ID will be permitted to log in.

boundIamInstanceProfileArns string[]

If set, defines a constraint on the EC2 instances that can perform the login operation that they must be associated with an IAM instance profile ARN which has a prefix that matches the value specified by this field. The value is prefix-matched as though it were a glob ending in *. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

boundIamPrincipalArns string[]

If set, defines the IAM principal that must be authenticated when auth_type is set to iam. Wildcards are supported at the end of the ARN.

boundIamRoleArns string[]

If set, defines a constraint on the EC2 instances that can perform the login operation that they must match the IAM role ARN specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

boundRegions string[]

If set, defines a constraint on the EC2 instances that can perform the login operation that the region in their identity document must match the one specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

boundSubnetIds string[]

If set, defines a constraint on the EC2 instances that can perform the login operation that they be associated with the subnet ID that matches the value specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

boundVpcIds string[]

If set, defines a constraint on the EC2 instances that can perform the login operation that they be associated with the VPC ID that matches the value specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

disallowReauthentication boolean

IF set to true, only allows a single token to be granted per instance ID. This can only be set when auth_type is set to ec2.

inferredAwsRegion string

When inferred_entity_type is set, this is the region to search for the inferred entities. Required if inferred_entity_type is set. This only applies when auth_type is set to iam.

inferredEntityType string

If set, instructs Vault to turn on inferencing. The only valid value is ec2_instance, which instructs Vault to infer that the role comes from an EC2 instance in an IAM instance profile. This only applies when auth_type is set to iam.

resolveAwsUniqueIds boolean

Only valid when auth_type is iam. If set to true, the bound_iam_principal_arns are resolved to AWS Unique IDs for the bound principal ARN. This field is ignored when a bound_iam_principal_arn ends in a wildcard. Resolving to unique IDs more closely mimics the behavior of AWS services in that if an IAM user or role is deleted and a new one is recreated with the same name, those new users or roles won't get access to roles in Vault that were permissioned to the prior principals of the same name. Defaults to true. Once set to true, this cannot be changed to false without recreating the role.

roleTag string

If set, enable role tags for this role. The value set for this field should be the key of the tag on the EC2 instance. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

tokenBoundCidrs string[]

List of CIDR blocks; if set, specifies blocks of IP addresses which can authenticate successfully, and ties the resulting token to these blocks as well.

tokenExplicitMaxTtl number

If set, will encode an explicit max TTL onto the token in number of seconds. This is a hard cap even if token_ttl and token_max_ttl would otherwise allow a renewal.

tokenMaxTtl number

The maximum lifetime for generated tokens in number of seconds. Its current value will be referenced at renewal time.

tokenNoDefaultPolicy boolean

If set, the default policy will not be set on generated tokens; otherwise it will be added to the policies set in token_policies.

tokenNumUses number

The maximum number of times a generated token may be used (within its lifetime); 0 means unlimited.

tokenPeriod number

If set, indicates that the token generated using this role should never expire. The token should be renewed within the duration specified by this value. At each renewal, the token's TTL will be set to the value of this field. Specified in seconds.

tokenPolicies string[]

List of policies to encode onto generated tokens. Depending on the auth method, this list may be supplemented by user/group/other values.

tokenTtl number

The incremental lifetime for generated tokens in number of seconds. Its current value will be referenced at renewal time.

tokenType string

The type of token that should be generated. Can be service, batch, or default to use the mount's tuned default (which unless changed will be service tokens). For token store roles, there are two additional possibilities: default-service and default-batch which specify the type to return unless the client requests a different type at generation time.

role str

The name of the role.

allow_instance_migration bool

If set to true, allows migration of the underlying instance where the client resides.

auth_type str

The auth type permitted for this role. Valid choices are ec2 and iam. Defaults to iam.

backend str

Unique name of the auth backend to configure.

bound_account_ids Sequence[str]

If set, defines a constraint on the EC2 instances that can perform the login operation that they should be using the account ID specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

bound_ami_ids Sequence[str]

If set, defines a constraint on the EC2 instances that can perform the login operation that they should be using the AMI ID specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

bound_ec2_instance_ids Sequence[str]

Only EC2 instances that match this instance ID will be permitted to log in.

bound_iam_instance_profile_arns Sequence[str]

If set, defines a constraint on the EC2 instances that can perform the login operation that they must be associated with an IAM instance profile ARN which has a prefix that matches the value specified by this field. The value is prefix-matched as though it were a glob ending in *. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

bound_iam_principal_arns Sequence[str]

If set, defines the IAM principal that must be authenticated when auth_type is set to iam. Wildcards are supported at the end of the ARN.

bound_iam_role_arns Sequence[str]

If set, defines a constraint on the EC2 instances that can perform the login operation that they must match the IAM role ARN specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

bound_regions Sequence[str]

If set, defines a constraint on the EC2 instances that can perform the login operation that the region in their identity document must match the one specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

bound_subnet_ids Sequence[str]

If set, defines a constraint on the EC2 instances that can perform the login operation that they be associated with the subnet ID that matches the value specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

bound_vpc_ids Sequence[str]

If set, defines a constraint on the EC2 instances that can perform the login operation that they be associated with the VPC ID that matches the value specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

disallow_reauthentication bool

IF set to true, only allows a single token to be granted per instance ID. This can only be set when auth_type is set to ec2.

inferred_aws_region str

When inferred_entity_type is set, this is the region to search for the inferred entities. Required if inferred_entity_type is set. This only applies when auth_type is set to iam.

inferred_entity_type str

If set, instructs Vault to turn on inferencing. The only valid value is ec2_instance, which instructs Vault to infer that the role comes from an EC2 instance in an IAM instance profile. This only applies when auth_type is set to iam.

resolve_aws_unique_ids bool

Only valid when auth_type is iam. If set to true, the bound_iam_principal_arns are resolved to AWS Unique IDs for the bound principal ARN. This field is ignored when a bound_iam_principal_arn ends in a wildcard. Resolving to unique IDs more closely mimics the behavior of AWS services in that if an IAM user or role is deleted and a new one is recreated with the same name, those new users or roles won't get access to roles in Vault that were permissioned to the prior principals of the same name. Defaults to true. Once set to true, this cannot be changed to false without recreating the role.

role_tag str

If set, enable role tags for this role. The value set for this field should be the key of the tag on the EC2 instance. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

token_bound_cidrs Sequence[str]

List of CIDR blocks; if set, specifies blocks of IP addresses which can authenticate successfully, and ties the resulting token to these blocks as well.

token_explicit_max_ttl int

If set, will encode an explicit max TTL onto the token in number of seconds. This is a hard cap even if token_ttl and token_max_ttl would otherwise allow a renewal.

token_max_ttl int

The maximum lifetime for generated tokens in number of seconds. Its current value will be referenced at renewal time.

token_no_default_policy bool

If set, the default policy will not be set on generated tokens; otherwise it will be added to the policies set in token_policies.

token_num_uses int

The maximum number of times a generated token may be used (within its lifetime); 0 means unlimited.

token_period int

If set, indicates that the token generated using this role should never expire. The token should be renewed within the duration specified by this value. At each renewal, the token's TTL will be set to the value of this field. Specified in seconds.

token_policies Sequence[str]

List of policies to encode onto generated tokens. Depending on the auth method, this list may be supplemented by user/group/other values.

token_ttl int

The incremental lifetime for generated tokens in number of seconds. Its current value will be referenced at renewal time.

token_type str

The type of token that should be generated. Can be service, batch, or default to use the mount's tuned default (which unless changed will be service tokens). For token store roles, there are two additional possibilities: default-service and default-batch which specify the type to return unless the client requests a different type at generation time.

role String

The name of the role.

allowInstanceMigration Boolean

If set to true, allows migration of the underlying instance where the client resides.

authType String

The auth type permitted for this role. Valid choices are ec2 and iam. Defaults to iam.

backend String

Unique name of the auth backend to configure.

boundAccountIds List<String>

If set, defines a constraint on the EC2 instances that can perform the login operation that they should be using the account ID specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

boundAmiIds List<String>

If set, defines a constraint on the EC2 instances that can perform the login operation that they should be using the AMI ID specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

boundEc2InstanceIds List<String>

Only EC2 instances that match this instance ID will be permitted to log in.

boundIamInstanceProfileArns List<String>

If set, defines a constraint on the EC2 instances that can perform the login operation that they must be associated with an IAM instance profile ARN which has a prefix that matches the value specified by this field. The value is prefix-matched as though it were a glob ending in *. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

boundIamPrincipalArns List<String>

If set, defines the IAM principal that must be authenticated when auth_type is set to iam. Wildcards are supported at the end of the ARN.

boundIamRoleArns List<String>

If set, defines a constraint on the EC2 instances that can perform the login operation that they must match the IAM role ARN specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

boundRegions List<String>

If set, defines a constraint on the EC2 instances that can perform the login operation that the region in their identity document must match the one specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

boundSubnetIds List<String>

If set, defines a constraint on the EC2 instances that can perform the login operation that they be associated with the subnet ID that matches the value specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

boundVpcIds List<String>

If set, defines a constraint on the EC2 instances that can perform the login operation that they be associated with the VPC ID that matches the value specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

disallowReauthentication Boolean

IF set to true, only allows a single token to be granted per instance ID. This can only be set when auth_type is set to ec2.

inferredAwsRegion String

When inferred_entity_type is set, this is the region to search for the inferred entities. Required if inferred_entity_type is set. This only applies when auth_type is set to iam.

inferredEntityType String

If set, instructs Vault to turn on inferencing. The only valid value is ec2_instance, which instructs Vault to infer that the role comes from an EC2 instance in an IAM instance profile. This only applies when auth_type is set to iam.

resolveAwsUniqueIds Boolean

Only valid when auth_type is iam. If set to true, the bound_iam_principal_arns are resolved to AWS Unique IDs for the bound principal ARN. This field is ignored when a bound_iam_principal_arn ends in a wildcard. Resolving to unique IDs more closely mimics the behavior of AWS services in that if an IAM user or role is deleted and a new one is recreated with the same name, those new users or roles won't get access to roles in Vault that were permissioned to the prior principals of the same name. Defaults to true. Once set to true, this cannot be changed to false without recreating the role.

roleTag String

If set, enable role tags for this role. The value set for this field should be the key of the tag on the EC2 instance. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

tokenBoundCidrs List<String>

List of CIDR blocks; if set, specifies blocks of IP addresses which can authenticate successfully, and ties the resulting token to these blocks as well.

tokenExplicitMaxTtl Number

If set, will encode an explicit max TTL onto the token in number of seconds. This is a hard cap even if token_ttl and token_max_ttl would otherwise allow a renewal.

tokenMaxTtl Number

The maximum lifetime for generated tokens in number of seconds. Its current value will be referenced at renewal time.

tokenNoDefaultPolicy Boolean

If set, the default policy will not be set on generated tokens; otherwise it will be added to the policies set in token_policies.

tokenNumUses Number

The maximum number of times a generated token may be used (within its lifetime); 0 means unlimited.

tokenPeriod Number

If set, indicates that the token generated using this role should never expire. The token should be renewed within the duration specified by this value. At each renewal, the token's TTL will be set to the value of this field. Specified in seconds.

tokenPolicies List<String>

List of policies to encode onto generated tokens. Depending on the auth method, this list may be supplemented by user/group/other values.

tokenTtl Number

The incremental lifetime for generated tokens in number of seconds. Its current value will be referenced at renewal time.

tokenType String

The type of token that should be generated. Can be service, batch, or default to use the mount's tuned default (which unless changed will be service tokens). For token store roles, there are two additional possibilities: default-service and default-batch which specify the type to return unless the client requests a different type at generation time.

Outputs

All input properties are implicitly available as output properties. Additionally, the AuthBackendRole resource produces the following output properties:

Id string

The provider-assigned unique ID for this managed resource.

RoleId string

The Vault generated role ID.

Id string

The provider-assigned unique ID for this managed resource.

RoleId string

The Vault generated role ID.

id String

The provider-assigned unique ID for this managed resource.

roleId String

The Vault generated role ID.

id string

The provider-assigned unique ID for this managed resource.

roleId string

The Vault generated role ID.

id str

The provider-assigned unique ID for this managed resource.

role_id str

The Vault generated role ID.

id String

The provider-assigned unique ID for this managed resource.

roleId String

The Vault generated role ID.

Look up an Existing AuthBackendRole Resource

Get an existing AuthBackendRole resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

public static get(name: string, id: Input<ID>, state?: AuthBackendRoleState, opts?: CustomResourceOptions): AuthBackendRole
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        allow_instance_migration: Optional[bool] = None,
        auth_type: Optional[str] = None,
        backend: Optional[str] = None,
        bound_account_ids: Optional[Sequence[str]] = None,
        bound_ami_ids: Optional[Sequence[str]] = None,
        bound_ec2_instance_ids: Optional[Sequence[str]] = None,
        bound_iam_instance_profile_arns: Optional[Sequence[str]] = None,
        bound_iam_principal_arns: Optional[Sequence[str]] = None,
        bound_iam_role_arns: Optional[Sequence[str]] = None,
        bound_regions: Optional[Sequence[str]] = None,
        bound_subnet_ids: Optional[Sequence[str]] = None,
        bound_vpc_ids: Optional[Sequence[str]] = None,
        disallow_reauthentication: Optional[bool] = None,
        inferred_aws_region: Optional[str] = None,
        inferred_entity_type: Optional[str] = None,
        resolve_aws_unique_ids: Optional[bool] = None,
        role: Optional[str] = None,
        role_id: Optional[str] = None,
        role_tag: Optional[str] = None,
        token_bound_cidrs: Optional[Sequence[str]] = None,
        token_explicit_max_ttl: Optional[int] = None,
        token_max_ttl: Optional[int] = None,
        token_no_default_policy: Optional[bool] = None,
        token_num_uses: Optional[int] = None,
        token_period: Optional[int] = None,
        token_policies: Optional[Sequence[str]] = None,
        token_ttl: Optional[int] = None,
        token_type: Optional[str] = None) -> AuthBackendRole
func GetAuthBackendRole(ctx *Context, name string, id IDInput, state *AuthBackendRoleState, opts ...ResourceOption) (*AuthBackendRole, error)
public static AuthBackendRole Get(string name, Input<string> id, AuthBackendRoleState? state, CustomResourceOptions? opts = null)
public static AuthBackendRole get(String name, Output<String> id, AuthBackendRoleState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
resource_name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
The following state arguments are supported:
AllowInstanceMigration bool

If set to true, allows migration of the underlying instance where the client resides.

AuthType string

The auth type permitted for this role. Valid choices are ec2 and iam. Defaults to iam.

Backend string

Unique name of the auth backend to configure.

BoundAccountIds List<string>

If set, defines a constraint on the EC2 instances that can perform the login operation that they should be using the account ID specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

BoundAmiIds List<string>

If set, defines a constraint on the EC2 instances that can perform the login operation that they should be using the AMI ID specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

BoundEc2InstanceIds List<string>

Only EC2 instances that match this instance ID will be permitted to log in.

BoundIamInstanceProfileArns List<string>

If set, defines a constraint on the EC2 instances that can perform the login operation that they must be associated with an IAM instance profile ARN which has a prefix that matches the value specified by this field. The value is prefix-matched as though it were a glob ending in *. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

BoundIamPrincipalArns List<string>

If set, defines the IAM principal that must be authenticated when auth_type is set to iam. Wildcards are supported at the end of the ARN.

BoundIamRoleArns List<string>

If set, defines a constraint on the EC2 instances that can perform the login operation that they must match the IAM role ARN specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

BoundRegions List<string>

If set, defines a constraint on the EC2 instances that can perform the login operation that the region in their identity document must match the one specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

BoundSubnetIds List<string>

If set, defines a constraint on the EC2 instances that can perform the login operation that they be associated with the subnet ID that matches the value specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

BoundVpcIds List<string>

If set, defines a constraint on the EC2 instances that can perform the login operation that they be associated with the VPC ID that matches the value specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

DisallowReauthentication bool

IF set to true, only allows a single token to be granted per instance ID. This can only be set when auth_type is set to ec2.

InferredAwsRegion string

When inferred_entity_type is set, this is the region to search for the inferred entities. Required if inferred_entity_type is set. This only applies when auth_type is set to iam.

InferredEntityType string

If set, instructs Vault to turn on inferencing. The only valid value is ec2_instance, which instructs Vault to infer that the role comes from an EC2 instance in an IAM instance profile. This only applies when auth_type is set to iam.

ResolveAwsUniqueIds bool

Only valid when auth_type is iam. If set to true, the bound_iam_principal_arns are resolved to AWS Unique IDs for the bound principal ARN. This field is ignored when a bound_iam_principal_arn ends in a wildcard. Resolving to unique IDs more closely mimics the behavior of AWS services in that if an IAM user or role is deleted and a new one is recreated with the same name, those new users or roles won't get access to roles in Vault that were permissioned to the prior principals of the same name. Defaults to true. Once set to true, this cannot be changed to false without recreating the role.

Role string

The name of the role.

RoleId string

The Vault generated role ID.

RoleTag string

If set, enable role tags for this role. The value set for this field should be the key of the tag on the EC2 instance. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

TokenBoundCidrs List<string>

List of CIDR blocks; if set, specifies blocks of IP addresses which can authenticate successfully, and ties the resulting token to these blocks as well.

TokenExplicitMaxTtl int

If set, will encode an explicit max TTL onto the token in number of seconds. This is a hard cap even if token_ttl and token_max_ttl would otherwise allow a renewal.

TokenMaxTtl int

The maximum lifetime for generated tokens in number of seconds. Its current value will be referenced at renewal time.

TokenNoDefaultPolicy bool

If set, the default policy will not be set on generated tokens; otherwise it will be added to the policies set in token_policies.

TokenNumUses int

The maximum number of times a generated token may be used (within its lifetime); 0 means unlimited.

TokenPeriod int

If set, indicates that the token generated using this role should never expire. The token should be renewed within the duration specified by this value. At each renewal, the token's TTL will be set to the value of this field. Specified in seconds.

TokenPolicies List<string>

List of policies to encode onto generated tokens. Depending on the auth method, this list may be supplemented by user/group/other values.

TokenTtl int

The incremental lifetime for generated tokens in number of seconds. Its current value will be referenced at renewal time.

TokenType string

The type of token that should be generated. Can be service, batch, or default to use the mount's tuned default (which unless changed will be service tokens). For token store roles, there are two additional possibilities: default-service and default-batch which specify the type to return unless the client requests a different type at generation time.

AllowInstanceMigration bool

If set to true, allows migration of the underlying instance where the client resides.

AuthType string

The auth type permitted for this role. Valid choices are ec2 and iam. Defaults to iam.

Backend string

Unique name of the auth backend to configure.

BoundAccountIds []string

If set, defines a constraint on the EC2 instances that can perform the login operation that they should be using the account ID specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

BoundAmiIds []string

If set, defines a constraint on the EC2 instances that can perform the login operation that they should be using the AMI ID specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

BoundEc2InstanceIds []string

Only EC2 instances that match this instance ID will be permitted to log in.

BoundIamInstanceProfileArns []string

If set, defines a constraint on the EC2 instances that can perform the login operation that they must be associated with an IAM instance profile ARN which has a prefix that matches the value specified by this field. The value is prefix-matched as though it were a glob ending in *. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

BoundIamPrincipalArns []string

If set, defines the IAM principal that must be authenticated when auth_type is set to iam. Wildcards are supported at the end of the ARN.

BoundIamRoleArns []string

If set, defines a constraint on the EC2 instances that can perform the login operation that they must match the IAM role ARN specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

BoundRegions []string

If set, defines a constraint on the EC2 instances that can perform the login operation that the region in their identity document must match the one specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

BoundSubnetIds []string

If set, defines a constraint on the EC2 instances that can perform the login operation that they be associated with the subnet ID that matches the value specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

BoundVpcIds []string

If set, defines a constraint on the EC2 instances that can perform the login operation that they be associated with the VPC ID that matches the value specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

DisallowReauthentication bool

IF set to true, only allows a single token to be granted per instance ID. This can only be set when auth_type is set to ec2.

InferredAwsRegion string

When inferred_entity_type is set, this is the region to search for the inferred entities. Required if inferred_entity_type is set. This only applies when auth_type is set to iam.

InferredEntityType string

If set, instructs Vault to turn on inferencing. The only valid value is ec2_instance, which instructs Vault to infer that the role comes from an EC2 instance in an IAM instance profile. This only applies when auth_type is set to iam.

ResolveAwsUniqueIds bool

Only valid when auth_type is iam. If set to true, the bound_iam_principal_arns are resolved to AWS Unique IDs for the bound principal ARN. This field is ignored when a bound_iam_principal_arn ends in a wildcard. Resolving to unique IDs more closely mimics the behavior of AWS services in that if an IAM user or role is deleted and a new one is recreated with the same name, those new users or roles won't get access to roles in Vault that were permissioned to the prior principals of the same name. Defaults to true. Once set to true, this cannot be changed to false without recreating the role.

Role string

The name of the role.

RoleId string

The Vault generated role ID.

RoleTag string

If set, enable role tags for this role. The value set for this field should be the key of the tag on the EC2 instance. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

TokenBoundCidrs []string

List of CIDR blocks; if set, specifies blocks of IP addresses which can authenticate successfully, and ties the resulting token to these blocks as well.

TokenExplicitMaxTtl int

If set, will encode an explicit max TTL onto the token in number of seconds. This is a hard cap even if token_ttl and token_max_ttl would otherwise allow a renewal.

TokenMaxTtl int

The maximum lifetime for generated tokens in number of seconds. Its current value will be referenced at renewal time.

TokenNoDefaultPolicy bool

If set, the default policy will not be set on generated tokens; otherwise it will be added to the policies set in token_policies.

TokenNumUses int

The maximum number of times a generated token may be used (within its lifetime); 0 means unlimited.

TokenPeriod int

If set, indicates that the token generated using this role should never expire. The token should be renewed within the duration specified by this value. At each renewal, the token's TTL will be set to the value of this field. Specified in seconds.

TokenPolicies []string

List of policies to encode onto generated tokens. Depending on the auth method, this list may be supplemented by user/group/other values.

TokenTtl int

The incremental lifetime for generated tokens in number of seconds. Its current value will be referenced at renewal time.

TokenType string

The type of token that should be generated. Can be service, batch, or default to use the mount's tuned default (which unless changed will be service tokens). For token store roles, there are two additional possibilities: default-service and default-batch which specify the type to return unless the client requests a different type at generation time.

allowInstanceMigration Boolean

If set to true, allows migration of the underlying instance where the client resides.

authType String

The auth type permitted for this role. Valid choices are ec2 and iam. Defaults to iam.

backend String

Unique name of the auth backend to configure.

boundAccountIds List<String>

If set, defines a constraint on the EC2 instances that can perform the login operation that they should be using the account ID specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

boundAmiIds List<String>

If set, defines a constraint on the EC2 instances that can perform the login operation that they should be using the AMI ID specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

boundEc2InstanceIds List<String>

Only EC2 instances that match this instance ID will be permitted to log in.

boundIamInstanceProfileArns List<String>

If set, defines a constraint on the EC2 instances that can perform the login operation that they must be associated with an IAM instance profile ARN which has a prefix that matches the value specified by this field. The value is prefix-matched as though it were a glob ending in *. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

boundIamPrincipalArns List<String>

If set, defines the IAM principal that must be authenticated when auth_type is set to iam. Wildcards are supported at the end of the ARN.

boundIamRoleArns List<String>

If set, defines a constraint on the EC2 instances that can perform the login operation that they must match the IAM role ARN specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

boundRegions List<String>

If set, defines a constraint on the EC2 instances that can perform the login operation that the region in their identity document must match the one specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

boundSubnetIds List<String>

If set, defines a constraint on the EC2 instances that can perform the login operation that they be associated with the subnet ID that matches the value specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

boundVpcIds List<String>

If set, defines a constraint on the EC2 instances that can perform the login operation that they be associated with the VPC ID that matches the value specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

disallowReauthentication Boolean

IF set to true, only allows a single token to be granted per instance ID. This can only be set when auth_type is set to ec2.

inferredAwsRegion String

When inferred_entity_type is set, this is the region to search for the inferred entities. Required if inferred_entity_type is set. This only applies when auth_type is set to iam.

inferredEntityType String

If set, instructs Vault to turn on inferencing. The only valid value is ec2_instance, which instructs Vault to infer that the role comes from an EC2 instance in an IAM instance profile. This only applies when auth_type is set to iam.

resolveAwsUniqueIds Boolean

Only valid when auth_type is iam. If set to true, the bound_iam_principal_arns are resolved to AWS Unique IDs for the bound principal ARN. This field is ignored when a bound_iam_principal_arn ends in a wildcard. Resolving to unique IDs more closely mimics the behavior of AWS services in that if an IAM user or role is deleted and a new one is recreated with the same name, those new users or roles won't get access to roles in Vault that were permissioned to the prior principals of the same name. Defaults to true. Once set to true, this cannot be changed to false without recreating the role.

role String

The name of the role.

roleId String

The Vault generated role ID.

roleTag String

If set, enable role tags for this role. The value set for this field should be the key of the tag on the EC2 instance. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

tokenBoundCidrs List<String>

List of CIDR blocks; if set, specifies blocks of IP addresses which can authenticate successfully, and ties the resulting token to these blocks as well.

tokenExplicitMaxTtl Integer

If set, will encode an explicit max TTL onto the token in number of seconds. This is a hard cap even if token_ttl and token_max_ttl would otherwise allow a renewal.

tokenMaxTtl Integer

The maximum lifetime for generated tokens in number of seconds. Its current value will be referenced at renewal time.

tokenNoDefaultPolicy Boolean

If set, the default policy will not be set on generated tokens; otherwise it will be added to the policies set in token_policies.

tokenNumUses Integer

The maximum number of times a generated token may be used (within its lifetime); 0 means unlimited.

tokenPeriod Integer

If set, indicates that the token generated using this role should never expire. The token should be renewed within the duration specified by this value. At each renewal, the token's TTL will be set to the value of this field. Specified in seconds.

tokenPolicies List<String>

List of policies to encode onto generated tokens. Depending on the auth method, this list may be supplemented by user/group/other values.

tokenTtl Integer

The incremental lifetime for generated tokens in number of seconds. Its current value will be referenced at renewal time.

tokenType String

The type of token that should be generated. Can be service, batch, or default to use the mount's tuned default (which unless changed will be service tokens). For token store roles, there are two additional possibilities: default-service and default-batch which specify the type to return unless the client requests a different type at generation time.

allowInstanceMigration boolean

If set to true, allows migration of the underlying instance where the client resides.

authType string

The auth type permitted for this role. Valid choices are ec2 and iam. Defaults to iam.

backend string

Unique name of the auth backend to configure.

boundAccountIds string[]

If set, defines a constraint on the EC2 instances that can perform the login operation that they should be using the account ID specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

boundAmiIds string[]

If set, defines a constraint on the EC2 instances that can perform the login operation that they should be using the AMI ID specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

boundEc2InstanceIds string[]

Only EC2 instances that match this instance ID will be permitted to log in.

boundIamInstanceProfileArns string[]

If set, defines a constraint on the EC2 instances that can perform the login operation that they must be associated with an IAM instance profile ARN which has a prefix that matches the value specified by this field. The value is prefix-matched as though it were a glob ending in *. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

boundIamPrincipalArns string[]

If set, defines the IAM principal that must be authenticated when auth_type is set to iam. Wildcards are supported at the end of the ARN.

boundIamRoleArns string[]

If set, defines a constraint on the EC2 instances that can perform the login operation that they must match the IAM role ARN specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

boundRegions string[]

If set, defines a constraint on the EC2 instances that can perform the login operation that the region in their identity document must match the one specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

boundSubnetIds string[]

If set, defines a constraint on the EC2 instances that can perform the login operation that they be associated with the subnet ID that matches the value specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

boundVpcIds string[]

If set, defines a constraint on the EC2 instances that can perform the login operation that they be associated with the VPC ID that matches the value specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

disallowReauthentication boolean

IF set to true, only allows a single token to be granted per instance ID. This can only be set when auth_type is set to ec2.

inferredAwsRegion string

When inferred_entity_type is set, this is the region to search for the inferred entities. Required if inferred_entity_type is set. This only applies when auth_type is set to iam.

inferredEntityType string

If set, instructs Vault to turn on inferencing. The only valid value is ec2_instance, which instructs Vault to infer that the role comes from an EC2 instance in an IAM instance profile. This only applies when auth_type is set to iam.

resolveAwsUniqueIds boolean

Only valid when auth_type is iam. If set to true, the bound_iam_principal_arns are resolved to AWS Unique IDs for the bound principal ARN. This field is ignored when a bound_iam_principal_arn ends in a wildcard. Resolving to unique IDs more closely mimics the behavior of AWS services in that if an IAM user or role is deleted and a new one is recreated with the same name, those new users or roles won't get access to roles in Vault that were permissioned to the prior principals of the same name. Defaults to true. Once set to true, this cannot be changed to false without recreating the role.

role string

The name of the role.

roleId string

The Vault generated role ID.

roleTag string

If set, enable role tags for this role. The value set for this field should be the key of the tag on the EC2 instance. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

tokenBoundCidrs string[]

List of CIDR blocks; if set, specifies blocks of IP addresses which can authenticate successfully, and ties the resulting token to these blocks as well.

tokenExplicitMaxTtl number

If set, will encode an explicit max TTL onto the token in number of seconds. This is a hard cap even if token_ttl and token_max_ttl would otherwise allow a renewal.

tokenMaxTtl number

The maximum lifetime for generated tokens in number of seconds. Its current value will be referenced at renewal time.

tokenNoDefaultPolicy boolean

If set, the default policy will not be set on generated tokens; otherwise it will be added to the policies set in token_policies.

tokenNumUses number

The maximum number of times a generated token may be used (within its lifetime); 0 means unlimited.

tokenPeriod number

If set, indicates that the token generated using this role should never expire. The token should be renewed within the duration specified by this value. At each renewal, the token's TTL will be set to the value of this field. Specified in seconds.

tokenPolicies string[]

List of policies to encode onto generated tokens. Depending on the auth method, this list may be supplemented by user/group/other values.

tokenTtl number

The incremental lifetime for generated tokens in number of seconds. Its current value will be referenced at renewal time.

tokenType string

The type of token that should be generated. Can be service, batch, or default to use the mount's tuned default (which unless changed will be service tokens). For token store roles, there are two additional possibilities: default-service and default-batch which specify the type to return unless the client requests a different type at generation time.

allow_instance_migration bool

If set to true, allows migration of the underlying instance where the client resides.

auth_type str

The auth type permitted for this role. Valid choices are ec2 and iam. Defaults to iam.

backend str

Unique name of the auth backend to configure.

bound_account_ids Sequence[str]

If set, defines a constraint on the EC2 instances that can perform the login operation that they should be using the account ID specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

bound_ami_ids Sequence[str]

If set, defines a constraint on the EC2 instances that can perform the login operation that they should be using the AMI ID specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

bound_ec2_instance_ids Sequence[str]

Only EC2 instances that match this instance ID will be permitted to log in.

bound_iam_instance_profile_arns Sequence[str]

If set, defines a constraint on the EC2 instances that can perform the login operation that they must be associated with an IAM instance profile ARN which has a prefix that matches the value specified by this field. The value is prefix-matched as though it were a glob ending in *. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

bound_iam_principal_arns Sequence[str]

If set, defines the IAM principal that must be authenticated when auth_type is set to iam. Wildcards are supported at the end of the ARN.

bound_iam_role_arns Sequence[str]

If set, defines a constraint on the EC2 instances that can perform the login operation that they must match the IAM role ARN specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

bound_regions Sequence[str]

If set, defines a constraint on the EC2 instances that can perform the login operation that the region in their identity document must match the one specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

bound_subnet_ids Sequence[str]

If set, defines a constraint on the EC2 instances that can perform the login operation that they be associated with the subnet ID that matches the value specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

bound_vpc_ids Sequence[str]

If set, defines a constraint on the EC2 instances that can perform the login operation that they be associated with the VPC ID that matches the value specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

disallow_reauthentication bool

IF set to true, only allows a single token to be granted per instance ID. This can only be set when auth_type is set to ec2.

inferred_aws_region str

When inferred_entity_type is set, this is the region to search for the inferred entities. Required if inferred_entity_type is set. This only applies when auth_type is set to iam.

inferred_entity_type str

If set, instructs Vault to turn on inferencing. The only valid value is ec2_instance, which instructs Vault to infer that the role comes from an EC2 instance in an IAM instance profile. This only applies when auth_type is set to iam.

resolve_aws_unique_ids bool

Only valid when auth_type is iam. If set to true, the bound_iam_principal_arns are resolved to AWS Unique IDs for the bound principal ARN. This field is ignored when a bound_iam_principal_arn ends in a wildcard. Resolving to unique IDs more closely mimics the behavior of AWS services in that if an IAM user or role is deleted and a new one is recreated with the same name, those new users or roles won't get access to roles in Vault that were permissioned to the prior principals of the same name. Defaults to true. Once set to true, this cannot be changed to false without recreating the role.

role str

The name of the role.

role_id str

The Vault generated role ID.

role_tag str

If set, enable role tags for this role. The value set for this field should be the key of the tag on the EC2 instance. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

token_bound_cidrs Sequence[str]

List of CIDR blocks; if set, specifies blocks of IP addresses which can authenticate successfully, and ties the resulting token to these blocks as well.

token_explicit_max_ttl int

If set, will encode an explicit max TTL onto the token in number of seconds. This is a hard cap even if token_ttl and token_max_ttl would otherwise allow a renewal.

token_max_ttl int

The maximum lifetime for generated tokens in number of seconds. Its current value will be referenced at renewal time.

token_no_default_policy bool

If set, the default policy will not be set on generated tokens; otherwise it will be added to the policies set in token_policies.

token_num_uses int

The maximum number of times a generated token may be used (within its lifetime); 0 means unlimited.

token_period int

If set, indicates that the token generated using this role should never expire. The token should be renewed within the duration specified by this value. At each renewal, the token's TTL will be set to the value of this field. Specified in seconds.

token_policies Sequence[str]

List of policies to encode onto generated tokens. Depending on the auth method, this list may be supplemented by user/group/other values.

token_ttl int

The incremental lifetime for generated tokens in number of seconds. Its current value will be referenced at renewal time.

token_type str

The type of token that should be generated. Can be service, batch, or default to use the mount's tuned default (which unless changed will be service tokens). For token store roles, there are two additional possibilities: default-service and default-batch which specify the type to return unless the client requests a different type at generation time.

allowInstanceMigration Boolean

If set to true, allows migration of the underlying instance where the client resides.

authType String

The auth type permitted for this role. Valid choices are ec2 and iam. Defaults to iam.

backend String

Unique name of the auth backend to configure.

boundAccountIds List<String>

If set, defines a constraint on the EC2 instances that can perform the login operation that they should be using the account ID specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

boundAmiIds List<String>

If set, defines a constraint on the EC2 instances that can perform the login operation that they should be using the AMI ID specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

boundEc2InstanceIds List<String>

Only EC2 instances that match this instance ID will be permitted to log in.

boundIamInstanceProfileArns List<String>

If set, defines a constraint on the EC2 instances that can perform the login operation that they must be associated with an IAM instance profile ARN which has a prefix that matches the value specified by this field. The value is prefix-matched as though it were a glob ending in *. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

boundIamPrincipalArns List<String>

If set, defines the IAM principal that must be authenticated when auth_type is set to iam. Wildcards are supported at the end of the ARN.

boundIamRoleArns List<String>

If set, defines a constraint on the EC2 instances that can perform the login operation that they must match the IAM role ARN specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

boundRegions List<String>

If set, defines a constraint on the EC2 instances that can perform the login operation that the region in their identity document must match the one specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

boundSubnetIds List<String>

If set, defines a constraint on the EC2 instances that can perform the login operation that they be associated with the subnet ID that matches the value specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

boundVpcIds List<String>

If set, defines a constraint on the EC2 instances that can perform the login operation that they be associated with the VPC ID that matches the value specified by this field. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

disallowReauthentication Boolean

IF set to true, only allows a single token to be granted per instance ID. This can only be set when auth_type is set to ec2.

inferredAwsRegion String

When inferred_entity_type is set, this is the region to search for the inferred entities. Required if inferred_entity_type is set. This only applies when auth_type is set to iam.

inferredEntityType String

If set, instructs Vault to turn on inferencing. The only valid value is ec2_instance, which instructs Vault to infer that the role comes from an EC2 instance in an IAM instance profile. This only applies when auth_type is set to iam.

resolveAwsUniqueIds Boolean

Only valid when auth_type is iam. If set to true, the bound_iam_principal_arns are resolved to AWS Unique IDs for the bound principal ARN. This field is ignored when a bound_iam_principal_arn ends in a wildcard. Resolving to unique IDs more closely mimics the behavior of AWS services in that if an IAM user or role is deleted and a new one is recreated with the same name, those new users or roles won't get access to roles in Vault that were permissioned to the prior principals of the same name. Defaults to true. Once set to true, this cannot be changed to false without recreating the role.

role String

The name of the role.

roleId String

The Vault generated role ID.

roleTag String

If set, enable role tags for this role. The value set for this field should be the key of the tag on the EC2 instance. auth_type must be set to ec2 or inferred_entity_type must be set to ec2_instance to use this constraint.

tokenBoundCidrs List<String>

List of CIDR blocks; if set, specifies blocks of IP addresses which can authenticate successfully, and ties the resulting token to these blocks as well.

tokenExplicitMaxTtl Number

If set, will encode an explicit max TTL onto the token in number of seconds. This is a hard cap even if token_ttl and token_max_ttl would otherwise allow a renewal.

tokenMaxTtl Number

The maximum lifetime for generated tokens in number of seconds. Its current value will be referenced at renewal time.

tokenNoDefaultPolicy Boolean

If set, the default policy will not be set on generated tokens; otherwise it will be added to the policies set in token_policies.

tokenNumUses Number

The maximum number of times a generated token may be used (within its lifetime); 0 means unlimited.

tokenPeriod Number

If set, indicates that the token generated using this role should never expire. The token should be renewed within the duration specified by this value. At each renewal, the token's TTL will be set to the value of this field. Specified in seconds.

tokenPolicies List<String>

List of policies to encode onto generated tokens. Depending on the auth method, this list may be supplemented by user/group/other values.

tokenTtl Number

The incremental lifetime for generated tokens in number of seconds. Its current value will be referenced at renewal time.

tokenType String

The type of token that should be generated. Can be service, batch, or default to use the mount's tuned default (which unless changed will be service tokens). For token store roles, there are two additional possibilities: default-service and default-batch which specify the type to return unless the client requests a different type at generation time.

Import

AWS auth backend roles can be imported using auth/, the backend path, /role/, and the role name e.g.

 $ pulumi import vault:aws/authBackendRole:AuthBackendRole example auth/aws/role/test-role

Package Details

Repository
https://github.com/pulumi/pulumi-vault
License
Apache-2.0
Notes

This Pulumi package is based on the vault Terraform Provider.