2016-10-02 198 views
0

我想將Cognito用戶池用作身份提供者。 我驗證我的用戶。 然後我試圖整合該用戶與用戶池的用戶,請按照下列步驟操作:AWS Cognito未能將用戶池中的用戶與身份池集成

var cognitoUser = userPool.getCurrentUser(); 

if (cognitoUser != null) { 
    cognitoUser.getSession(function(err, result) { 
if (result) { 
    console.log('You are now logged in.'); 

    // Add the User's Id Token to the Cognito credentials login map. 
    AWS.config.credentials = new AWS.CognitoIdentityCredentials({ 
    IdentityPoolId: 'YOUR_IDENTITY_POOL_ID', 
    Logins: { 
    'cognito-idp.<region>.amazonaws.com/<YOUR_USER_POOL_ID>': result.getIdToken().getJwtToken() 
    } 
    }); 
} 
}); 
} 

http://docs.aws.amazon.com/cognito/latest/developerguide/amazon-cognito-integrating-user-pools-with-identity-pools.html

然而,從AWS的響應是「無效的登錄憑證不是有效的ID連接身份令牌「。

該請求有效載荷是這樣的:

{ 「IdentityPoolId」: 「EU-西-1:idPoolValue」, 「登錄」:{ 「loginString」:「cognito-idp.eu西-1.amazonaws.com/regionValue:id token value「}}

我用一個字符串替換了敏感部分。 我已配置身份池以將用戶池用作身份驗證提供程序。

是否有任何進一步的步驟,我錯過了或沒有記錄?

回答

0

請求有效負載的結構不正確。登錄應該是一個映射,而不是一個具有鍵值對的對象。

+0

您上傳的代碼是用於JS的,您需要Java版本。 –

相關問題