Я работаю над скриптом браузера, загруженным в EC2 для getThingShadow() с использованием учетных данных Federated Cognito (вход через Facebook), но получаю только ForbiddenException: Forbidden
часть входа прошла успешно, я получил учетные данные (не пустые) от AWS.WebIdentityCredentials()
Идентификатор cognito был авторизован вручную с помощью интерфейса командной строки (aws iot attach-principal-policy). Cognito_Auth_Rule также разрешал iot:*
вроде все сделал как по инструкции, все равно не могу получить iotData
http://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/IotData.html
Пожалуйста, дайте совет, очень ценю любые комментарии
Спасибо
Ник
Моя IAM-политика, прикрепленная к Cognito_Auth_Rule:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"iot:*"
],
"Resource": [
"*"
]
}
]
}
получить учетные данные
iotData.config.credentials = new AWS.WebIdentityCredentials({
ProviderId: 'graph.facebook.com',
RoleArn: roleArn,
WebIdentityToken: response.authResponse.accessToken
});
мой код
var params = {
thingName: 'thingName' /* required */
};
iotdata.getThingShadow(params, function (err, data) {
if (err) {
console.log(err, err.stack); // an error occurred
iotResults.innerHTML = err;
} else {
console.log(data); // successful response
iotResults.innerHTML = data;
}
});
сообщение об ошибке из консоли:
Error: Forbidden
at Object.s [as extractError] (aws-sdk-2.7.20.min.js:37)
at constructor.i (aws-sdk-2.7.20.min.js:37)
at constructor.callListeners (aws-sdk-2.7.20.min.js:38)
at constructor.emit (aws-sdk-2.7.20.min.js:38)
at constructor.emitEvent (aws-sdk-2.7.20.min.js:37)
at constructor.e (aws-sdk-2.7.20.min.js:37)
at a.runTo (aws-sdk-2.7.20.min.js:39)
at aws-sdk-2.7.20.min.js:39
at constructor.<anonymous> (aws-sdk-2.7.20.min.js:37)
at constructor.<anonymous> (aws-sdk-2.7.20.min.js:37) "ForbiddenException: Forbidden
at Object.s [as extractError] (https://sdk.amazonaws.com/js/aws-sdk-2.7.20.min.js:37:9704)
at constructor.i (https://sdk.amazonaws.com/js/aws-sdk-2.7.20.min.js:37:14284)
at constructor.callListeners (https://sdk.amazonaws.com/js/aws-sdk-2.7.20.min.js:38:4687)
at constructor.emit (https://sdk.amazonaws.com/js/aws-sdk-2.7.20.min.js:38:4396)
at constructor.emitEvent (https://sdk.amazonaws.com/js/aws-sdk-2.7.20.min.js:37:23801)
at constructor.e (https://sdk.amazonaws.com/js/aws-sdk-2.7.20.min.js:37:19651)
at a.runTo (https://sdk.amazonaws.com/js/aws-sdk-2.7.20.min.js:39:11367)
at https://sdk.amazonaws.com/js/aws-sdk-2.7.20.min.js:39:11574
at constructor.<anonymous> (https://sdk.amazonaws.com/js/aws-sdk-2.7.20.min.js:37:19861)
at constructor.<anonymous> (https://sdk.amazonaws.com/js/aws-sdk-2.7.20.min.js:37:23856)"