2016-09-27 2 views
1

Следующая функция (в JavaScript) предполагается принять Accesskey и SecretKey и проверить, являются ли они правильно:AWS: Как проверить правильность учетных данных?

function checkKeys(accessKey, secretKey) { 
    var cred = new AWS.Credentials(accessKey, secretKey, null); 
    cred.get(function(err) { 
     if (err) { 
      console.log("ERROR!") 
     } else { 
      console.log("Keys are OK") 
     } 
    }) 
} 

Я бы ожидать, что получить() возвращает ошибку в случае неправильных учетных данных. Я не знаю почему, но неважно, какие учетные данные я даю, я никогда не получаю сообщение об ошибке, и консоль всегда печатает «Ключи в порядке».

+0

Проверка как это не дает никакой ценности. См. Мой ответ на аналогичный вопрос: http://stackoverflow.com/a/38902497/1428388 – jbird

ответ

0

Вы просто сохраняете учетные данные в локальном объекте и затем извлекаете их. Вам нужно вызвать фактический вызов API AWS, чтобы проверить, действительны ли учетные данные.

+0

, поэтому единственный способ проверить это на самом деле пытается сделать запрос. правильно? – CrazySynthax

+1

Не уверен, что вы подразумеваете под «запросом». Единственный способ проверить - это на самом деле сделать что-то * с SDK, из-за чего он попадает в AWS API. Вы пометили вопрос S3 по какой-то причине, так что, возможно, вызов S3 проверяет, существует ли объект. –