Non sono riuscito a trovare alcuna documentazione che mostra come fare questo, quindi ho fatto del mio meglio per capirlo (non è un caso di uso comune)? Ho impostato la mia risorsa per utilizzare l'autenticazione IAM, configurare CORS, ecc. Poi l'ho distribuita e scaricato l'SDK generato.Come utilizzare Cognito con l'SDK Javascript generato?
Sul lato client sto utilizzando le credenziali di AWS.CognitoIdentityCredentials con apigClientFactory.newClient. Quando provo a postare sulla mia risorsa, ottengo una risposta di errore 403 senza corpo.
Le intestazioni di risposta contengono: x-amz-ErrorType: UnrecognizedClientException
Potrebbe questo errore, eventualmente, essere provenienti da qualche altro servizio AWS (fanno bolla in quel modo)? Se sì, come posso dire quale? Cos'altro potrebbe causare l'errore?
Il codice che sto utilizzando test test lato client simile a questa:
function onFacebookLogin(fbtoken) {
// get cognito credentials
AWS.config.credentials = new AWS.CognitoIdentityCredentials({
IdentityPoolId: 'us-east-1:abcd6789-1234-567a-b123-12ab34cd56ef',
Logins: {'graph.facebook.com': fbtoken}
});
AWS.config.credentials.get(function(err) {
if (err) {return console.error('Credentials error: ', err);}
/* I'm assuming that this is what I use for accessKey and secretKey */
var credentials = AWS.config.credentials;
apigClient = apigClientFactory.newClient({
accessKey: credentials.accessKeyId,
secretKey: credentials.secretAccessKey
});
});
}
Sì, è stata la sessionToken. È sempre un dettaglio banale :-) –