2016-07-20 8 views
0

javascript用のAWS SDKを使用していますが、新しいCognito Userプールサービスを使用しようとしています。Cognito User PoolsのAWSCognitoIdentityService.GetIdを呼び出すと、「このIDプールのサポートされているプロバイダからのトークンではありません」が返されます。

POST/HTTP/1.1 
Host: cognito-identity.us-east-1.amazonaws.com 
Connection: keep-alive 
Content-Length: 985 
Cache-Control: max-age=0 
Origin: http://localhost:3000 
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36 
Content-Type: application/x-amz-json-1.1 
X-Amz-Content-Sha256: 9fba852db0a50678957c5be2a317ebce5edbb4580ad7cb1d7b524e2ff5bf95f7 
X-Amz-Target: AWSCognitoIdentityService.GetId 
X-Amz-User-Agent: aws-sdk-js/2.3.17 
Accept: */* 
Referer: http://localhost:3000/ 
Accept-Encoding: gzip, deflate, br 
Accept-Language: en-US,en;q=0.8 

要求ペイロード:

{"IdentityPoolId":"us-east-1:f9a5b209-8ed6-405d-987c-eb2954d30d1c","Logins":{"cognito-idp.us-east-1.amazonaws.com/us-east-1_9ymEVPkkL":"eyJraWQiOiJQUFhBemRsVDg1K29kNzNvTFU4cnFzVUZORVJvVkh2aVJERGV4bzdISmJzPSIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiI0OTNlYjk5MS1iMTgyLTQxYzAtYmZhNC00N2M5YzViMzM1OTMiLCJhdWQiOiI3N3U3MnRidjN2M2M2MG1pZXFlNGhhbW8yOSIsImVtYWlsX3ZlcmlmaWVkIjp0cnVlLCJ0b2tlbl91c2UiOiJpZCIsImF1dGhfdGltZSI6MTQ2ODk4OTY4MywiaXNzIjoiaHR0cHM6XC9cL2NvZ25pdG8taWRwLnVzLWVhc3QtMS5hbWF6b25hd3MuY29tXC91cy1lYXN0LTFfOXltRVZQa2tMIiwibmFtZSI6Ik5uZW5uYSBVZGVnYnVuYW0iLCJleHAiOjE0Njg5OTMyODMsImlhdCI6MTQ2ODk4OTY4MywiZW1haWwiOiJubmVubmFAZGFzaHBlZWsuY29tIn0.gItOyeKF3pu24aWtaUwPMQtcOAJu9TWqmYeT3N74zijI9QgfxL93fagZvVgsQj-rqtRSddVV05ZHJBXXZiUZdb3PnUDp48R_1Kiv1RhIvMqOO43RNyS9B7G4uD0cdM8S7OCaoJMXbDPwVH5jy_j9_anm7HgbRGi3JYLS10bIvvuqznxp75V6bxsTGhVGT8EHTui-l0yqLhLbPDM05JV0sOXANFS-BO4sYjgJ-VU8GrP6D49wbses524bMIDAIRN78me5WAFC6OzOqZQ9e_JNVbgs8pHaaDqpqTZq6RUGGUS0QykhDPoJImbS_tt5rGNrVFrDpKXcwJAD1hI5x6lrNA"}} 

応答:

HTTP/1.1 400 Bad Request 
x-amzn-RequestId: 8e6f7124-4e35-11e6-a6a6-d56ee4384e6b 
Access-Control-Allow-Origin: * 
x-amzn-ErrorType: NotAuthorizedException: 
Access-Control-Expose-Headers: x-amzn-RequestId,x-amzn-ErrorType,x-amzn-ErrorMessage,Date 
**x-amzn-ErrorMessage: Token is not from a supported provider of this identity pool.** 
Content-Type: application/x-amz-json-1.1 
Content-Length: 109 
Date: Wed, 20 Jul 2016 04:51:01 GMT 
Connection: close 

この「私はCognito API関数AWSCognitoIdentityService.GetIdにアクセスし、基本的なHTTPリクエストからエラーを取得していますトークンは、このIDプールのサポートされているプロバイダからのものではありません "makes n感覚。このトークンは、認証中にキャッシュされたユーザーセッションからのトークンです。提供されるloginIDは、Cognitoユーザープールの形式に基づいています。

ここで、サンプルのいくつかのJavaScriptコード:私はそれが動作するように使用されているものである不可解さは何

this.loginId = 'cognito-idp.' + this.region + '.amazonaws.com/' + this.userPoolId; 
    this.poolData = { 
    UserPoolId : this.userPoolId, 
    ClientId : this.clientId 
    }; 
    this.userPool = new AWSCognito.CognitoIdentityServiceProvider.CognitoUserPool(this.poolData); 




cognitoUser.getSession(function(err, session) { 
     if (err) { 
     console.log(err); 
     console.log("user session expired. needs to log in"); 
     this.navigateToLogin(); 
     return; 
     } 

     var token = session.getIdToken().getJwtToken(); 
     AWS.config.credentials.params.Logins[this.loginId] = token; 

     AWS.config.credentials.refresh(function(err){ 
      if (err) { 
       alert(err); 
      }else{ 
       onLoggedIn(); 
      } 
     }); 

     console.log('session validity: ' + session.isValid()); 
    }.bind(this)); 

!そして時にはログオンとログアウトの何日もして、私はそれを再び働かせることができます。しかし今、それはすべて一緒に仕事を停止しています。私はこれがバグかどうか、このサービスはまだベータ版であるか、何かが間違っていると思います。

答えて

1

この例外は、ユーザープールではなくCognito連合IDからスローされるため、サービスの不安定さのためではありません。これは、指定したログインキーが、プールにリンクされているものと一致せず、コンソールから設定されたことを意味します。

correctlyコンソールで設定したことをもう一度確認してください。そうであれば、動作していないときにログインセットのキーとして送信されているものを確認するためにいくつかのログを追加してください。

+0

フェデレーションIDから例外がスローされることはわかっていますが、APIドキュメントでも、まだコグニートのユーザープールからのログインは含まれていないようです。https://docs.aws.amazon.com/cognitoidentity/latest/ APIReference/API_GetId.html また、ログインキーはプールにリンクされているものと一致します。ペイロードのログインキーは "cognito-idp.us-east-1.amazonaws.com/us-east-1_9ymEVPkkL"です。これは、あなたがリンクしたばかりのドキュメントとインラインであります。 –

+0

ドキュメントは少し後ろです。それがうまくいっていないときとそうでないときの両方のケースですか?それとも、もう働けないのですか? –

関連する問題