【问题标题】:Auth0 and S3 BucketsAuth0 和 S3 存储桶
【发布时间】:2015-04-25 11:43:07
【问题描述】:

我有一个问题。 我正在使用 Auth0 和 AWS SDK 访问 S3 上的一些存储桶。我有个问题。有没有办法在不使用存储桶策略的情况下限制对 S3 存储桶的访问?也许使用 Auth0 提供的元数据。

谢谢大家

【问题讨论】:

  • 你有解决办法吗,我也面临同样的问题

标签: amazon-web-services amazon-s3 amazon buckets auth0


【解决方案1】:

要限制对 S3 存储桶的访问,您必须使用 Amazon IAM。

使用 Auth0 时,您基本上是将 Auth0 令牌交换为 Amazon 令牌。然后,使用该 Amazon 令牌调用 S3。这意味着为了限制对 S3 某些部分的访问,您将不得不更改对 Amazon 令牌的权限,这意味着您需要使用 IAM。

有道理吗?

干杯!

【讨论】:

  • 感谢您的回答。我知道我必须使用 IAM 并编写一个策略来限制对 S3 存储桶的访问,但我的问题有点高级,因为我有一个包含角色、用户和组的动态应用程序。是否可以创建从 Auth0 到 AWS 的动态策略来缩小 Amazon 上的预配置策略?。
【解决方案2】:

也许您正在寻找类似https://github.com/auth0/auth0-s3-sample 的东西来限制用户对其资源的访问。

用户存储桶的 IAM 政策(仅限于这些用户)

{
  "Version": "2012-10-17",
  "Statement": [{
      "Sid": "AllowEverythingOnSpecificUserPath",
      "Effect": "Allow",
      "Action": [
        "*"
      ],
      "Resource": [
          "arn:aws:s3:::YOUR_BUCKET/dropboxclone/${saml:sub}",
          "arn:aws:s3:::YOUR_BUCKET/dropboxclone/${saml:sub}/*"]
   },
   {
      "Sid": "AllowListBucketIfSpecificPrefixIsIncludedInRequest",
      "Action": ["s3:ListBucket"],
      "Effect": "Allow",
      "Resource": ["arn:aws:s3:::YOUR_BUCKET"],
      "Condition":{
        "StringEquals": { "s3:prefix":["dropboxclone/${saml:sub}"] }
       }
    }
  ]
}

但是,如果用户有可共享的组文件夹,它可能会变得更加棘手,我正在亲自调查它。 签出此 pdf:https://www.pingidentity.com/content/dam/pic/downloads/resources/ebooks/en/amazon-web-services-ebook.pdf?id=b6322a80-f285-11e3-ac10-0800200c9a66 第 11 页 为 AWS API 使用开放式连接,用例类似。

因此,可以选择执行以下操作

[USER] -> [Auth0] -> [AWS (Federation/SAML)] -> [exchange temporary AWS credentials] -> [use temp. credentials to access S3]

希望它有所帮助,即使您在很久以前问过这个问题,其他用户也可能会受益。如果您找到了更好的解决方案,请分享。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-01-19
    • 1970-01-01
    • 2020-01-14
    • 1970-01-01
    • 1970-01-01
    • 2016-08-25
    • 2010-10-23
    • 2014-02-03
    相关资源
    最近更新 更多