amazonka-redshift-1.6.1: Amazon Redshift 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.Redshift.CreateSnapshotCopyGrant

Contents

Description

Creates a snapshot copy grant that permits Amazon Redshift to use a customer master key (CMK) from AWS Key Management Service (AWS KMS) to encrypt copied snapshots in a destination region.

For more information about managing snapshot copy grants, go to Amazon Redshift Database Encryption in the Amazon Redshift Cluster Management Guide .

Synopsis

Creating a Request

createSnapshotCopyGrant Source #

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

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

  • cscgKMSKeyId - The unique identifier of the customer master key (CMK) to which to grant Amazon Redshift permission. If no key is specified, the default key is used.
  • cscgTags - A list of tag instances.
  • cscgSnapshotCopyGrantName - The name of the snapshot copy grant. This name must be unique in the region for the AWS account. Constraints: * Must contain from 1 to 63 alphanumeric characters or hyphens. * Alphabetic characters must be lowercase. * First character must be a letter. * Cannot end with a hyphen or contain two consecutive hyphens. * Must be unique for all clusters within an AWS account.

data CreateSnapshotCopyGrant Source #

The result of the CreateSnapshotCopyGrant action.

See: createSnapshotCopyGrant smart constructor.

Instances
Eq CreateSnapshotCopyGrant Source # 
Instance details

Defined in Network.AWS.Redshift.CreateSnapshotCopyGrant

Data CreateSnapshotCopyGrant Source # 
Instance details

Defined in Network.AWS.Redshift.CreateSnapshotCopyGrant

Methods

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

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

toConstr :: CreateSnapshotCopyGrant -> Constr #

dataTypeOf :: CreateSnapshotCopyGrant -> DataType #

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

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

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

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

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

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

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

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

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

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

Read CreateSnapshotCopyGrant Source # 
Instance details

Defined in Network.AWS.Redshift.CreateSnapshotCopyGrant

Show CreateSnapshotCopyGrant Source # 
Instance details

Defined in Network.AWS.Redshift.CreateSnapshotCopyGrant

Generic CreateSnapshotCopyGrant Source # 
Instance details

Defined in Network.AWS.Redshift.CreateSnapshotCopyGrant

Associated Types

type Rep CreateSnapshotCopyGrant :: Type -> Type #

Hashable CreateSnapshotCopyGrant Source # 
Instance details

Defined in Network.AWS.Redshift.CreateSnapshotCopyGrant

AWSRequest CreateSnapshotCopyGrant Source # 
Instance details

Defined in Network.AWS.Redshift.CreateSnapshotCopyGrant

Associated Types

type Rs CreateSnapshotCopyGrant :: Type #

ToHeaders CreateSnapshotCopyGrant Source # 
Instance details

Defined in Network.AWS.Redshift.CreateSnapshotCopyGrant

ToPath CreateSnapshotCopyGrant Source # 
Instance details

Defined in Network.AWS.Redshift.CreateSnapshotCopyGrant

ToQuery CreateSnapshotCopyGrant Source # 
Instance details

Defined in Network.AWS.Redshift.CreateSnapshotCopyGrant

NFData CreateSnapshotCopyGrant Source # 
Instance details

Defined in Network.AWS.Redshift.CreateSnapshotCopyGrant

Methods

rnf :: CreateSnapshotCopyGrant -> () #

type Rep CreateSnapshotCopyGrant Source # 
Instance details

Defined in Network.AWS.Redshift.CreateSnapshotCopyGrant

type Rep CreateSnapshotCopyGrant = D1 (MetaData "CreateSnapshotCopyGrant" "Network.AWS.Redshift.CreateSnapshotCopyGrant" "amazonka-redshift-1.6.1-5k9dueihUQf2a2gxNGkSPi" False) (C1 (MetaCons "CreateSnapshotCopyGrant'" PrefixI True) (S1 (MetaSel (Just "_cscgKMSKeyId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text)) :*: (S1 (MetaSel (Just "_cscgTags") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe [Tag])) :*: S1 (MetaSel (Just "_cscgSnapshotCopyGrantName") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text))))
type Rs CreateSnapshotCopyGrant Source # 
Instance details

Defined in Network.AWS.Redshift.CreateSnapshotCopyGrant

Request Lenses

cscgKMSKeyId :: Lens' CreateSnapshotCopyGrant (Maybe Text) Source #

The unique identifier of the customer master key (CMK) to which to grant Amazon Redshift permission. If no key is specified, the default key is used.

cscgTags :: Lens' CreateSnapshotCopyGrant [Tag] Source #

A list of tag instances.

cscgSnapshotCopyGrantName :: Lens' CreateSnapshotCopyGrant Text Source #

The name of the snapshot copy grant. This name must be unique in the region for the AWS account. Constraints: * Must contain from 1 to 63 alphanumeric characters or hyphens. * Alphabetic characters must be lowercase. * First character must be a letter. * Cannot end with a hyphen or contain two consecutive hyphens. * Must be unique for all clusters within an AWS account.

Destructuring the Response

createSnapshotCopyGrantResponse Source #

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

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

data CreateSnapshotCopyGrantResponse Source #

See: createSnapshotCopyGrantResponse smart constructor.

Instances
Eq CreateSnapshotCopyGrantResponse Source # 
Instance details

Defined in Network.AWS.Redshift.CreateSnapshotCopyGrant

Data CreateSnapshotCopyGrantResponse Source # 
Instance details

Defined in Network.AWS.Redshift.CreateSnapshotCopyGrant

Methods

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

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

toConstr :: CreateSnapshotCopyGrantResponse -> Constr #

dataTypeOf :: CreateSnapshotCopyGrantResponse -> DataType #

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

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

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

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

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

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

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

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

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

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

Read CreateSnapshotCopyGrantResponse Source # 
Instance details

Defined in Network.AWS.Redshift.CreateSnapshotCopyGrant

Show CreateSnapshotCopyGrantResponse Source # 
Instance details

Defined in Network.AWS.Redshift.CreateSnapshotCopyGrant

Generic CreateSnapshotCopyGrantResponse Source # 
Instance details

Defined in Network.AWS.Redshift.CreateSnapshotCopyGrant

Associated Types

type Rep CreateSnapshotCopyGrantResponse :: Type -> Type #

NFData CreateSnapshotCopyGrantResponse Source # 
Instance details

Defined in Network.AWS.Redshift.CreateSnapshotCopyGrant

type Rep CreateSnapshotCopyGrantResponse Source # 
Instance details

Defined in Network.AWS.Redshift.CreateSnapshotCopyGrant

type Rep CreateSnapshotCopyGrantResponse = D1 (MetaData "CreateSnapshotCopyGrantResponse" "Network.AWS.Redshift.CreateSnapshotCopyGrant" "amazonka-redshift-1.6.1-5k9dueihUQf2a2gxNGkSPi" False) (C1 (MetaCons "CreateSnapshotCopyGrantResponse'" PrefixI True) (S1 (MetaSel (Just "_cscgrsSnapshotCopyGrant") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe SnapshotCopyGrant)) :*: S1 (MetaSel (Just "_cscgrsResponseStatus") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Int)))

Response Lenses