CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl/maven-com-amazonaws--aws-java-sdk-sqs

The AWS Java SDK for Amazon SQS module provides client classes for communicating with Amazon Simple Queue Service

Pending
Overview
Eval results
Files

queue-permissions.mddocs/

Queue Permissions

Queue permissions enable cross-account access and fine-grained authorization control for SQS queues through IAM-style policies and AWS account-based permission management.

Add Permissions

Add Queue Permission

Grant access to other AWS accounts or services for specific SQS operations.

AddPermissionResult addPermission(AddPermissionRequest request);

// Convenience method
AddPermissionResult addPermission(String queueUrl, String label, List<String> aWSAccountIds, List<String> actions);

class AddPermissionRequest extends AmazonWebServiceRequest {
    String getQueueUrl();
    AddPermissionRequest withQueueUrl(String queueUrl);
    
    String getLabel();
    AddPermissionRequest withLabel(String label);
    
    List<String> getAWSAccountIds();
    AddPermissionRequest withAWSAccountIds(List<String> aWSAccountIds);
    
    List<String> getActions();
    AddPermissionRequest withActions(List<String> actions);
}

class AddPermissionResult {
    // Empty result class - success indicated by no exception
}

Usage Example:

// Grant cross-account access
List<String> accounts = Arrays.asList("123456789012", "123456789013");
List<String> actions = Arrays.asList("SendMessage", "ReceiveMessage");

AddPermissionRequest request = new AddPermissionRequest()
    .withQueueUrl(queueUrl)
    .withLabel("CrossAccountAccess")
    .withAWSAccountIds(accounts)
    .withActions(actions);

client.addPermission(request);

Remove Permissions

Remove Queue Permission

Remove previously granted permissions by label.

RemovePermissionResult removePermission(RemovePermissionRequest request);

// Convenience method
RemovePermissionResult removePermission(String queueUrl, String label);

class RemovePermissionRequest extends AmazonWebServiceRequest {
    String getQueueUrl();
    RemovePermissionRequest withQueueUrl(String queueUrl);
    
    String getLabel();
    RemovePermissionRequest withLabel(String label);
}

class RemovePermissionResult {
    // Empty result class - success indicated by no exception
}

Usage Example:

// Remove previously granted permission
client.removePermission(new RemovePermissionRequest()
    .withQueueUrl(queueUrl)
    .withLabel("CrossAccountAccess"));

Install with Tessl CLI

npx tessl i tessl/maven-com-amazonaws--aws-java-sdk-sqs

docs

async-operations.md

buffered-client.md

client-management.md

dead-letter-queues.md

index.md

message-operations.md

message-visibility.md

queue-operations.md

queue-permissions.md

queue-tagging.md

tile.json