AuthBackendLoginArgs

data class AuthBackendLoginArgs(val backend: Output<String>? = null, val iamHttpRequestMethod: Output<String>? = null, val iamRequestBody: Output<String>? = null, val iamRequestHeaders: Output<String>? = null, val iamRequestUrl: Output<String>? = null, val identity: Output<String>? = null, val namespace: Output<String>? = null, val nonce: Output<String>? = null, val pkcs7: Output<String>? = null, val role: Output<String>? = null, val signature: Output<String>? = null) : ConvertibleToJava<AuthBackendLoginArgs>

Logs into a Vault server using an AWS auth backend. Login can be accomplished using a signed identity request from IAM or using ec2 instance metadata. For more information, see the [Vault

  • documentation](https://www.vaultproject.io/docs/auth/aws.html).

Example Usage

resources:
aws:
type: vault:AuthBackend
properties:
type: aws
path: aws
example:
type: vault:aws:AuthBackendClient
properties:
backend: ${aws.path}
accessKey: '123456789012'
secretKey: AWSSECRETKEYGOESHERE
exampleAuthBackendRole:
type: vault:aws:AuthBackendRole
name: example
properties:
backend: ${aws.path}
role: test-role
authType: ec2
boundAmiId: ami-8c1be5f6
boundAccountId: '123456789012'
boundVpcId: vpc-b61106d4
boundSubnetId: vpc-133128f1
boundIamInstanceProfileArns:
- arn:aws:iam::123456789012:instance-profile/MyProfile
ttl: 60
maxTtl: 120
tokenPolicies:
- default
- dev
- prod
options:
dependsOn:
- ${example}
exampleAuthBackendLogin:
type: vault:aws:AuthBackendLogin
name: example
properties:
backend: ${exampleVaultAuthBackend.path}
role: ${exampleAuthBackendRole.role}
identity: BASE64ENCODEDIDENTITYDOCUMENT
signature: BASE64ENCODEDSHA256IDENTITYDOCUMENTSIGNATURE

Constructors

Link copied to clipboard
constructor(backend: Output<String>? = null, iamHttpRequestMethod: Output<String>? = null, iamRequestBody: Output<String>? = null, iamRequestHeaders: Output<String>? = null, iamRequestUrl: Output<String>? = null, identity: Output<String>? = null, namespace: Output<String>? = null, nonce: Output<String>? = null, pkcs7: Output<String>? = null, role: Output<String>? = null, signature: Output<String>? = null)

Properties

Link copied to clipboard
val backend: Output<String>? = null

The unique name of the AWS auth backend. Defaults to 'aws'.

Link copied to clipboard
val iamHttpRequestMethod: Output<String>? = null

The HTTP method used in the signed IAM request.

Link copied to clipboard
val iamRequestBody: Output<String>? = null

The base64-encoded body of the signed request.

Link copied to clipboard
val iamRequestHeaders: Output<String>? = null

The base64-encoded, JSON serialized representation of the GetCallerIdentity HTTP request headers.

Link copied to clipboard
val iamRequestUrl: Output<String>? = null

The base64-encoded HTTP URL used in the signed request.

Link copied to clipboard
val identity: Output<String>? = null

The base64-encoded EC2 instance identity document to authenticate with. Can be retrieved from the EC2 metadata server.

Link copied to clipboard
val namespace: Output<String>? = null

The namespace to provision the resource in. The value should not contain leading or trailing forward slashes. The namespace is always relative to the provider's configured namespace. Available only for Vault Enterprise.

Link copied to clipboard
val nonce: Output<String>? = null

The unique nonce to be used for login requests. Can be set to a user-specified value, or will contain the server-generated value once a token is issued. EC2 instances can only acquire a single token until the whitelist is tidied again unless they keep track of this nonce.

Link copied to clipboard
val pkcs7: Output<String>? = null

The PKCS#7 signature of the identity document to authenticate with, with all newline characters removed. Can be retrieved from the EC2 metadata server.

Link copied to clipboard
val role: Output<String>? = null

The name of the AWS auth backend role to create tokens against.

Link copied to clipboard
val signature: Output<String>? = null

The base64-encoded SHA256 RSA signature of the instance identity document to authenticate with, with all newline characters removed. Can be retrieved from the EC2 metadata server.

Functions

Link copied to clipboard
open override fun toJava(): AuthBackendLoginArgs