User Pools for Amazon Cognito - CredentialsError: Missing credentials in config

前端 未结 2 1682
逝去的感伤
逝去的感伤 2020-12-17 19:25

I am trying to create a Web App Authentication with help of this tutorial. Here is the code I have written -

var app = {};

app.configureCognito = function(         


        
相关标签:
2条回答
  • 2020-12-17 19:53

    I got it resolved by using below code apparently, there's no need to provide IdentityPoolId in this example at all, these are just the placeholders which can be left as below -

    AWS.config.region = 'us-east-1'; // Region
    AWS.config.credentials = new AWS.CognitoIdentityCredentials({
        IdentityPoolId: '...'
    });
    
    AWSCognito.config.region = 'us-east-1';
    AWSCognito.config.credentials = new AWS.CognitoIdentityCredentials({
        IdentityPoolId: '...' 
    });
    

    And both of the credential AWS.config.credentials and AWSCognito.config.credentials need to be set. Once the above steps complete the AWSCognito.config needs to be updated as below -

    // Need to provide placeholder keys unless unauthorised user access is enabled for user pool
    AWSCognito.config.update({accessKeyId: 'anything', secretAccessKey: 'anything'})
    
    var poolData = { 
        UserPoolId : 'user pool id collected from user pool',
        ClientId : 'application client id of app subscribed to user pool'
    };
    

    dataPhoneNumber and userData are optional, dataPhoneNumber should be provided in case sms verification for signup is required.

    The problem was resolved once the above were in place, Identity-Code is a working model if anyone want to have a look at it.

    0 讨论(0)
  • 2020-12-17 20:02

    I used AWS amplify to configure AWS sdk and AWS ses. I had the same error but was able to overcome using below solution. I used AWS amplify and React js.

    Hope this helpful for who had issues with amplify and sdk.

    Auth.currentCredentials().then(res => {
    
                AWS.config.update({
                    region: 'ap-southeast-1',
                    credentials: res
                });
    
                AWS.config.getCredentials(function (err) {
                    if (err) console.log(err.stack); // credentials not loaded
                    else console.log("Access Key:", AWS.config.credentials.accessKeyId);
                })
    
    
                var ses = new AWS.SES({
                    region: 'ap-south-1',
                    apiVersion: '2010-12-01'
                });
    
                this.setState({
                    open: false,
                    ses: ses
                });
    
                AWS.config.getCredentials(function (err) {
                    if (err) console.log(err.stack); // credentials not loaded
                    else console.log("Access Key:", AWS.config.credentials.accessKeyId);
                })
    
            })
    
    0 讨论(0)
提交回复
热议问题