Can you use thing 'Attributes' in recipe access control for setting permissions

0

In the IoT thing policy I am able to set a policy resource to allow the action publish to a topic using the variable:

${iot:Connection.Thing.Attributes[fleetOperator]}
arn:aws:iot:ap-southeast-2:949179323480:topic/Iot/${iot:Connection.Thing.Attributes[fleetOperator]}/${iot:Connection.Thing.ThingName}/*

Is there a way to replicate this in the access control of a recipe? Something similar to the below.

      aws.greengrass.ipc.mqttproxy:
        'test:mqttproxy:1':
          policyDescription: Allows access to everything
          operations:
            - 'aws.greengrass#SubscribeToIoTCore'
            - 'aws.greengrass#PublishToIoTCore'
          resources:
            - 'Iot/{iot:thingName}*'
            - 'Iot/{iot:Connection.Thing.Attributes[fleetOperator]}/{iot:Connection.Thing.ThingName}/*'

Additionally what would be the preferred method to access the thing attributes in a greengrass component - currently I use the aws sdk however need to set the appropriate permissions using the TES, I would prefer to use the IoT credentials if possible.

質問済み 9ヶ月前195ビュー
1回答
0
承認された回答

Unfortunately, {iot:Connection.Thing.Attributes} is not supported, just thing name

https://docs.aws.amazon.com/greengrass/v2/developerguide/interprocess-communication.html#ipc-authorization-policy-recipe-variables

For your second question, greengrass provides the AWS_IOT_THING_NAME environment variable, https://docs.aws.amazon.com/greengrass/v2/developerguide/component-environment-variables.html. But for other attributes, I believe using the sdk would be the right approach.

AWS
回答済み 9ヶ月前

ログインしていません。 ログイン 回答を投稿する。

優れた回答とは、質問に明確に答え、建設的なフィードバックを提供し、質問者の専門分野におけるスキルの向上を促すものです。

質問に答えるためのガイドライン

関連するコンテンツ