Skip to content

Commit 962ce0d

Browse files
authored
docs: Add AWS IAM permissions changes to migration guide (#286)
1 parent 6b1b1fb commit 962ce0d

File tree

1 file changed

+23
-1
lines changed

1 file changed

+23
-1
lines changed

README.md

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,8 @@ The official AWS S3 file storage adapter for Parse Server. See [Parse Server S3
3232
- [Compatibility with other Storage Providers](#compatibility-with-other-storage-providers)
3333
- [Digital Ocean Spaces](#digital-ocean-spaces)
3434
- [Migration Guide from 3.x to 4.x](#migration-guide-from-3x-to-4x)
35+
- [AWS IAM Permissions](#aws-iam-permissions)
36+
- [Passing S3 Credentials](#passing-s3-credentials)
3537

3638

3739
# Getting Started
@@ -317,7 +319,27 @@ var api = new ParseServer({
317319

318320
# Migration Guide from 3.x to 4.x
319321

320-
Due to the deprecation of the AWS SDK v2, Parse Server S3 Adapter 4.x adopts the AWS SDK v3. When upgrading from Parse Server S3 Adapter 3.x to 4.x, consider that S3 credentials are passed differently:
322+
Due to the deprecation of the AWS SDK v2, Parse Server S3 Adapter 4.x adopts the AWS SDK v3. When upgrading from Parse Server S3 Adapter 3.x to 4.x, consider the following changes:
323+
324+
## AWS IAM Permissions
325+
326+
In version 4.x, when uploading a file, the adapter will automatically create the specified S3 bucket, if it doesn't exist yet. To find out whether the bucket already exists, it will send a `HEAD` request to AWS S3 to list the existing bucket. This request requires the AWS IAM permission `s3:ListBucket` on the bucket resource, for example:
327+
328+
```json
329+
{
330+
"Effect": "Allow",
331+
"Action": [
332+
"s3:ListBucket"
333+
],
334+
"Resource": "arn:aws:s3:::<BUCKET_NAME>"
335+
}
336+
```
337+
> [!NOTE]
338+
> The specified resource needs to be the bucket ARN itself, no `/*` at the end, because it's a bucket-level permission, not object-level.
339+
340+
## Passing S3 Credentials
341+
342+
In version 4.x the S3 credentials are passed differently:
321343

322344
*Parse Server S3 Adapter 3.x:*
323345

0 commit comments

Comments
 (0)