谁能帮我解决 idt 错误问题“Greengrass 部署在 180 秒后在设备上完成”

0

【以下的问题经过翻译处理】 我尝试解决这个问题但是还是报错,我也尝试了推荐的命令 --timeout-multiplier 5, 但没有成功。 我之前做的操作都在这个链接下: https://repost.aws/questions/QUfFmnIZhqQTa2qcwMpale-A/nucleus-idt-4-7-0-for-greengrass-v2-cloudcomponent-test-failed-failed-at-the-greengrass-deployment-is-completed-on-the-device-after-180-seconds 这是我的用户凭据: 希望有人能帮我解决这个问题 GreengrassV2IoTThingPolicy

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "passRoleForResources",
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "iam:PassedToService": [
                        "iot.amazonaws.com",
                        "lambda.amazonaws.com",
                        "greengrass.amazonaws.com"
                    ]
                }
            }
        },
        {
            "Sid": "lambdaResources",
            "Effect": "Allow",
            "Action": [
                "lambda:CreateFunction",
                "lambda:PublishVersion",
                "lambda:DeleteFunction",
                "lambda:GetFunction"
            ],
            "Resource": [
                "*"
            ]
        },
        {
            "Sid": "iotResources",
            "Effect": "Allow",
            "Action": [
                "iot:CreateThing",
                "iot:DeleteThing",
                "iot:DescribeThing",
                "iot:CreateThingGroup",
                "iot:DeleteThingGroup",
                "iot:DescribeThingGroup",
                "iot:AddThingToThingGroup",
                "iot:RemoveThingFromThingGroup",
                "iot:AttachThingPrincipal",
                "iot:DetachThingPrincipal",
                "iot:UpdateCertificate",
                "iot:DeleteCertificate",
                "iot:CreatePolicy",
                "iot:AttachPolicy",
                "iot:DetachPolicy",
                "iot:DeletePolicy",
                "iot:GetPolicy",
                "iot:Publish",
                "iot:TagResource",
                "iot:ListThingPrincipals",
                "iot:ListAttachedPolicies",
                "iot:ListTargetsForPolicy",
                "iot:ListThingGroupsForThing",
                "iot:ListThingsInThingGroup",
                "iot:CreateJob",
                "iot:DescribeJob",
                "iot:DescribeJobExecution",
                "iot:CancelJob",
                "iot:DescribeCertificate",
                "logs:CreateLogGroup",
                "logs:CreateLogStream",
                "logs:PutLogEvents",
                "logs:DescribeLogStreams",
                "iot:Connect",
                "iot:Publish",
                "iot:Subscribe",
                "iot:Receive",
                "iot:ListThingPrincipals",
                "iot:GetThingShadow",
                "iot:UpdateThingShadow",
                "s3:GetBucketLocation",
                "s3:GetObject",
                "s3:PutObject",
                "s3:AbortMultipartUpload",
                "s3:ListMultipartUploadParts"
            ],
            "Resource": [
                "*"
            ]
        },
        {
            "Sid": "s3Resources",
            "Effect": "Allow",
            "Action": [
                "s3:GetObject",
                "s3:PutObject",
                "s3:DeleteObjectVersion",
                "s3:DeleteObject",
                "s3:CreateBucket",
                "s3:ListBucket",
                "s3:ListBucketVersions",
                "s3:DeleteBucket",
                "s3:PutObjectTagging",
                "s3:PutBucketTagging"
            ],
            "Resource": [
                "*"
            ]
        },
        {
            "Sid": "roleAliasResources",
            "Effect": "Allow",
            "Action": [
                "iot:CreateRoleAlias",
                "iot:DescribeRoleAlias",
                "iot:DeleteRoleAlias",
                "iot:TagResource",
                "iam:GetRole"
            ],
            "Resource": [
                "*"
            ]
        },
        {
            "Sid": "idtExecuteAndCollectMetrics",
            "Effect": "Allow",
            "Action": [
                "iot-device-tester:SendMetrics",
                "iot-device-tester:SupportedVersion",
                "iot-device-tester:LatestIdt",
                "iot-device-tester:CheckVersion",
                "iot-device-tester:DownloadTestSuite"
            ],
            "Resource": "*"
        },
        {
            "Sid": "genericResources",
            "Effect": "Allow",
            "Action": [
                "greengrass:*",
                "iot:GetThingShadow",
                "iot:UpdateThingShadow",
                "iot:ListThings",
                "iot:DescribeEndpoint",
                "iot:CreateKeysAndCertificate"
            ],
            "Resource": "*"
        },
        {
            "Sid": "iamResourcesUpdate",
            "Effect": "Allow",
            "Action": [
                "iam:CreateRole",
                "iam:DeleteRole",
                "iam:CreatePolicy",
                "iam:DeletePolicy",
                "iam:AttachRolePolicy",
                "iam:DetachRolePolicy",
                "iam:TagRole",
                "iam:TagPolicy",
                "iam:GetPolicy",
                "iam:ListAttachedRolePolicies",
                "iam:ListEntitiesForPolicy"
            ],
            "Resource": [
                "*"
            ]
        }
    ]
}

