我可能听起来很愚蠢,但从几天开始,我一直在努力寻找如何连接到AWS IoT MQTT的解决方案,该解决方案具有基于CognitoIdentityProviderClient
的授权流。
我的设置看起来像这样:
1.我有用户池“some-user-pool”。
1.我在用户池“some-user-in-user-pool”中有一个用户。
1.我的用户池已附加到IoT策略“some-iot-policy”。
接下来呢?我的意思是说,我已经知道我可以通过附加到策略的证书连接到mqtt,但我想通过用户使用它。
所以我在一个步骤中,我有最终的RespondToAuthChallengeResponse
后,认证流;一切都很顺利,但我不知道现在该怎么办?如何设置AwsIotMqtt5ClientBuilder
以使用用户池?
我有一个类似这样的代码
RespondToAuthChallengeResponse response = cognitoIdentityProviderClient.respondToAuthChallenge(request)
//After this, I have accessToken and idToken
AwsIotMqtt5ClientBuilder builder = AwsIotMqtt5ClientBuilder.newMqttBuilder(hostname)
//here I'm lost on how I can setup mqtt to use the response
1条答案
按热度按时间vsnjm48y1#
如果您已经进行了基本配置,包括AWS SDK并导入必要的库以使其工作。
您需要初始化AWS IoT和Cognito客户端:
创建新的MQTT客户端:
确保Cognito用户与IoT策略相关联。下面是一个如何对Cognito用户实施策略的示例:
连接到AWS IoT MQTT:
这只是使用Cognito的AWS IoT的基本连接实现,但它可能会帮助您弄清楚如何做到这一点。:)