You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何配置AWS权限策略让Rekognition DetectFaces仅使用S3桶内图片?

正确配置Rekognition DetectFaces仅访问指定S3桶的权限策略

你的当前策略有个关键问题:Rekognition的Resource字段不能直接填S3对象的ARN,因为Rekognition的资源标识规则和S3不一样。要限制DetectFaces仅用指定S3桶里的图片,得通过条件判断来约束请求里引用的S3资源。

以下是修正后的权限策略:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "AllowRekognitionDetectFacesFromSpecificBucket",
            "Effect": "Allow",
            "Action": "rekognition:DetectFaces",
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "s3:bucket": "my-bucket",
                    "s3:prefix": ""
                }
            }
        },
        {
            "Sid": "AllowS3AccessToSpecificBucketObjects",
            "Effect": "Allow",
            "Action": [
                "s3:GetObject"
            ],
            "Resource": "arn:aws:s3:::my-bucket/*"
        }
    ]
}

核心细节说明:

  • Rekognition权限部分:
    • Resource设为*,因为DetectFaces操作不支持指定具体Rekognition资源ARN,只能通过Condition限制S3源。
    • Condition里的StringEquals强制要求请求必须引用my-bucket这个桶;s3:prefix设为空表示允许桶内所有对象,要是想限制特定前缀,改成images/*这类路径就行。
  • S3权限部分:
    • 不用给s3:*Object这么宽泛的权限,只需要GetObject(读取图片内容)就够了,避免权限过度开放。

验证方式:

用AWS SDK调用DetectFaces时,要是尝试用其他S3桶的图片,会直接收到权限拒绝错误;只有指定桶里的图片能正常调用。

内容的提问来源于stack exchange,提问作者Lee H

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 11:27:21