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 # 
Instance details

Defined in Network.AWS.SQS.AddPermission

Data AddPermission # 
Instance details

Defined in Network.AWS.SQS.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 # 
Instance details

Defined in Network.AWS.SQS.AddPermission

Show AddPermission # 
Instance details

Defined in Network.AWS.SQS.AddPermission

Generic AddPermission # 
Instance details

Defined in Network.AWS.SQS.AddPermission

Associated Types

type Rep AddPermission :: * -> * #

Hashable AddPermission # 
Instance details

Defined in Network.AWS.SQS.AddPermission

AWSRequest AddPermission # 
Instance details

Defined in Network.AWS.SQS.AddPermission

Associated Types

type Rs AddPermission :: * #

ToHeaders AddPermission # 
Instance details

Defined in Network.AWS.SQS.AddPermission

ToPath AddPermission # 
Instance details

Defined in Network.AWS.SQS.AddPermission

ToQuery AddPermission # 
Instance details

Defined in Network.AWS.SQS.AddPermission

NFData AddPermission # 
Instance details

Defined in Network.AWS.SQS.AddPermission

Methods

rnf :: AddPermission -> () #

type Rep AddPermission # 
Instance details

Defined in Network.AWS.SQS.AddPermission

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

Defined in Network.AWS.SQS.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 # 
Instance details

Defined in Network.AWS.SQS.AddPermission

Data AddPermissionResponse # 
Instance details

Defined in Network.AWS.SQS.AddPermission

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 # 
Instance details

Defined in Network.AWS.SQS.AddPermission

Show AddPermissionResponse # 
Instance details

Defined in Network.AWS.SQS.AddPermission

Generic AddPermissionResponse # 
Instance details

Defined in Network.AWS.SQS.AddPermission

Associated Types

type Rep AddPermissionResponse :: * -> * #

NFData AddPermissionResponse # 
Instance details

Defined in Network.AWS.SQS.AddPermission

Methods

rnf :: AddPermissionResponse -> () #

type Rep AddPermissionResponse # 
Instance details

Defined in Network.AWS.SQS.AddPermission

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