首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >AWSIoT中的身份池配置无效

AWSIoT中的身份池配置无效
EN

Stack Overflow用户
提问于 2018-06-04 19:11:51
回答 1查看 949关注 0票数 0

我想在AWS上连接到我的客户的MQTT服务。我找到了这个Amazon IoT Sample,它为我节省了大量的时间来深入研究这个API来查找连接AWS MQTT服务的过程。

在我的项目中,我更改了Constants.swift中的常量,以便访问客户端的MQTT服务,如下所示:

代码语言:javascript
复制
let AWSRegion = AWSRegionType.USWest2 // e.g. AWSRegionType.USEast1
let CognitoIdentityPoolId = "us-west-2:e95087f0-48a7-4732-b482-4614c7c63db6"
let CertificateSigningRequestCommonName = "MyApp"
let CertificateSigningRequestCountryName = "MyCountry"
let CertificateSigningRequestOrganizationName = "MyOrganization"
let CertificateSigningRequestOrganizationalUnitName = "MyUnit"
let PolicyName = "pubsub_policy"

// This is the endpoint in your AWS IoT console. eg: https://xxxxxxxxxx.iot.<region>.amazonaws.com

let IOT_ENDPOINT = "https://<endpoint>.amazonaws.com" // endpoint is entered correctly!
let ASWIoTDataManager = "MyIotDataManager"

但当我按下Connect时,应用程序抛出这个错误:

IAM 2018-06-04 17:12:59:992 IoTSampleSwift4999:2464150 Response body:{"__type":"InvalidIdentityPoolConfigurationException",“message”:“身份池配置无效。请检查为此池分配的

角色。”}

2018-06-04 17:12:59:994 IoTSampleSwift4999:2464150 GetCredentialsForIdentity失败。Error is Error Domain=com.amazonaws.AWSCognitoIdentityErrorDomain Code=5 "(null)“UserInfo={__type=InvalidIdentityPoolConfigurationException,message=Invalid身份池配置错误。检查为此池分配的IAM角色。}

2018-06-04 17:12:59:995 IoTSampleSwift4999:2464150无法刷新。Error is Error Domain=com.amazonaws.AWSCognitoIdentityErrorDomain Code=5 "(null)“UserInfo={__type=InvalidIdentityPoolConfigurationException,message=Invalid身份池配置错误。检查为此池分配的IAM角色。}

2018-06-04 17:13:00:017IoTSampleSwift4999:2464150 error: Error Domain=com.amazonaws.AWSCognitoIdentityErrorDomain Code=5 "(null)“UserInfo={__type=InvalidIdentityPoolConfigurationException,message=Invalid身份池配置。检查为此池分配的IAM角色。}

MQTT中的参数有什么问题吗?

  • 是否在我的客户端服务中启用了什么以便我可以access?
  • According到10):
  • :如果可用,那么我不必在每次需要访问这个p12服务时都动态创建密钥和证书?但是我的客户必须在他的Amazon AWS IoT Console上创建它,并给我证书/密钥,这样我才能在我的

上生成这个p12文件

对不起,我必须问这些简单的问题,因为我是新手亚马逊IoT应用程序接口。

致以敬意,

EN

回答 1

Stack Overflow用户

发布于 2018-08-31 06:27:16

知道您正在使用哪种类型的IoT身份验证将会有所帮助。如果您正在使用Cognito进行AWS IoT身份验证,那么下面的内容肯定会有所帮助。

在AWS的IAM控制台中,转到角色。单击您的角色并查看信任关系。在下面的图片中可以更容易地看到这个选项卡的位置。

您的StringEquals条件的值很可能与您的身份池的值不匹配()。您可以在Cognito > Federated identity >单击蓝色链接"Name of your identity pool here“> Edit identity pool (右上角)查看,您的身份池ID在顶部。如果是这样,请单击[编辑信任关系](如下图所示)并进行编辑,以使密钥“cognito Identit.amazonaws.com::aud”的值与您的身份池ID相匹配。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50679234

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档