get Public Key
Use this data source to get the public key about the specified KMS Key with flexible key id input. This can be useful to reference key alias without having to hard code the ARN as input.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const byAlias = aws.kms.getPublicKey({
keyId: "alias/my-key",
});
const byId = aws.kms.getPublicKey({
keyId: "1234abcd-12ab-34cd-56ef-1234567890ab",
});
const byAliasArn = aws.kms.getPublicKey({
keyId: "arn:aws:kms:us-east-1:111122223333:alias/my-key",
});
const byKeyArn = aws.kms.getPublicKey({
keyId: "arn:aws:kms:us-east-1:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
});
import pulumi
import pulumi_aws as aws
by_alias = aws.kms.get_public_key(key_id="alias/my-key")
by_id = aws.kms.get_public_key(key_id="1234abcd-12ab-34cd-56ef-1234567890ab")
by_alias_arn = aws.kms.get_public_key(key_id="arn:aws:kms:us-east-1:111122223333:alias/my-key")
by_key_arn = aws.kms.get_public_key(key_id="arn:aws:kms:us-east-1:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab")
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var byAlias = Aws.Kms.GetPublicKey.Invoke(new()
{
KeyId = "alias/my-key",
});
var byId = Aws.Kms.GetPublicKey.Invoke(new()
{
KeyId = "1234abcd-12ab-34cd-56ef-1234567890ab",
});
var byAliasArn = Aws.Kms.GetPublicKey.Invoke(new()
{
KeyId = "arn:aws:kms:us-east-1:111122223333:alias/my-key",
});
var byKeyArn = Aws.Kms.GetPublicKey.Invoke(new()
{
KeyId = "arn:aws:kms:us-east-1:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
});
});
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 {
_, err := kms.GetPublicKey(ctx, &kms.GetPublicKeyArgs{
KeyId: "alias/my-key",
}, nil)
if err != nil {
return err
}
_, err = kms.GetPublicKey(ctx, &kms.GetPublicKeyArgs{
KeyId: "1234abcd-12ab-34cd-56ef-1234567890ab",
}, nil)
if err != nil {
return err
}
_, err = kms.GetPublicKey(ctx, &kms.GetPublicKeyArgs{
KeyId: "arn:aws:kms:us-east-1:111122223333:alias/my-key",
}, nil)
if err != nil {
return err
}
_, err = kms.GetPublicKey(ctx, &kms.GetPublicKeyArgs{
KeyId: "arn:aws:kms:us-east-1:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
}, nil)
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.KmsFunctions;
import com.pulumi.aws.kms.inputs.GetPublicKeyArgs;
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) {
final var byAlias = KmsFunctions.getPublicKey(GetPublicKeyArgs.builder()
.keyId("alias/my-key")
.build());
final var byId = KmsFunctions.getPublicKey(GetPublicKeyArgs.builder()
.keyId("1234abcd-12ab-34cd-56ef-1234567890ab")
.build());
final var byAliasArn = KmsFunctions.getPublicKey(GetPublicKeyArgs.builder()
.keyId("arn:aws:kms:us-east-1:111122223333:alias/my-key")
.build());
final var byKeyArn = KmsFunctions.getPublicKey(GetPublicKeyArgs.builder()
.keyId("arn:aws:kms:us-east-1:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab")
.build());
}
}
variables:
byAlias:
fn::invoke:
function: aws:kms:getPublicKey
arguments:
keyId: alias/my-key
byId:
fn::invoke:
function: aws:kms:getPublicKey
arguments:
keyId: 1234abcd-12ab-34cd-56ef-1234567890ab
byAliasArn:
fn::invoke:
function: aws:kms:getPublicKey
arguments:
keyId: arn:aws:kms:us-east-1:111122223333:alias/my-key
byKeyArn:
fn::invoke:
function: aws:kms:getPublicKey
arguments:
keyId: arn:aws:kms:us-east-1:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab
Return
A collection of values returned by getPublicKey.
Parameters
A collection of arguments for invoking getPublicKey.
Return
A collection of values returned by getPublicKey.
Parameters
List of grant tokens
Key identifier which can be one of the following format:
Key ID. E.g -
1234abcd-12ab-34cd-56ef-1234567890ab
Key ARN. E.g. -
arn:aws:kms:us-east-1:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab
Alias name. E.g. -
alias/my-key
Alias ARN - E.g. -
arn:aws:kms:us-east-1:111122223333:alias/my-key
See also
Return
A collection of values returned by getPublicKey.
Parameters
Builder for com.pulumi.aws.kms.kotlin.inputs.GetPublicKeyPlainArgs.