При использовании учетных данных Cognito с AWS в браузере (javascript) постоянно появляется сообщение об ошибке «отсутствуют учетные данные»

Я пытаюсь загрузить файл в мою корзину S3 из веб-браузера с помощью JavaScript SDK AWS. Мой код выглядит так:

AWS.config.credentials = new AWS.CognitoIdentityCredentials({
    AccountId: 'dfhgdh',
    IdentityPoolId: 'fdagsd',
    RoleArn: 'fdafds'
});

var bucket = new AWS.S3({params: {Bucket: 'test-bucket'}});
var pdfUpload = document.getElementById('pdf-uploads').files[0];

var params = {Key: pdfUpload.name, ContentType: pdfUpload.type, Body: pdfUpload};
bucket.putObject(params, function (error, data) {
    if (error) {
        console.log(error);
    } else {
        console.log(data);
    }
});

Однако всякий раз, когда он достигает команды putObject, я продолжаю получать сообщение об ошибке от AWS:

«Ошибка: отсутствуют учетные данные в config {сообщение:« Отсутствуют учетные данные в config », код:« CredentialsError »...»

Я уверен, что упускаю что-то простое и глупое здесь, но я не могу понять, что для меня жизнь. (Я получаю другую ошибку, когда пытаюсь просто жестко закодировать поддельный секретный ключ или что-то в этом роде, поэтому я почти уверен, что это как-то связано с тем, как я пытаюсь настроить учетные данные Cognito.)

Ответы на вопрос(2)

Ваш ответ на вопрос