AliasArgs

data class AliasArgs(val name: Output<String>? = null, val namePrefix: Output<String>? = null, val targetKeyId: Output<String>? = null) : ConvertibleToJava<AliasArgs>

Provides an alias for a KMS customer master key. AWS Console enforces 1-to-1 mapping between aliases & keys, but API (hence this provider too) allows you to create as many aliases as the account limits allow you.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const a = new aws.kms.Key("a", {});
const aAlias = new aws.kms.Alias("a", {
name: "alias/my-key-alias",
targetKeyId: a.keyId,
});
import pulumi
import pulumi_aws as aws
a = aws.kms.Key("a")
a_alias = aws.kms.Alias("a",
name="alias/my-key-alias",
target_key_id=a.key_id)
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var a = new Aws.Kms.Key("a");
var aAlias = new Aws.Kms.Alias("a", new()
{
Name = "alias/my-key-alias",
TargetKeyId = a.KeyId,
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/kms"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
a, err := kms.NewKey(ctx, "a", nil)
if err != nil {
return err
}
_, err = kms.NewAlias(ctx, "a", &kms.AliasArgs{
Name: pulumi.String("alias/my-key-alias"),
TargetKeyId: a.KeyId,
})
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.aws.kms.Key;
import com.pulumi.aws.kms.Alias;
import com.pulumi.aws.kms.AliasArgs;
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 a = new Key("a");
var aAlias = new Alias("aAlias", AliasArgs.builder()
.name("alias/my-key-alias")
.targetKeyId(a.keyId())
.build());
}
}
resources:
a:
type: aws:kms:Key
aAlias:
type: aws:kms:Alias
name: a
properties:
name: alias/my-key-alias
targetKeyId: ${a.keyId}

Import

Using pulumi import, import KMS aliases using the name. For example:

$ pulumi import aws:kms/alias:Alias a alias/my-key-alias

Constructors

Link copied to clipboard
constructor(name: Output<String>? = null, namePrefix: Output<String>? = null, targetKeyId: Output<String>? = null)

Properties

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

The display name of the alias. The name must start with the word "alias" followed by a forward slash (alias/)

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

Creates an unique alias beginning with the specified prefix. The name must start with the word "alias" followed by a forward slash (alias/). Conflicts with name.

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

Identifier for the key for which the alias is for, can be either an ARN or key_id.

Functions

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