Incorrect expiry on S3 signed urls

  1. My goal: Get pre-signed urls for s3 objects with an expiry value of 604800 seconds
  2. Issue: The expiry is always set to 900 secs
  3. Steps I've taken to troubleshoot:
    Followed the docs: Amazon S3 query tutorial | Retool Docs

Here is my query:

I also tried other values such at 60, 300, 5000 but it always comes out with a link expiry of 900 seconds

The link does work, but it expires too quickly.

  1. Additional info: (Cloud or Self-hosted, Screenshots)
    My AWS IAM Policy is:
{
    Version = "2012-10-17"
    Statement = [
      {
        Action = [
          "s3:GetObject",
          "s3:GetObjectAttributes",
          "s3:GetObjectVersion",
          "s3:ListBucket",
        ],
        Effect = "Allow",
        Resource = [
          "arn:aws:s3:::<bucket>",
          "arn:aws:s3:::<bucket>/*",
        ],
      },
    ]
  }

+1
Also trying to generate a long lasting signed link but it always generates it with the default 900 seconds.

Using self hosted retool version 3.148.5

I found expiresIn: <SECONDS> worked, but ran into a different limitation within S3 where the link will expire after the STS session key expires that was used to generate the link. Effectively forcing the max expiry to 12hr.