amazonka-kms-1.6.0: Amazon Key Management Service SDK.

Copyright(c) 2013-2018 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay <brendan.g.hay+amazonka@gmail.com>
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellNone
LanguageHaskell2010

Network.AWS.KMS.CreateAlias

Contents

Description

Creates a display name for a customer master key (CMK). You can use an alias to identify a CMK in selected operations, such as Encrypt and GenerateDataKey .

Each CMK can have multiple aliases, but each alias points to only one CMK. The alias name must be unique in the AWS account and region. To simplify code that runs in multiple regions, use the same alias name, but point it to a different CMK in each region.

Because an alias is not a property of a CMK, you can delete and change the aliases of a CMK without affecting the CMK. Also, aliases do not appear in the response from the DescribeKey operation. To get the aliases of all CMKs, use the ListAliases operation.

An alias must start with the word alias followed by a forward slash (alias/ ). The alias name can contain only alphanumeric characters, forward slashes (/), underscores (_), and dashes (-). Alias names cannot begin with aws ; that alias name prefix is reserved by Amazon Web Services (AWS).

The alias and the CMK it is mapped to must be in the same AWS account and the same region. You cannot perform this operation on an alias in a different AWS account.

To map an existing alias to a different CMK, call UpdateAlias .

Synopsis

Creating a Request

createAlias #

Creates a value of CreateAlias with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • caAliasName - String that contains the display name. The name must start with the word "alias" followed by a forward slash (alias). Aliases that begin with "aliasAWS" are reserved.
  • caTargetKeyId - Identifies the CMK for which you are creating the alias. This value cannot be an alias. Specify the key ID or the Amazon Resource Name (ARN) of the CMK. For example: * Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab * Key ARN: arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab To get the key ID and key ARN for a CMK, use ListKeys or DescribeKey .

data CreateAlias #

See: createAlias smart constructor.

Instances

Eq CreateAlias # 
Data CreateAlias # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> CreateAlias -> c CreateAlias #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c CreateAlias #

toConstr :: CreateAlias -> Constr #

dataTypeOf :: CreateAlias -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c CreateAlias) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c CreateAlias) #

gmapT :: (forall b. Data b => b -> b) -> CreateAlias -> CreateAlias #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> CreateAlias -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> CreateAlias -> r #

gmapQ :: (forall d. Data d => d -> u) -> CreateAlias -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> CreateAlias -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> CreateAlias -> m CreateAlias #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> CreateAlias -> m CreateAlias #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> CreateAlias -> m CreateAlias #

Read CreateAlias # 
Show CreateAlias # 
Generic CreateAlias # 

Associated Types

type Rep CreateAlias :: * -> * #

Hashable CreateAlias # 
ToJSON CreateAlias # 
NFData CreateAlias # 

Methods

rnf :: CreateAlias -> () #

AWSRequest CreateAlias # 
ToHeaders CreateAlias # 

Methods

toHeaders :: CreateAlias -> [Header] #

ToPath CreateAlias # 
ToQuery CreateAlias # 
type Rep CreateAlias # 
type Rep CreateAlias = D1 * (MetaData "CreateAlias" "Network.AWS.KMS.CreateAlias" "amazonka-kms-1.6.0-1x3YFaSKSJTDyirX3XbKEX" False) (C1 * (MetaCons "CreateAlias'" PrefixI True) ((:*:) * (S1 * (MetaSel (Just Symbol "_caAliasName") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 * Text)) (S1 * (MetaSel (Just Symbol "_caTargetKeyId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 * Text))))
type Rs CreateAlias # 

Request Lenses

caAliasName :: Lens' CreateAlias Text #

String that contains the display name. The name must start with the word "alias" followed by a forward slash (alias). Aliases that begin with "aliasAWS" are reserved.

caTargetKeyId :: Lens' CreateAlias Text #

Identifies the CMK for which you are creating the alias. This value cannot be an alias. Specify the key ID or the Amazon Resource Name (ARN) of the CMK. For example: * Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab * Key ARN: arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab To get the key ID and key ARN for a CMK, use ListKeys or DescribeKey .

Destructuring the Response

createAliasResponse :: CreateAliasResponse #

Creates a value of CreateAliasResponse with the minimum fields required to make a request.

data CreateAliasResponse #

See: createAliasResponse smart constructor.

Instances

Eq CreateAliasResponse # 
Data CreateAliasResponse # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> CreateAliasResponse -> c CreateAliasResponse #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c CreateAliasResponse #

toConstr :: CreateAliasResponse -> Constr #

dataTypeOf :: CreateAliasResponse -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c CreateAliasResponse) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c CreateAliasResponse) #

gmapT :: (forall b. Data b => b -> b) -> CreateAliasResponse -> CreateAliasResponse #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> CreateAliasResponse -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> CreateAliasResponse -> r #

gmapQ :: (forall d. Data d => d -> u) -> CreateAliasResponse -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> CreateAliasResponse -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> CreateAliasResponse -> m CreateAliasResponse #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> CreateAliasResponse -> m CreateAliasResponse #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> CreateAliasResponse -> m CreateAliasResponse #

Read CreateAliasResponse # 
Show CreateAliasResponse # 
Generic CreateAliasResponse # 
NFData CreateAliasResponse # 

Methods

rnf :: CreateAliasResponse -> () #

type Rep CreateAliasResponse # 
type Rep CreateAliasResponse = D1 * (MetaData "CreateAliasResponse" "Network.AWS.KMS.CreateAlias" "amazonka-kms-1.6.0-1x3YFaSKSJTDyirX3XbKEX" False) (C1 * (MetaCons "CreateAliasResponse'" PrefixI False) (U1 *))