Verbinden Sie sich mit AWS IoT über einen Web-Socket mit Cognito-authentifizierten Benutzern.
Ich versuche, über den Web-Socket des Browsers eine Verbindung zu AWS IoT herzustellen.
Ich habe dieses Beispiel ausprobiert:https: //github.com/awslabs/aws-iot-examples/tree/master/mqttSampl
Und eine andere wurde ein wenig modifiziert, damit sie mit angemeldeten Cognito Identity Pool-Benutzern verwendet werden kann.https: //github.com/dwyl/learn-aws-iot/blob/master/src/js/utils/request.js#L2
Ich kann erfolgreich eine Verbindung herstellen, wenn ich einen IAM-Benutzer mit einer gültigen IoT-Richtlinie verwende. Wenn ich jedoch die Benutzeranmeldeinformationen verwende, erhalte ich die Antwort "101 Switching Protocols", die jedoch geschlossen wird.
Die dem authentifizierten Benutzer zugeordnete IAM-Rolle ist korrekt, und ich kann Anforderungen signieren und andere private Vorgänge wie das Aufrufen von APIG-Endpunkten ausführen. Auch die Socket-Verbindung reagiert nicht mit 403. Es handelt sich also wahrscheinlich nicht um ein Berechtigungsproblem.
Was könnte es sonst sein