1

Amazonの2つの製品がきれいに統合されると思います。あなたはまたAmazonがサービスに関する適切な文書を持っていると思うでしょう。両方ともひどく間違っています。AlexaアカウントとCognitoとの接続

私はアカウントをAlexaとリンクし、AWS Cognitoをoauthプロバイダとして使用しています。私は正常に私のアカウントを正常にリンクすることができて、その後のすべてのアレクサの呼び出しと私はアクセストークンを私に返される取得します。それで?

私は、私のalexa lambda関数からdynamo、lambda、iotなどの他のAWSサービスにアクセスする必要があります。それは次のような簡単なものだと思った:

var accessToken = event.session.user.accessToken; 
var params = { 
    IdentityPoolId: "{identity_pool_id}", 
    Logins : { 
     'cognito-idp.us-east-1.amazonaws.com/{user_pool_id}' : accessToken 
    } 
}; 

AWS.config.region = 'us-east-1'; 
AWS.config.credentials = new AWS.CognitoIdentityCredentials(params); 
    AWS.config.credentials.get(function(err) { 
    if (err) { 
     console.log(err); 
    } else { 
     console.log('success'); 
     console.log("Cognito Identity Id: " + AWS.config.credentials.identityId); 
    } 
}); 

もちろん、それほど単純ではありません。誰か助けてくれますか?

+0

この同じ問題が発生しました。あなたは解決策を見つけましたか? – Panda

答えて

0

IAMの下に作成された「ロール」に適切な「ポリシー」を割り当てる必要があります。すべてのAWSサービスはポリシーベースのアクセス許可で動作し、その役割のためにIAMロールに明示的にアタッチされ、そのロールに代わって基礎となるサービスにアクセス/実行できる必要があります。あなたは「IOT」、「DynamoDBの」、「ラムダ」に関連したIAMからポリシーを割り当てる必要が要するに

など

関連する問題