AuthBackendRole

Manages an JWT/OIDC auth backend role in a Vault server. See the Vault documentation for more information.

Example Usage

using Pulumi;
using Vault = Pulumi.Vault;

class MyStack : Stack
{
    public MyStack()
    {
        var jwt = new Vault.Jwt.AuthBackend("jwt", new Vault.Jwt.AuthBackendArgs
        {
            Path = "jwt",
        });
        var example = new Vault.Jwt.AuthBackendRole("example", new Vault.Jwt.AuthBackendRoleArgs
        {
            Backend = jwt.Path,
            RoleName = "test-role",
            TokenPolicies = 
            {
                "default",
                "dev",
                "prod",
            },
            BoundAudiences = 
            {
                "https://myco.test",
            },
            UserClaim = "https://vault/user",
            RoleType = "jwt",
        });
    }

}
package main

import (
	"github.com/pulumi/pulumi-vault/sdk/v4/go/vault/jwt"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		jwt, err := jwt.NewAuthBackend(ctx, "jwt", &jwt.AuthBackendArgs{
			Path: pulumi.String("jwt"),
		})
		if err != nil {
			return err
		}
		_, err = jwt.NewAuthBackendRole(ctx, "example", &jwt.AuthBackendRoleArgs{
			Backend:  jwt.Path,
			RoleName: pulumi.String("test-role"),
			TokenPolicies: pulumi.StringArray{
				pulumi.String("default"),
				pulumi.String("dev"),
				pulumi.String("prod"),
			},
			BoundAudiences: pulumi.StringArray{
				pulumi.String("https://myco.test"),
			},
			UserClaim: pulumi.String("https://vault/user"),
			RoleType:  pulumi.String("jwt"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
import pulumi
import pulumi_vault as vault

jwt = vault.jwt.AuthBackend("jwt", path="jwt")
example = vault.jwt.AuthBackendRole("example",
    backend=jwt.path,
    role_name="test-role",
    token_policies=[
        "default",
        "dev",
        "prod",
    ],
    bound_audiences=["https://myco.test"],
    user_claim="https://vault/user",
    role_type="jwt")
import * as pulumi from "@pulumi/pulumi";
import * as vault from "@pulumi/vault";

const jwt = new vault.jwt.AuthBackend("jwt", {path: "jwt"});
const example = new vault.jwt.AuthBackendRole("example", {
    backend: jwt.path,
    roleName: "test-role",
    tokenPolicies: [
        "default",
        "dev",
        "prod",
    ],
    boundAudiences: ["https://myco.test"],
    userClaim: "https://vault/user",
    roleType: "jwt",
});

Create a AuthBackendRole Resource

new AuthBackendRole(name: string, args: AuthBackendRoleArgs, opts?: CustomResourceOptions);
@overload
def AuthBackendRole(resource_name: str,
                    opts: Optional[ResourceOptions] = None,
                    allowed_redirect_uris: Optional[Sequence[str]] = None,
                    backend: Optional[str] = None,
                    bound_audiences: Optional[Sequence[str]] = None,
                    bound_cidrs: Optional[Sequence[str]] = None,
                    bound_claims: Optional[Mapping[str, Any]] = None,
                    bound_claims_type: Optional[str] = None,
                    bound_subject: Optional[str] = None,
                    claim_mappings: Optional[Mapping[str, Any]] = None,
                    clock_skew_leeway: Optional[int] = None,
                    expiration_leeway: Optional[int] = None,
                    groups_claim: Optional[str] = None,
                    groups_claim_delimiter_pattern: Optional[str] = None,
                    max_ttl: Optional[int] = None,
                    not_before_leeway: Optional[int] = None,
                    num_uses: Optional[int] = None,
                    oidc_scopes: Optional[Sequence[str]] = None,
                    period: Optional[int] = None,
                    policies: Optional[Sequence[str]] = None,
                    role_name: Optional[str] = None,
                    role_type: 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,
                    ttl: Optional[int] = None,
                    user_claim: Optional[str] = None,
                    verbose_oidc_logging: Optional[bool] = 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)
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.

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:

RoleName string
The name of the role.
UserClaim string
The claim to use to uniquely identify the user; this will be used as the name for the Identity entity alias created due to a successful login.
AllowedRedirectUris List<string>
The list of allowed values for redirect_uri during OIDC logins. Required for OIDC roles
Backend string
The unique name of the auth backend to configure. Defaults to jwt.
BoundAudiences List<string>
(Required for roles of type jwt, optional for roles of type oidc) List of aud claims to match against. Any match is sufficient.
BoundCidrs List<string>
If set, a list of CIDRs valid as the source address for login requests. This value is also encoded into any resulting token.

Deprecated: use token_bound_cidrs instead if you are running Vault >= 1.2

BoundClaims Dictionary<string, object>
If set, a map of claims/values to match against. The expected value may be a single string or a list of strings.
BoundClaimsType string
How to interpret values in the claims/values map (bound_claims): can be either string (exact match) or glob (wildcard match). Requires Vault 1.4.0 or above.
BoundSubject string
If set, requires that the sub claim matches this value.
ClaimMappings Dictionary<string, object>
If set, a map of claims (keys) to be copied to specified metadata fields (values).
ClockSkewLeeway int
The amount of leeway to add to all claims to account for clock skew, in seconds. Defaults to 60 seconds if set to 0 and can be disabled if set to -1. Only applicable with “jwt” roles.
ExpirationLeeway int
The amount of leeway to add to expiration (exp) claims to account for clock skew, in seconds. Defaults to 60 seconds if set to 0 and can be disabled if set to -1. Only applicable with “jwt” roles.
GroupsClaim string
The claim to use to uniquely identify the set of groups to which the user belongs; this will be used as the names for the Identity group aliases created due to a successful login. The claim value must be a list of strings.
GroupsClaimDelimiterPattern string
(Optional; Deprecated. This field has been removed since Vault 1.1. If the groups claim is not at the top level, it can now be specified as a JSONPointer.) A pattern of delimiters used to allow the groups_claim to live outside of the top-level JWT structure. For instance, a groups_claim of meta/user.name/groups with this field set to // will expect nested structures named meta, user.name, and groups. If this field was set to /./ the groups information would expect to be via nested structures of meta, user, name, and groups.

Deprecated: groups_claim_delimiter_pattern has been removed since Vault 1.1. If the groups claim is not at the top level, it can now be specified as a JSONPointer.

MaxTtl int
The maximum allowed lifetime of tokens issued using this role, provided as a number of seconds.

Deprecated: use token_max_ttl instead if you are running Vault >= 1.2

NotBeforeLeeway int
The amount of leeway to add to not before (nbf) claims to account for clock skew, in seconds. Defaults to 60 seconds if set to 0 and can be disabled if set to -1. Only applicable with “jwt” roles.
NumUses int
If set, puts a use-count limitation on the issued token.

Deprecated: use token_num_uses instead if you are running Vault >= 1.2

OidcScopes List<string>
If set, a list of OIDC scopes to be used with an OIDC role. The standard scope “openid” is automatically included and need not be specified.
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.

Deprecated: use token_period instead if you are running Vault >= 1.2

Policies List<string>
An array of strings specifying the policies to be set on tokens issued using this role.

Deprecated: use token_policies instead if you are running Vault >= 1.2

RoleType string
Type of role, either “oidc” (default) or “jwt”.
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 period, if any, in number of seconds to set on the token.
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.
Ttl int
The TTL period of tokens issued using this role, provided as a number of seconds.

Deprecated: use token_ttl instead if you are running Vault >= 1.2

VerboseOidcLogging bool
Log received OIDC tokens and claims when debug-level logging is active. Not recommended in production since sensitive information may be present in OIDC responses.
RoleName string
The name of the role.
UserClaim string
The claim to use to uniquely identify the user; this will be used as the name for the Identity entity alias created due to a successful login.
AllowedRedirectUris []string
The list of allowed values for redirect_uri during OIDC logins. Required for OIDC roles
Backend string
The unique name of the auth backend to configure. Defaults to jwt.
BoundAudiences []string
(Required for roles of type jwt, optional for roles of type oidc) List of aud claims to match against. Any match is sufficient.
BoundCidrs []string
If set, a list of CIDRs valid as the source address for login requests. This value is also encoded into any resulting token.

Deprecated: use token_bound_cidrs instead if you are running Vault >= 1.2

BoundClaims map[string]interface{}
If set, a map of claims/values to match against. The expected value may be a single string or a list of strings.
BoundClaimsType string
How to interpret values in the claims/values map (bound_claims): can be either string (exact match) or glob (wildcard match). Requires Vault 1.4.0 or above.
BoundSubject string
If set, requires that the sub claim matches this value.
ClaimMappings map[string]interface{}
If set, a map of claims (keys) to be copied to specified metadata fields (values).
ClockSkewLeeway int
The amount of leeway to add to all claims to account for clock skew, in seconds. Defaults to 60 seconds if set to 0 and can be disabled if set to -1. Only applicable with “jwt” roles.
ExpirationLeeway int
The amount of leeway to add to expiration (exp) claims to account for clock skew, in seconds. Defaults to 60 seconds if set to 0 and can be disabled if set to -1. Only applicable with “jwt” roles.
GroupsClaim string
The claim to use to uniquely identify the set of groups to which the user belongs; this will be used as the names for the Identity group aliases created due to a successful login. The claim value must be a list of strings.
GroupsClaimDelimiterPattern string
(Optional; Deprecated. This field has been removed since Vault 1.1. If the groups claim is not at the top level, it can now be specified as a JSONPointer.) A pattern of delimiters used to allow the groups_claim to live outside of the top-level JWT structure. For instance, a groups_claim of meta/user.name/groups with this field set to // will expect nested structures named meta, user.name, and groups. If this field was set to /./ the groups information would expect to be via nested structures of meta, user, name, and groups.

Deprecated: groups_claim_delimiter_pattern has been removed since Vault 1.1. If the groups claim is not at the top level, it can now be specified as a JSONPointer.

MaxTtl int
The maximum allowed lifetime of tokens issued using this role, provided as a number of seconds.

Deprecated: use token_max_ttl instead if you are running Vault >= 1.2

NotBeforeLeeway int
The amount of leeway to add to not before (nbf) claims to account for clock skew, in seconds. Defaults to 60 seconds if set to 0 and can be disabled if set to -1. Only applicable with “jwt” roles.
NumUses int
If set, puts a use-count limitation on the issued token.

Deprecated: use token_num_uses instead if you are running Vault >= 1.2

OidcScopes []string
If set, a list of OIDC scopes to be used with an OIDC role. The standard scope “openid” is automatically included and need not be specified.
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.

Deprecated: use token_period instead if you are running Vault >= 1.2

Policies []string
An array of strings specifying the policies to be set on tokens issued using this role.

Deprecated: use token_policies instead if you are running Vault >= 1.2

RoleType string
Type of role, either “oidc” (default) or “jwt”.
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 period, if any, in number of seconds to set on the token.
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.
Ttl int
The TTL period of tokens issued using this role, provided as a number of seconds.

Deprecated: use token_ttl instead if you are running Vault >= 1.2

VerboseOidcLogging bool
Log received OIDC tokens and claims when debug-level logging is active. Not recommended in production since sensitive information may be present in OIDC responses.
roleName string
The name of the role.
userClaim string
The claim to use to uniquely identify the user; this will be used as the name for the Identity entity alias created due to a successful login.
allowedRedirectUris string[]
The list of allowed values for redirect_uri during OIDC logins. Required for OIDC roles
backend string
The unique name of the auth backend to configure. Defaults to jwt.
boundAudiences string[]
(Required for roles of type jwt, optional for roles of type oidc) List of aud claims to match against. Any match is sufficient.
boundCidrs string[]
If set, a list of CIDRs valid as the source address for login requests. This value is also encoded into any resulting token.

Deprecated: use token_bound_cidrs instead if you are running Vault >= 1.2

boundClaims {[key: string]: any}
If set, a map of claims/values to match against. The expected value may be a single string or a list of strings.
boundClaimsType string
How to interpret values in the claims/values map (bound_claims): can be either string (exact match) or glob (wildcard match). Requires Vault 1.4.0 or above.
boundSubject string
If set, requires that the sub claim matches this value.
claimMappings {[key: string]: any}
If set, a map of claims (keys) to be copied to specified metadata fields (values).
clockSkewLeeway number
The amount of leeway to add to all claims to account for clock skew, in seconds. Defaults to 60 seconds if set to 0 and can be disabled if set to -1. Only applicable with “jwt” roles.
expirationLeeway number
The amount of leeway to add to expiration (exp) claims to account for clock skew, in seconds. Defaults to 60 seconds if set to 0 and can be disabled if set to -1. Only applicable with “jwt” roles.
groupsClaim string
The claim to use to uniquely identify the set of groups to which the user belongs; this will be used as the names for the Identity group aliases created due to a successful login. The claim value must be a list of strings.
groupsClaimDelimiterPattern string
(Optional; Deprecated. This field has been removed since Vault 1.1. If the groups claim is not at the top level, it can now be specified as a JSONPointer.) A pattern of delimiters used to allow the groups_claim to live outside of the top-level JWT structure. For instance, a groups_claim of meta/user.name/groups with this field set to // will expect nested structures named meta, user.name, and groups. If this field was set to /./ the groups information would expect to be via nested structures of meta, user, name, and groups.

Deprecated: groups_claim_delimiter_pattern has been removed since Vault 1.1. If the groups claim is not at the top level, it can now be specified as a JSONPointer.

maxTtl number
The maximum allowed lifetime of tokens issued using this role, provided as a number of seconds.

Deprecated: use token_max_ttl instead if you are running Vault >= 1.2

notBeforeLeeway number
The amount of leeway to add to not before (nbf) claims to account for clock skew, in seconds. Defaults to 60 seconds if set to 0 and can be disabled if set to -1. Only applicable with “jwt” roles.
numUses number
If set, puts a use-count limitation on the issued token.

Deprecated: use token_num_uses instead if you are running Vault >= 1.2

oidcScopes string[]
If set, a list of OIDC scopes to be used with an OIDC role. The standard scope “openid” is automatically included and need not be specified.
period 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.

Deprecated: use token_period instead if you are running Vault >= 1.2

policies string[]
An array of strings specifying the policies to be set on tokens issued using this role.

Deprecated: use token_policies instead if you are running Vault >= 1.2

roleType string
Type of role, either “oidc” (default) or “jwt”.
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 period, if any, in number of seconds to set on the token.
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.
ttl number
The TTL period of tokens issued using this role, provided as a number of seconds.

Deprecated: use token_ttl instead if you are running Vault >= 1.2

verboseOidcLogging boolean
Log received OIDC tokens and claims when debug-level logging is active. Not recommended in production since sensitive information may be present in OIDC responses.
role_name str
The name of the role.
user_claim str
The claim to use to uniquely identify the user; this will be used as the name for the Identity entity alias created due to a successful login.
allowed_redirect_uris Sequence[str]
The list of allowed values for redirect_uri during OIDC logins. Required for OIDC roles
backend str
The unique name of the auth backend to configure. Defaults to jwt.
bound_audiences Sequence[str]
(Required for roles of type jwt, optional for roles of type oidc) List of aud claims to match against. Any match is sufficient.
bound_cidrs Sequence[str]
If set, a list of CIDRs valid as the source address for login requests. This value is also encoded into any resulting token.

Deprecated: use token_bound_cidrs instead if you are running Vault >= 1.2

bound_claims Mapping[str, Any]
If set, a map of claims/values to match against. The expected value may be a single string or a list of strings.
bound_claims_type str
How to interpret values in the claims/values map (bound_claims): can be either string (exact match) or glob (wildcard match). Requires Vault 1.4.0 or above.
bound_subject str
If set, requires that the sub claim matches this value.
claim_mappings Mapping[str, Any]
If set, a map of claims (keys) to be copied to specified metadata fields (values).
clock_skew_leeway int
The amount of leeway to add to all claims to account for clock skew, in seconds. Defaults to 60 seconds if set to 0 and can be disabled if set to -1. Only applicable with “jwt” roles.
expiration_leeway int
The amount of leeway to add to expiration (exp) claims to account for clock skew, in seconds. Defaults to 60 seconds if set to 0 and can be disabled if set to -1. Only applicable with “jwt” roles.
groups_claim str
The claim to use to uniquely identify the set of groups to which the user belongs; this will be used as the names for the Identity group aliases created due to a successful login. The claim value must be a list of strings.
groups_claim_delimiter_pattern str
(Optional; Deprecated. This field has been removed since Vault 1.1. If the groups claim is not at the top level, it can now be specified as a JSONPointer.) A pattern of delimiters used to allow the groups_claim to live outside of the top-level JWT structure. For instance, a groups_claim of meta/user.name/groups with this field set to // will expect nested structures named meta, user.name, and groups. If this field was set to /./ the groups information would expect to be via nested structures of meta, user, name, and groups.

Deprecated: groups_claim_delimiter_pattern has been removed since Vault 1.1. If the groups claim is not at the top level, it can now be specified as a JSONPointer.

max_ttl int
The maximum allowed lifetime of tokens issued using this role, provided as a number of seconds.

Deprecated: use token_max_ttl instead if you are running Vault >= 1.2

not_before_leeway int
The amount of leeway to add to not before (nbf) claims to account for clock skew, in seconds. Defaults to 60 seconds if set to 0 and can be disabled if set to -1. Only applicable with “jwt” roles.
num_uses int
If set, puts a use-count limitation on the issued token.

Deprecated: use token_num_uses instead if you are running Vault >= 1.2

oidc_scopes Sequence[str]
If set, a list of OIDC scopes to be used with an OIDC role. The standard scope “openid” is automatically included and need not be specified.
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.

Deprecated: use token_period instead if you are running Vault >= 1.2

policies Sequence[str]
An array of strings specifying the policies to be set on tokens issued using this role.

Deprecated: use token_policies instead if you are running Vault >= 1.2

role_type str
Type of role, either “oidc” (default) or “jwt”.
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 period, if any, in number of seconds to set on the token.
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.
ttl int
The TTL period of tokens issued using this role, provided as a number of seconds.

Deprecated: use token_ttl instead if you are running Vault >= 1.2

verbose_oidc_logging bool
Log received OIDC tokens and claims when debug-level logging is active. Not recommended in production since sensitive information may be present in OIDC responses.

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.
Id string
The provider-assigned unique ID for this managed resource.
id string
The provider-assigned unique ID for this managed resource.
id str
The provider-assigned unique ID for this managed resource.

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,
        allowed_redirect_uris: Optional[Sequence[str]] = None,
        backend: Optional[str] = None,
        bound_audiences: Optional[Sequence[str]] = None,
        bound_cidrs: Optional[Sequence[str]] = None,
        bound_claims: Optional[Mapping[str, Any]] = None,
        bound_claims_type: Optional[str] = None,
        bound_subject: Optional[str] = None,
        claim_mappings: Optional[Mapping[str, Any]] = None,
        clock_skew_leeway: Optional[int] = None,
        expiration_leeway: Optional[int] = None,
        groups_claim: Optional[str] = None,
        groups_claim_delimiter_pattern: Optional[str] = None,
        max_ttl: Optional[int] = None,
        not_before_leeway: Optional[int] = None,
        num_uses: Optional[int] = None,
        oidc_scopes: Optional[Sequence[str]] = None,
        period: Optional[int] = None,
        policies: Optional[Sequence[str]] = None,
        role_name: Optional[str] = None,
        role_type: 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,
        ttl: Optional[int] = None,
        user_claim: Optional[str] = None,
        verbose_oidc_logging: Optional[bool] = 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)
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.

The following state arguments are supported:

AllowedRedirectUris List<string>
The list of allowed values for redirect_uri during OIDC logins. Required for OIDC roles
Backend string
The unique name of the auth backend to configure. Defaults to jwt.
BoundAudiences List<string>
(Required for roles of type jwt, optional for roles of type oidc) List of aud claims to match against. Any match is sufficient.
BoundCidrs List<string>
If set, a list of CIDRs valid as the source address for login requests. This value is also encoded into any resulting token.

Deprecated: use token_bound_cidrs instead if you are running Vault >= 1.2

BoundClaims Dictionary<string, object>
If set, a map of claims/values to match against. The expected value may be a single string or a list of strings.
BoundClaimsType string
How to interpret values in the claims/values map (bound_claims): can be either string (exact match) or glob (wildcard match). Requires Vault 1.4.0 or above.
BoundSubject string
If set, requires that the sub claim matches this value.
ClaimMappings Dictionary<string, object>
If set, a map of claims (keys) to be copied to specified metadata fields (values).
ClockSkewLeeway int
The amount of leeway to add to all claims to account for clock skew, in seconds. Defaults to 60 seconds if set to 0 and can be disabled if set to -1. Only applicable with “jwt” roles.
ExpirationLeeway int
The amount of leeway to add to expiration (exp) claims to account for clock skew, in seconds. Defaults to 60 seconds if set to 0 and can be disabled if set to -1. Only applicable with “jwt” roles.
GroupsClaim string
The claim to use to uniquely identify the set of groups to which the user belongs; this will be used as the names for the Identity group aliases created due to a successful login. The claim value must be a list of strings.
GroupsClaimDelimiterPattern string
(Optional; Deprecated. This field has been removed since Vault 1.1. If the groups claim is not at the top level, it can now be specified as a JSONPointer.) A pattern of delimiters used to allow the groups_claim to live outside of the top-level JWT structure. For instance, a groups_claim of meta/user.name/groups with this field set to // will expect nested structures named meta, user.name, and groups. If this field was set to /./ the groups information would expect to be via nested structures of meta, user, name, and groups.

Deprecated: groups_claim_delimiter_pattern has been removed since Vault 1.1. If the groups claim is not at the top level, it can now be specified as a JSONPointer.

MaxTtl int
The maximum allowed lifetime of tokens issued using this role, provided as a number of seconds.

Deprecated: use token_max_ttl instead if you are running Vault >= 1.2

NotBeforeLeeway int
The amount of leeway to add to not before (nbf) claims to account for clock skew, in seconds. Defaults to 60 seconds if set to 0 and can be disabled if set to -1. Only applicable with “jwt” roles.
NumUses int
If set, puts a use-count limitation on the issued token.

Deprecated: use token_num_uses instead if you are running Vault >= 1.2

OidcScopes List<string>
If set, a list of OIDC scopes to be used with an OIDC role. The standard scope “openid” is automatically included and need not be specified.
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.

Deprecated: use token_period instead if you are running Vault >= 1.2

Policies List<string>
An array of strings specifying the policies to be set on tokens issued using this role.

Deprecated: use token_policies instead if you are running Vault >= 1.2

RoleName string
The name of the role.
RoleType string
Type of role, either “oidc” (default) or “jwt”.
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 period, if any, in number of seconds to set on the token.
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.
Ttl int
The TTL period of tokens issued using this role, provided as a number of seconds.

Deprecated: use token_ttl instead if you are running Vault >= 1.2

UserClaim string
The claim to use to uniquely identify the user; this will be used as the name for the Identity entity alias created due to a successful login.
VerboseOidcLogging bool
Log received OIDC tokens and claims when debug-level logging is active. Not recommended in production since sensitive information may be present in OIDC responses.
AllowedRedirectUris []string
The list of allowed values for redirect_uri during OIDC logins. Required for OIDC roles
Backend string
The unique name of the auth backend to configure. Defaults to jwt.
BoundAudiences []string
(Required for roles of type jwt, optional for roles of type oidc) List of aud claims to match against. Any match is sufficient.
BoundCidrs []string
If set, a list of CIDRs valid as the source address for login requests. This value is also encoded into any resulting token.

Deprecated: use token_bound_cidrs instead if you are running Vault >= 1.2

BoundClaims map[string]interface{}
If set, a map of claims/values to match against. The expected value may be a single string or a list of strings.
BoundClaimsType string
How to interpret values in the claims/values map (bound_claims): can be either string (exact match) or glob (wildcard match). Requires Vault 1.4.0 or above.
BoundSubject string
If set, requires that the sub claim matches this value.
ClaimMappings map[string]interface{}
If set, a map of claims (keys) to be copied to specified metadata fields (values).
ClockSkewLeeway int
The amount of leeway to add to all claims to account for clock skew, in seconds. Defaults to 60 seconds if set to 0 and can be disabled if set to -1. Only applicable with “jwt” roles.
ExpirationLeeway int
The amount of leeway to add to expiration (exp) claims to account for clock skew, in seconds. Defaults to 60 seconds if set to 0 and can be disabled if set to -1. Only applicable with “jwt” roles.
GroupsClaim string
The claim to use to uniquely identify the set of groups to which the user belongs; this will be used as the names for the Identity group aliases created due to a successful login. The claim value must be a list of strings.
GroupsClaimDelimiterPattern string
(Optional; Deprecated. This field has been removed since Vault 1.1. If the groups claim is not at the top level, it can now be specified as a JSONPointer.) A pattern of delimiters used to allow the groups_claim to live outside of the top-level JWT structure. For instance, a groups_claim of meta/user.name/groups with this field set to // will expect nested structures named meta, user.name, and groups. If this field was set to /./ the groups information would expect to be via nested structures of meta, user, name, and groups.

Deprecated: groups_claim_delimiter_pattern has been removed since Vault 1.1. If the groups claim is not at the top level, it can now be specified as a JSONPointer.

MaxTtl int
The maximum allowed lifetime of tokens issued using this role, provided as a number of seconds.

Deprecated: use token_max_ttl instead if you are running Vault >= 1.2

NotBeforeLeeway int
The amount of leeway to add to not before (nbf) claims to account for clock skew, in seconds. Defaults to 60 seconds if set to 0 and can be disabled if set to -1. Only applicable with “jwt” roles.
NumUses int
If set, puts a use-count limitation on the issued token.

Deprecated: use token_num_uses instead if you are running Vault >= 1.2

OidcScopes []string
If set, a list of OIDC scopes to be used with an OIDC role. The standard scope “openid” is automatically included and need not be specified.
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.

Deprecated: use token_period instead if you are running Vault >= 1.2

Policies []string
An array of strings specifying the policies to be set on tokens issued using this role.

Deprecated: use token_policies instead if you are running Vault >= 1.2

RoleName string
The name of the role.
RoleType string
Type of role, either “oidc” (default) or “jwt”.
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 period, if any, in number of seconds to set on the token.
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.
Ttl int
The TTL period of tokens issued using this role, provided as a number of seconds.

Deprecated: use token_ttl instead if you are running Vault >= 1.2

UserClaim string
The claim to use to uniquely identify the user; this will be used as the name for the Identity entity alias created due to a successful login.
VerboseOidcLogging bool
Log received OIDC tokens and claims when debug-level logging is active. Not recommended in production since sensitive information may be present in OIDC responses.
allowedRedirectUris string[]
The list of allowed values for redirect_uri during OIDC logins. Required for OIDC roles
backend string
The unique name of the auth backend to configure. Defaults to jwt.
boundAudiences string[]
(Required for roles of type jwt, optional for roles of type oidc) List of aud claims to match against. Any match is sufficient.
boundCidrs string[]
If set, a list of CIDRs valid as the source address for login requests. This value is also encoded into any resulting token.

Deprecated: use token_bound_cidrs instead if you are running Vault >= 1.2

boundClaims {[key: string]: any}
If set, a map of claims/values to match against. The expected value may be a single string or a list of strings.
boundClaimsType string
How to interpret values in the claims/values map (bound_claims): can be either string (exact match) or glob (wildcard match). Requires Vault 1.4.0 or above.
boundSubject string
If set, requires that the sub claim matches this value.
claimMappings {[key: string]: any}
If set, a map of claims (keys) to be copied to specified metadata fields (values).
clockSkewLeeway number
The amount of leeway to add to all claims to account for clock skew, in seconds. Defaults to 60 seconds if set to 0 and can be disabled if set to -1. Only applicable with “jwt” roles.
expirationLeeway number
The amount of leeway to add to expiration (exp) claims to account for clock skew, in seconds. Defaults to 60 seconds if set to 0 and can be disabled if set to -1. Only applicable with “jwt” roles.
groupsClaim string
The claim to use to uniquely identify the set of groups to which the user belongs; this will be used as the names for the Identity group aliases created due to a successful login. The claim value must be a list of strings.
groupsClaimDelimiterPattern string
(Optional; Deprecated. This field has been removed since Vault 1.1. If the groups claim is not at the top level, it can now be specified as a JSONPointer.) A pattern of delimiters used to allow the groups_claim to live outside of the top-level JWT structure. For instance, a groups_claim of meta/user.name/groups with this field set to // will expect nested structures named meta, user.name, and groups. If this field was set to /./ the groups information would expect to be via nested structures of meta, user, name, and groups.

Deprecated: groups_claim_delimiter_pattern has been removed since Vault 1.1. If the groups claim is not at the top level, it can now be specified as a JSONPointer.

maxTtl number
The maximum allowed lifetime of tokens issued using this role, provided as a number of seconds.

Deprecated: use token_max_ttl instead if you are running Vault >= 1.2

notBeforeLeeway number
The amount of leeway to add to not before (nbf) claims to account for clock skew, in seconds. Defaults to 60 seconds if set to 0 and can be disabled if set to -1. Only applicable with “jwt” roles.
numUses number
If set, puts a use-count limitation on the issued token.

Deprecated: use token_num_uses instead if you are running Vault >= 1.2

oidcScopes string[]
If set, a list of OIDC scopes to be used with an OIDC role. The standard scope “openid” is automatically included and need not be specified.
period 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.

Deprecated: use token_period instead if you are running Vault >= 1.2

policies string[]
An array of strings specifying the policies to be set on tokens issued using this role.

Deprecated: use token_policies instead if you are running Vault >= 1.2

roleName string
The name of the role.
roleType string
Type of role, either “oidc” (default) or “jwt”.
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 period, if any, in number of seconds to set on the token.
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.
ttl number
The TTL period of tokens issued using this role, provided as a number of seconds.

Deprecated: use token_ttl instead if you are running Vault >= 1.2

userClaim string
The claim to use to uniquely identify the user; this will be used as the name for the Identity entity alias created due to a successful login.
verboseOidcLogging boolean
Log received OIDC tokens and claims when debug-level logging is active. Not recommended in production since sensitive information may be present in OIDC responses.
allowed_redirect_uris Sequence[str]
The list of allowed values for redirect_uri during OIDC logins. Required for OIDC roles
backend str
The unique name of the auth backend to configure. Defaults to jwt.
bound_audiences Sequence[str]
(Required for roles of type jwt, optional for roles of type oidc) List of aud claims to match against. Any match is sufficient.
bound_cidrs Sequence[str]
If set, a list of CIDRs valid as the source address for login requests. This value is also encoded into any resulting token.

Deprecated: use token_bound_cidrs instead if you are running Vault >= 1.2

bound_claims Mapping[str, Any]
If set, a map of claims/values to match against. The expected value may be a single string or a list of strings.
bound_claims_type str
How to interpret values in the claims/values map (bound_claims): can be either string (exact match) or glob (wildcard match). Requires Vault 1.4.0 or above.
bound_subject str
If set, requires that the sub claim matches this value.
claim_mappings Mapping[str, Any]
If set, a map of claims (keys) to be copied to specified metadata fields (values).
clock_skew_leeway int
The amount of leeway to add to all claims to account for clock skew, in seconds. Defaults to 60 seconds if set to 0 and can be disabled if set to -1. Only applicable with “jwt” roles.
expiration_leeway int
The amount of leeway to add to expiration (exp) claims to account for clock skew, in seconds. Defaults to 60 seconds if set to 0 and can be disabled if set to -1. Only applicable with “jwt” roles.
groups_claim str
The claim to use to uniquely identify the set of groups to which the user belongs; this will be used as the names for the Identity group aliases created due to a successful login. The claim value must be a list of strings.
groups_claim_delimiter_pattern str
(Optional; Deprecated. This field has been removed since Vault 1.1. If the groups claim is not at the top level, it can now be specified as a JSONPointer.) A pattern of delimiters used to allow the groups_claim to live outside of the top-level JWT structure. For instance, a groups_claim of meta/user.name/groups with this field set to // will expect nested structures named meta, user.name, and groups. If this field was set to /./ the groups information would expect to be via nested structures of meta, user, name, and groups.

Deprecated: groups_claim_delimiter_pattern has been removed since Vault 1.1. If the groups claim is not at the top level, it can now be specified as a JSONPointer.

max_ttl int
The maximum allowed lifetime of tokens issued using this role, provided as a number of seconds.

Deprecated: use token_max_ttl instead if you are running Vault >= 1.2

not_before_leeway int
The amount of leeway to add to not before (nbf) claims to account for clock skew, in seconds. Defaults to 60 seconds if set to 0 and can be disabled if set to -1. Only applicable with “jwt” roles.
num_uses int
If set, puts a use-count limitation on the issued token.

Deprecated: use token_num_uses instead if you are running Vault >= 1.2

oidc_scopes Sequence[str]
If set, a list of OIDC scopes to be used with an OIDC role. The standard scope “openid” is automatically included and need not be specified.
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.

Deprecated: use token_period instead if you are running Vault >= 1.2

policies Sequence[str]
An array of strings specifying the policies to be set on tokens issued using this role.

Deprecated: use token_policies instead if you are running Vault >= 1.2

role_name str
The name of the role.
role_type str
Type of role, either “oidc” (default) or “jwt”.
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 period, if any, in number of seconds to set on the token.
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.
ttl int
The TTL period of tokens issued using this role, provided as a number of seconds.

Deprecated: use token_ttl instead if you are running Vault >= 1.2

user_claim str
The claim to use to uniquely identify the user; this will be used as the name for the Identity entity alias created due to a successful login.
verbose_oidc_logging bool
Log received OIDC tokens and claims when debug-level logging is active. Not recommended in production since sensitive information may be present in OIDC responses.

Import

JWT authentication backend roles can be imported using the path, e.g.

 $ pulumi import vault:jwt/authBackendRole:AuthBackendRole example auth/jwt/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.