How do I give an ApolloApi lambda/gateway access r...
# help
a
How do I give an ApolloApi lambda/gateway access rights to upload/delete/get objects from an S3 Bucket. These are Bucket settings:
Copy code
const files = new sst.Bucket(this, 'files', {
      s3Bucket: {
        autoDeleteObjects: false,
        removalPolicy: RemovalPolicy.RETAIN,
        publicReadAccess: false,
        enforceSSL: true,
        blockPublicAccess: {
          blockPublicAcls: false,
          blockPublicPolicy: false,
          ignorePublicAcls: false,
        }
      },
    });

   const api = new sst.ApolloApi(this, 'Api', { ...settings });
   
   files.s3Bucket.addCorsRule({
      allowedMethods: [
        "GET",
        "PUT",
        "POST",
        "HEAD",
        "DELETE"
      ],
      allowedOrigins: ['*'],
      allowedHeaders: ['*'],
      exposedHeaders: [
        "x-amz-server-side-encryption",
        "x-amz-request-id",
        "x-amz-id-2"
      ],
      maxAge: 3000,
    })

   api.setPermissions([....something goes here...]) // ????
t
Can you try
api.setPermissions([files])
Different ways to do permissions here: https://docs.serverless-stack.com/util/Permissions