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

Copyright(c) 2013-2017 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 Source #

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 Source #

See: createAlias smart constructor.

Instances

Eq CreateAlias Source # 
Data CreateAlias Source # 

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 Source # 
Show CreateAlias Source # 
Generic CreateAlias Source # 

Associated Types

type Rep CreateAlias :: * -> * #

Hashable CreateAlias Source # 
ToJSON CreateAlias Source # 
NFData CreateAlias Source # 

Methods

rnf :: CreateAlias -> () #

AWSRequest CreateAlias Source # 
ToQuery CreateAlias Source # 
ToPath CreateAlias Source # 
ToHeaders CreateAlias Source # 

Methods

toHeaders :: CreateAlias -> [Header] #

type Rep CreateAlias Source # 
type Rep CreateAlias = D1 (MetaData "CreateAlias" "Network.AWS.KMS.CreateAlias" "amazonka-kms-1.5.0-1ul8bs34gET2EfYsh0ppOn" 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 Source # 

Request Lenses

caAliasName :: Lens' CreateAlias Text Source #

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 Source #

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 Source #

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

data CreateAliasResponse Source #

See: createAliasResponse smart constructor.

Instances

Eq CreateAliasResponse Source # 
Data CreateAliasResponse Source # 

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 Source # 
Show CreateAliasResponse Source # 
Generic CreateAliasResponse Source # 
NFData CreateAliasResponse Source # 

Methods

rnf :: CreateAliasResponse -> () #

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