0

I set up an AWS IoT Analytics Channel, Pipeline and Datastore. Everything is working as expected when I'm using service-managed S3-Buckets for the datastore.

However, I want to change from the service managed S3-Bucket to a custom one. The channel and pipeline still seem to work, but the data does not get saved in my S3 Bucket. Because it works with a service-managed S3 Bucket, I think this might be some kind of problem with the permissions.

My Bucket has the following Policy attached:

{
"Version": "2012-10-17",
"Id": "MyPolicyID",
"Statement": [
    {
        "Effect": "Allow",
        "Principal": {
            "Service": "iotanalytics.amazonaws.com"
        },
        "Action": [
            "s3:GetBucketLocation",
            "s3:GetObject",
            "s3:ListBucket",
            "s3:ListBucketMultipartUploads",
            "s3:ListMultipartUploadParts",
            "s3:AbortMultipartUpload",
            "s3:PutObject",
            "s3:DeleteObject"
        ],
        "Resource": [
            "arn:aws:s3:::ma-datastore",
            "arn:aws:s3:::ma-datastore/*"
        ]
    }
]

}

The role I use for the datastore has the following Policy:

{
"Version": "2012-10-17",
"Statement": [
    {
        "Effect": "Allow",
        "Action": [
            "s3:PutObject",
            "s3:DeleteObject",
            "s3:GetBucketLocation"
        ],
        "Resource": [
            "arn:aws:s3:::ma-datastore",
            "arn:aws:s3:::ma-datastore/*"
        ]
    }
]

}

The datastore and the bucket were created in the same region and with the same account. There are no CloudWatch Logs.

Why is the data not stored in my S3 bucket?

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.