以下是我的GreengrassV2TokenExchangeRole角色凭证: GreengrassV2TokenExchangeRoleAccess

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "iot:DescribeCertificate",
                "logs:CreateLogGroup",
                "logs:CreateLogStream",
                "logs:PutLogEvents",
                "logs:DescribeLogStreams",
                "iot:Connect",
                "iot:Publish",
                "iot:Subscribe",
                "iot:Receive",
                "iot:ListThingPrincipals",
                "iot:GetThingShadow",
                "iot:UpdateThingShadow",
                "s3:GetBucketLocation",
                "s3:GetObject",
                "s3:PutObject",
                "s3:AbortMultipartUpload",
                "s3:ListMultipartUploadParts"
            ],
            "Resource": "*"
        }
    ]
}

IAM角色必须配置以下最小信任策略:


{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": [
                    "lambda.amazonaws.com",
                    "sagemaker.amazonaws.com",
                    "credentials.iot.amazonaws.com"
                ]
            },
            "Action": "sts:AssumeRole"
        }
    ]
}

1 回答
0

【以下的回答经过翻译处理】 IAM凭证可以解决这个问题 GreengrassV2IoTThingPolicy

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "passRoleForResources",
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "iam:PassedToService": [
                        "iot.amazonaws.com",
                        "lambda.amazonaws.com",
                        "greengrass.amazonaws.com"
                    ]
                }
            }
        },
        {
            "Sid": "lambdaResources",
            "Effect": "Allow",
            "Action": [
                "lambda:CreateFunction",
                "lambda:PublishVersion",
                "lambda:DeleteFunction",
                "execute-api:Invoke",
                "lambda:GetFunction"
            ],
            "Resource": [
                "*"
            ]
        },
        {
            "Sid": "iotResources",
            "Effect": "Allow",
            "Action": [
                "iot:CreateThing",
                "iot:DeleteThing",
                "iot:DescribeThing",
                "iot:CreateThingGroup",
                "iot:DeleteThingGroup",
                "iot:DescribeThingGroup",
                "iot:AddThingToThingGroup",
                "iot:RemoveThingFromThingGroup",
                "iot:AttachThingPrincipal",
                "iot:DetachThingPrincipal",
                "iot:UpdateCertificate",
                "iot:DeleteCertificate",
                "iot:CreatePolicy",
                "iot:AttachPolicy",
                "iot:DetachPolicy",
                "iot:DeletePolicy",
                "iot:GetPolicy",
                "iot:Publish",
                "iot:TagResource",
                "iot:ListThingPrincipals",
                "iot:ListAttachedPolicies",
                "iot:ListTargetsForPolicy",
                "iot:ListThingGroupsForThing",
                "iot:ListThingsInThingGroup",
                "iot:CreateJob",
                "iot:DescribeJob",
                "iot:DescribeJobExecution",
                "iot:DeleteJob",
                "iot:CancelJob",
                "iot:DescribeCertificate",
                "iot:DescribeEndpoint",
                "logs:CreateLogGroup",
                "logs:CreateLogStream",
                "logs:PutLogEvents",
                "logs:DescribeLogStreams",
                "iot:Connect",
                "iot:Publish",
                "iot:Subscribe",
                "iot:Receive",
                "iot:ListThingPrincipals",
                "iot:GetThingShadow",
                "iot:UpdateThingShadow",
                "s3:GetBucketLocation",
                "s3:GetObject",
                "s3:PutObject",
                "s3:AbortMultipartUpload",
                "s3:ListMultipartUploadParts"
            ],
            "Resource": [
                "*"
            ]
        },
        {
            "Sid": "s3Resources",
            "Effect": "Allow",
            "Action": [
                "s3:GetObject",
                "s3:PutObject",
                "s3:DeleteObjectVersion",
                "s3:DeleteObject",
                "s3:CreateBucket",
                "s3:ListBucket",
                "s3:ListBucketVersions",
                "s3:DeleteBucket",
                "s3:PutObjectTagging",
                "s3:PutBucketTagging"
            ],
            "Resource": [
                "*"
            ]
        },
        {
            "Sid": "roleAliasResources",
            "Effect": "Allow",
            "Action": [
                "iot:CreateRoleAlias",
                "iot:DescribeRoleAlias",
                "iot:DeleteRoleAlias",
                "iot:TagResource",
                "iam:GetRole"
            ],
            "Resource": [
                "*"
            ]
        },
        {
            "Sid": "idtExecuteAndCollectMetrics",
            "Effect": "Allow",
            "Action": [
                "iot-device-tester:SendMetrics",
                "iot-device-tester:SupportedVersion",
                "iot-device-tester:LatestIdt",
                "iot-device-tester:CheckVersion",
                "iot-device-tester:DownloadTestSuite"
            ],
            "Resource": "*"
        },
        {
            "Sid": "genericResources",
            "Effect": "Allow",
            "Action": [
                "greengrass:*",
                "iot:GetThingShadow",
                "iot:UpdateThingShadow",
                "iot:ListThings",
                "iot:DescribeEndpoint",
                "iot:CreateKeysAndCertificate",
                "iot:CreateCertificateFromCsr"
            ],
            "Resource": "*"
        },
        {
            "Sid": "iamResourcesUpdate",
            "Effect": "Allow",
            "Action": [
                "iam:CreateRole",
                "iam:DeleteRole",
                "iam:CreatePolicy",
                "iam:DeletePolicy",
                "iam:AttachRolePolicy",
                "iam:DetachRolePolicy",
                "iam:TagRole",
                "iam:TagPolicy",
                "iam:GetPolicy",
                "iam:ListAttachedRolePolicies",
                "iam:ListEntitiesForPolicy"
            ],
            "Resource": [
                "*"
            ]
        }
    ]
}
profile picture
专家
已回答 5 个月前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则