Aspose.Slides Cloud Self-Host Storage via AWS S3

We are using Aspose.Slides Cloud as self-host solution:

The only 3rd party storage configuration I found is Google Drive. How can I configure AWS S3 as storage?

Thank you.

@Sergey_Lesnyak

Thanks for your request.
We do not currently have such an option.
I have created a ticket (ID SLIDESCLOUD-1583) for this feature.
We will inform you on the progress.

The issues you have found earlier (filed as SLIDESCLOUD-1583) have been fixed in Aspose.Slides Cloud 22.10. You can check all fixes on the Release Notes page.

@Sergey_Lesnyak,
To configure AWS S3 as storage with Aspose.Slides Cloud 22.10, you can use the following command:

docker run -p 8088:80 -e "LicensePublicKey=public_key" -e "LicensePrivateKey=private_key" \
-e "AWSS3_ACCESS_KEY=myS3AccessKey" -e "AWSS3_SECRET_KEY=myS3SecretKey" -e "AWSS3_REGION=us-east-2" -e "AWSS3_BUCKET=myBucket" \
aspose/slides-cloud
1 Like

Great news, I was waitng for this feature. Sorry for a bit late response. Currently trying to integrate it to my environment and getting error ‘Access Denied’

fail: Aspose.Slides.Cloud.Base.Filters.ExceptionFilter[0]
      ERROR internalError Exception of type 'Amazon.Runtime.Internal.HttpErrorResponseException' was thrown.

fail: Aspose.Slides.Cloud.Base.Filters.ExceptionFilter[0]
      ERROR internalError Access Denied

fail: Aspose.Slides.Cloud.Base.Filters.ExceptionFilter[0]
      ERROR internalError One or more errors occurred. (Access Denied)

Pretty sure current setup was enough to work with files via fuse driver. Maybe some permissions are missing.
Can you please provide minimal list of S3 permisions required?

Thank You.

@Sergey_Lesnyak,
I’ve added a ticket with ID SLIDESCLOUD-1602 to our issue-tracking system. Our development team will investigate the case. We will inform you of any progress.

I have tried some combinations of action/resource permissions. Find out that following combination works, but it is not practical:

{
   "Version":"2012-10-17",
   "Statement":[
      {
         "Effect":"Allow",
         "Action":[
            "s3:*"
         ],
         "Resource":"arn:aws:s3:::<bucket-name>"
      },
      {
         "Effect":"Allow",
         "Action":[
            "s3:*"
         ],
         "Resource":"*"
      },
      {
         "Effect":"Allow",
         "Action":[
            "s3:*"
         ],
         "Resource":"arn:aws:s3:::<bucket-name>/*"
      }
   ]
}

It stop working if part removed

      {
         "Effect":"Allow",
         "Action":[
            "s3:*"
         ],
         "Resource":"*"
      },

It looks like missing permission relates to some s3 action on non-target bucket/object. Hope it make some clarification to the issue.

@Sergey_Lesnyak,
Thank you for the additional information. I’ve forwarded it to our developers.