amazon-web-services - 基于标签的 AWS IoT 资源访问不起作用

标签 amazon-web-services amazon-iam aws-iot

我们想设置一些策略,以便只有设备“所有者”才能访问设备影子(“iot:UpdateThingShadow”、“iot:GetThingShadow”)。

根据此文档 ( https://docs.aws.amazon.com/iot/latest/developerguide/security_iam_id-based-policy-examples.html#security_iam_id-based-policy-examples-view-thing-tags ),应该可以定义设备标签并将其与 IAM 用户名进行比较。 像这样:

        {
            "Sid": "ConnectToThings",
            "Effect": "Allow",
            "Action": [
                "iot:Connect"
            ],
            "Resource": "arn:aws:iot:*:*:thing/*"
        }
        {
            "Sid": "ViewThingsIfOwner",
            "Effect": "Allow",
            "Action": [
                "iot:GetThingShadow",
                "iot:UpdateThingShadow"
            ],
            "Resource": "arn:aws:iot:*:*:thing/*",
            "Condition": {
                "StringEquals": {"iot:ResourceTag/Owner": "${aws:username}"}
            }
        }

我们尝试了以下配置,但没有成功:

IOT 事物 -> “thing00”,标记为“Owner=user00”

IAM 用户 -> “user00”和“user01”具有上面定义的 IAM 策略。

“user00”和“user01”都不能访问“thing00”的影子服务。我们是否遗漏了什么?

最佳答案

根据 this , 物联网支持基于标签的授权。 如果您将标签分配给您的用户或角色,则只有当资源和委托(delegate)人都附加了相同的标签时,您才能授予访问权限。

在将相同的标签附加到资源和用户之后,我会尝试以下条件,例如所有者=用户 A。

"Condition": {
    "StringEquals": {
        "aws:ResourceTag/Owner": "${aws:PrincipalTag/Owner}"
     }
}

如果可行,您可以根据您的访问管理策略对您的事物进行标记,并为您的用户分配一个属性(标签)。

article建议 UpdateThingsShadow 可以与 PrincipalTag 一起使用。

关于amazon-web-services - 基于标签的 AWS IoT 资源访问不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59767165/

相关文章:

amazon-web-services - DynamoDB 是否适合我需要访问记录和摘要(聚合)信息的每天 100 万事件的场景

amazon-web-services - 如何在React-Native中实现AWS IoT(设备)?

amazon-web-services - 使用 ElasticSearch 进行索引存储的 AWS Elastisearch CodeBuild 集成测试与 Hibernate 搜索的访问策略

java - AttachPolicyRequest 中的 AWS 物联网安全身份是什么?

amazon-web-services - Redshift 撤销权限不起作用

amazon-web-services - Amazon SNS 消息的预期 SLA(服务级别协议(protocol))是什么?

amazon-web-services - Amazon SQS(简单排队服务)速度?

amazon-web-services - 在 Amazon 的 CodeDeploy 上获取成功/失败构建的通知

amazon-web-services - 带有和不带有 RoleName 参数的 Cloudformation AWS IAM 角色

amazon-web-services - 带有 S3 源的 CloudFront 分配响应 XML ListBucketResult