amazonka-redshift-1.6.0: 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 # 
Data CreateSnapshotCopyGrant Source # 

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

Methods

rnf :: CreateSnapshotCopyGrant -> () #

AWSRequest CreateSnapshotCopyGrant Source # 
ToHeaders CreateSnapshotCopyGrant Source # 
ToPath CreateSnapshotCopyGrant Source # 
ToQuery CreateSnapshotCopyGrant Source # 
type Rep CreateSnapshotCopyGrant Source # 
type Rep CreateSnapshotCopyGrant = D1 * (MetaData "CreateSnapshotCopyGrant" "Network.AWS.Redshift.CreateSnapshotCopyGrant" "amazonka-redshift-1.6.0-7nAokQL56xfEdvuigF8j6k" False) (C1 * (MetaCons "CreateSnapshotCopyGrant'" PrefixI True) ((:*:) * (S1 * (MetaSel (Just Symbol "_cscgKMSKeyId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 * (Maybe Text))) ((:*:) * (S1 * (MetaSel (Just Symbol "_cscgTags") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 * (Maybe [Tag]))) (S1 * (MetaSel (Just Symbol "_cscgSnapshotCopyGrantName") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 * Text)))))
type Rs CreateSnapshotCopyGrant Source # 

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

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 # 
Show CreateSnapshotCopyGrantResponse Source # 
Generic CreateSnapshotCopyGrantResponse Source # 
NFData CreateSnapshotCopyGrantResponse Source # 
type Rep CreateSnapshotCopyGrantResponse Source # 
type Rep CreateSnapshotCopyGrantResponse = D1 * (MetaData "CreateSnapshotCopyGrantResponse" "Network.AWS.Redshift.CreateSnapshotCopyGrant" "amazonka-redshift-1.6.0-7nAokQL56xfEdvuigF8j6k" False) (C1 * (MetaCons "CreateSnapshotCopyGrantResponse'" PrefixI True) ((:*:) * (S1 * (MetaSel (Just Symbol "_cscgrsSnapshotCopyGrant") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 * (Maybe SnapshotCopyGrant))) (S1 * (MetaSel (Just Symbol "_cscgrsResponseStatus") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 * Int))))

Response Lenses