10
var normalAuth = async (username, password) => {   
    try{
        var user = await Auth.signIn(username, password)
        console.log(user)
        if(user.challengeName === "NEW_PASSWORD_REQUIRED"){
            console.log("assigning new password!")
            user = await Auth.completeNewPassword(user, "password") // give the user a new password. this would NOT be included in any kind of production code, its only here as a work around
            console.log(user)
        } // work around. users created in the console are only given temporary passwords, and as such have no authorization
        // setting a new password will fix this

        console.log(await Auth.currentCredentials()) // THIS THROWS AN ERROR?!?!
        setAuthState(false) // auth is no longer in progress
    }
    catch(error){
        console.error(error)
    }
}

I'm trying to grab the tokens from my Amplify user after authenticating but I'm receiving the error

No Cognito Identity pool provided for unauthenticated access

This is pretty strange because I'm not using an identity pool at all. My baseline assumption was that I shouldn't need to provide an identity pool ID at all in my amplify config.

config looks like this

var amplifyConfig = {
    Auth: {
        mandatorySignIn: false,
        region: "us-east-1",
        userPoolId: "mypoolid",
        userPoolWebClientId: "myclientid"
    }
}

The really weird part is that the tokens are actually there in user after I authenticate. It's only when I try and retrieve them this way specifically that an error is thrown.

Any idea what's going on here?

Carl
  • 457
  • 5
  • 23

0 Answers0