1 回答
- 最新
- 投票最多
- 评论最多
0
【以下的回答经过翻译处理】 嗨,Albogd,
在安装时你是如何配置Greengrass的?Greengrass使用的证书是否与正确的IoT设备关联?
Greengrass不使用存储在.aws文件夹中的凭证。我们不建议在设备本身上存储凭证。相反,Greengrass使用与IAM角色ARN相关联的IoT角色别名来访问AWS服务。当Greengrass调用AWS服务(如S3)时,它会从AWS IoT凭证提供程序获取凭证。Greengrass会将HTTP标头x-amzn-iot-thingname添加到请求中,并使用来自Greengrass配置的ThingName。
你可以检查/greengrass/v2/config/effectiveConfig.yaml以查看Greengrass正在使用的ThingName,或查找像以下这样的日志行:
com.aws.greengrass.deployment.IotJobsHelper:连接建立到IoT云。{ThingName = <YOUR_THING_NAME>}
AWS IoT授权访问AWS文档(https://docs.aws.amazon.com/iot/latest/developerguide/authorizing-direct-aws.html#authorizing-direct-aws.walkthrough)提到以下内容:
在x-amzn-iot-thingname中提供的ThingName必须与分配给证书的AWS IoT Things资源的名称匹配。如果不匹配,将返回403错误。
这似乎是你看到的错误 - 这可能表明请求中的证书和ThingName不匹配。
相关内容
- AWS 官方已更新 2 年前
