Skip to content

AWS::KMS::Alias

The AWS::KMS::Alias resource specifies a display name for a KMS key.

Generated by cfn-typegen --out cfn_types AWS::KMS::Alias into cfn_types/kms.py:

# Generated by cfn-typegen from the CloudFormation registry schemas. Do not edit.
# fmt: off
# ruff: noqa
"""AWS::KMS resources."""

from typing import Any, Literal, Unpack
from typing_extensions import TypedDict
from cfn_typed.base import DeletionPolicy, DependsOn, ResourceAttrs, UpdateReplacePolicy, build
from cfn_typed.intrinsics import Expr


CONSTRAINTS:dict[str,Any]={
'AWS::KMS::Alias':{'TargetKeyId':{'l':1,'L':256},'AliasName':{'p':"^(alias/)[a-zA-Z0-9:/_-]+$",'l':1,'L':256}},
}


ATTRIBUTES:dict[str,Any]={"AWS::KMS::Alias":["AliasName"]}


RULES:dict[str,Any]={}
Nested types (3)

These are defined above the properties in the generated module.

class AliasProps(TypedDict, closed=True):
    'The ``AWS::KMS::Alias`` resource specifies a display name for a [KMS key](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#kms_keys).'
    TargetKeyId: Expr[str]
    'Associates the alias with the specified [](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk).'
    AliasName: Expr[str]
    'Specifies the alias name.'


class Alias(ResourceAttrs):
    'The ``AWS::KMS::Alias`` resource specifies a display name for a [KMS key](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#kms_keys).'
    Type: Literal['AWS::KMS::Alias']
    Properties: AliasProps


def alias(
    *,
    depends_on: DependsOn | None = None,
    deletion_policy: DeletionPolicy | None = None,
    update_replace_policy: UpdateReplacePolicy | None = None,
    condition: str | None = None,
    metadata: dict[str, Any] | None = None,
    **props: Unpack[AliasProps],
) -> Alias:
    return build('AWS::KMS::Alias', props, depends_on, deletion_policy, update_replace_policy, condition, metadata)