Jibe is able to receive messages from Amazon SNS and Amazon SQS to identify Amazon S3 objects that have been modified outside the Access Anywhere Server and sync them with Access Anywhere metadata.
For a simpler configuration without Amazon SNS see Jibe and Amazon SQS
For general information see Jibe Documentation.
In this scenario, Jibe connects to an Amazon SQS queue that subscribes to an Amazon SNS topic that receives S3 notification events.
You'll need to use a topic and queue when you have non-Jibe consumers of S3 notifications. This configuration is also required to send messages across regions and recommended when sending messages across AWS accounts.
Jibe can also process notifications from bucket replicas.
Jibe needs a Access Anywhere Server account with an Administrator role in order to synchronize objects. This does not need to be the Org Administator.
Create a topic in the region where your buckets are located.
Complete the form
jibe-source-activity
Select Save
Record the ARN, for example
arn:aws:sns:us-east-1:123456789021:jibe-source-activity
Before Amazon S3 can publish messages to a topic, you must grant the Amazon S3 principal the necessary permissions.
Replace the access policy attached to the topic with the following policy. In it, provide your SNS topic ARN, bucket name, and bucket owner's account ID. This example allows subscription to the topic by a second account.
{ "Version": "2012-10-17", "Id": "example-ID", "Statement": [ { "Sid": "SNS topic policy", "Effect": "Allow", "Principal": { "Service": "s3.amazonaws.com" }, "Action": [ "SNS:Publish" ], "Resource": "SNS-topic-ARN", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:s3:*:*:*" }, "StringEquals": { "aws:SourceAccount": "bucket-owner-account-id" } } }, { "Sid": "Access By Another Account", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::second-account-id:root" }, "Action": "SNS:Subscribe", "Resource": "arn:aws:sns:us-west-1:first-account-id:jibe-source-activity" } ] }
Select a bucket to configure from the S3 Management Console.
Complete the page:
If your topic is not available check you are in the same region.
If you get this error there is a problem with granting Amazon S3 permissions to publish to your SNS Topic.
Unable to validate the following destination configurations
For more information see Walkthrough: Configuring a bucket for notifications (SNS topic or SQS queue)
Create a “Standard” SQS Queue in the account and region where your EC2 instances are running.
* Type of 'Standard'
* Name or jibe-source-activity
(for example)
* Visibility timeout - Enter 5 minutes * Message retention period - Enter 14 days * Delivery delay - Leave as 0 seconds * Maximum nessage size - Leave as 256 KB * Receive message wait time - Choose 20 seconds
* Define who can send messages to the queue - leave as 'Only the queue owner' * Define who can receive messages from the queue - leave as 'Only the queue owner'
The next step creates a subscription from the queue to the topic.
If the SQS queue and EC2 instance where Jibe is running are in the same AWS account you can use a role to grant access instead of credentials.
For example, create an IAM role called JibeConsumeMessagesRole
with the following policy,
replacing the Resource with an ARN filter that matches your account and queue.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "sqs:DeleteMessage", "sqs:GetQueueUrl", "sqs:ReceiveMessage", "sqs:GetQueueAttributes" ], "Resource": "arn:aws:sqs:*:410679986536:jibe-source-activity" }, { "Sid": "VisualEditor1", "Effect": "Allow", "Action": "sqs:ListQueues", "Resource": "*" } ] }
Add the IAM role to your EC2 instance. You can do this from the instance detail page. Choose Actions > Security > Modify IAM Role.
Continue to set up Jibe as per the section Jibe Setup in Jibe and Amazon SQS.