amazonka-sqs-1.6.0: Amazon Simple Queue 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.SQS.AddPermission

Contents

Description

Adds a permission to a queue for a specific principal . This allows sharing access to the queue.

When you create a queue, you have full control access rights for the queue. Only you, the owner of the queue, can grant or deny permissions to the queue. For more information about these permissions, see Shared Queues in the Amazon Simple Queue Service Developer Guide .

Synopsis

Creating a Request

addPermission #

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

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

  • apQueueURL - The URL of the Amazon SQS queue to which permissions are added. Queue URLs are case-sensitive.
  • apLabel - The unique identification of the permission you're setting (for example, AliceSendMessage ). Maximum 80 characters. Allowed characters include alphanumeric characters, hyphens (- ), and underscores (_ ).
  • apAWSAccountIds - The AWS account number of the principal who is given permission. The principal must have an AWS account, but does not need to be signed up for Amazon SQS. For information about locating the AWS account identification, see Your AWS Identifiers in the Amazon Simple Queue Service Developer Guide .
  • apActions - The action the client wants to allow for the specified principal. The following values are valid: * * * ChangeMessageVisibility * DeleteMessage * GetQueueAttributes * GetQueueUrl * ReceiveMessage * SendMessage For more information about these actions, see Understanding Permissions in the Amazon Simple Queue Service Developer Guide . Specifying SendMessage , DeleteMessage , or ChangeMessageVisibility for ActionName.n also grants permissions for the corresponding batch versions of those actions: SendMessageBatch , DeleteMessageBatch , and ChangeMessageVisibilityBatch .

data AddPermission #

See: addPermission smart constructor.

Instances

Eq AddPermission # 
Data AddPermission # 

Methods

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

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

toConstr :: AddPermission -> Constr #

dataTypeOf :: AddPermission -> DataType #

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

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

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

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

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

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

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

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

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

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

Read AddPermission # 
Show AddPermission # 
Generic AddPermission # 

Associated Types

type Rep AddPermission :: * -> * #

Hashable AddPermission # 
NFData AddPermission # 

Methods

rnf :: AddPermission -> () #

AWSRequest AddPermission # 
ToHeaders AddPermission # 
ToPath AddPermission # 
ToQuery AddPermission # 
type Rep AddPermission # 
type Rep AddPermission = D1 * (MetaData "AddPermission" "Network.AWS.SQS.AddPermission" "amazonka-sqs-1.6.0-6AKMU5Om8FbICeCVgWDhlE" False) (C1 * (MetaCons "AddPermission'" PrefixI True) ((:*:) * ((:*:) * (S1 * (MetaSel (Just Symbol "_apQueueURL") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 * Text)) (S1 * (MetaSel (Just Symbol "_apLabel") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 * Text))) ((:*:) * (S1 * (MetaSel (Just Symbol "_apAWSAccountIds") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 * [Text])) (S1 * (MetaSel (Just Symbol "_apActions") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 * [Text])))))
type Rs AddPermission # 

Request Lenses

apQueueURL :: Lens' AddPermission Text #

The URL of the Amazon SQS queue to which permissions are added. Queue URLs are case-sensitive.

apLabel :: Lens' AddPermission Text #

The unique identification of the permission you're setting (for example, AliceSendMessage ). Maximum 80 characters. Allowed characters include alphanumeric characters, hyphens (- ), and underscores (_ ).

apAWSAccountIds :: Lens' AddPermission [Text] #

The AWS account number of the principal who is given permission. The principal must have an AWS account, but does not need to be signed up for Amazon SQS. For information about locating the AWS account identification, see Your AWS Identifiers in the Amazon Simple Queue Service Developer Guide .

apActions :: Lens' AddPermission [Text] #

The action the client wants to allow for the specified principal. The following values are valid: * * * ChangeMessageVisibility * DeleteMessage * GetQueueAttributes * GetQueueUrl * ReceiveMessage * SendMessage For more information about these actions, see Understanding Permissions in the Amazon Simple Queue Service Developer Guide . Specifying SendMessage , DeleteMessage , or ChangeMessageVisibility for ActionName.n also grants permissions for the corresponding batch versions of those actions: SendMessageBatch , DeleteMessageBatch , and ChangeMessageVisibilityBatch .

Destructuring the Response

addPermissionResponse :: AddPermissionResponse #

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

data AddPermissionResponse #

See: addPermissionResponse smart constructor.

Instances

Eq AddPermissionResponse # 
Data AddPermissionResponse # 

Methods

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

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

toConstr :: AddPermissionResponse -> Constr #

dataTypeOf :: AddPermissionResponse -> DataType #

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

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

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

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

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

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

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

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

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

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

Read AddPermissionResponse # 
Show AddPermissionResponse # 
Generic AddPermissionResponse # 
NFData AddPermissionResponse # 

Methods

rnf :: AddPermissionResponse -> () #

type Rep AddPermissionResponse # 
type Rep AddPermissionResponse = D1 * (MetaData "AddPermissionResponse" "Network.AWS.SQS.AddPermission" "amazonka-sqs-1.6.0-6AKMU5Om8FbICeCVgWDhlE" False) (C1 * (MetaCons "AddPermissionResponse'" PrefixI False) (U1 *))