Я использую Congnito User Pool для выполнения авторизации через API-шлюз, которая работает нормально. Теперь я пытаюсь добавить Instagram в качестве одного из провайдеров входа в систему, для этого я создал Провайдер нестандартной аутентификации в федеративных удостоверениях и с помощью кода ниже:
var cognitoidentity = new AWS.CognitoIdentity({ apiVersion: '2014-06-30' });
var params = {
IdentityPoolId: 'us-east-1:7d99e750-.....',
Logins: {
'login.instagram': 'Access-Token-Returned-By-Instagram',
},
TokenDuration: 60
};
cognitoidentity.getOpenIdTokenForDeveloperIdentity(params, function (err, data) {
if (err) {
console.log(err, err.stack);
} else {
console.log(data);
var idParams = {
IdentityId: data['IdentityId'],
Logins: {
'cognito-identity.amazonaws.com': data['Token']
}
};
cognitoidentity.getCredentialsForIdentity(idParams, function (err2, data2) {
if (err2) console.log(err2, err2.stack); // an error occurred
else console.log(data2); // successful response
});
}
});
Я могу получить accessToken и sessionToken , однако мне все еще не удается найти способ получить idToken и accessToken который требуется API-шлюзом для авторизации входящего запроса.
Я попытался просмотреть SDK и форум AWS, но все еще не могу найти способ использовать пользовательский федеративный поставщик удостоверений для авторизации API-шлюза, использующего пул cognito.