Как исправить «ошибку учетных данных: отсутствуют учетные данные в конфигурации» (aws-sdk) в react-native

#react-native #amazon-cognito #aws-sdk-js

#react-native #amazon-cognito #aws-sdk-js

Вопрос:

Я пытаюсь получить доступ к методу «adminAddUserToGroup» AWS Cognito из моего приложения react-native. Я хочу добавить пользователя в определенную группу сразу после его регистрации.

В документации к методу указано «требуются учетные данные разработчика». У меня есть мои учетные данные (ключ доступа и секретный ключ) в ~/.aws /credentials в моей системе. Как мне использовать это в моем коде?

     var cognitoidentityserviceprovider = new AWS.CognitoIdentityServiceProvider(
      { region: regionId }
    );
    const params = {
      GroupName: groupName,
      UserPoolId: userPoolId,
      Username: that.state.username
    };
    cognitoidentityserviceprovider.adminAddUserToGroup(
      params,
      (err, data) => {
        if (err) console.log(err);
        else {
          console.log(data);
        }
      }
    );
  

Это вызывает ошибку

     CredentialsError: Missing credentials in config
at credError (blob:http://localhost:8081/6f586340-99cf-40d3-b978-de453021be50:245014:50)
at Config.getCredentials (blob:http://localhost:8081/6f586340-99cf-40d3-b978-de453021be50:245058:24)
at Request.VALIDATE_CREDENTIALS (blob:http://localhost:8081/6f586340-99cf-40d3-b978-de453021be50:245435:36)
at Request.callListeners (blob:http://localhost:8081/6f586340-99cf-40d3-b978-de453021be50:244218:28)
at Request.emit (blob:http://localhost:8081/6f586340-99cf-40d3-b978-de453021be50:244195:20)
at Request.emit (blob:http://localhost:8081/6f586340-99cf-40d3-b978-de453021be50:247081:26)
at Request.transition (blob:http://localhost:8081/6f586340-99cf-40d3-b978-de453021be50:246822:22)
at AcceptorStateMachine.runTo (blob:http://localhost:8081/6f586340-99cf-40d3-b978-de453021be50:247182:22)
at Request.runTo (blob:http://localhost:8081/6f586340-99cf-40d3-b978-de453021be50:246894:27)
at Request.send (blob:http://localhost:8081/6f586340-99cf-40d3-b978-de453021be50:246887:22)
  

Куда и как я должен добавить учетные данные разработчика?

Ответ №1:

В react-Native sdk не будет иметь доступа к файлам в вашей системе. Вы можете установить учетные данные в браузере следующим образом https://docs.aws.amazon.com/sdk-for-javascript/v2/developer-guide/setting-credentials-browser.html