Search code examples
amazon-web-servicesamazon-cognito

AWS Cognito Logout Url format - Required String parameter 'redirect_uri' is not present


I'm trying to format the logout rest call to sign out of an AWS Cognito user pool, but can't seem to get it right.

I want to redirect to https://localhost:44333?signout=true after cognito has signed me out.

The following doesn't work and returns "Required String parameter 'redirect_uri' is not present":

https://tradingreplay-test.auth.eu-west-1.amazoncognito.com/error?client_id=***ClientId***&logout_uri=https://localhost:44333?signout=true

I have checked and https://localhost:44333 is in the list of valid sign out urls for the app client.


Solution

  • A Standard requirement of a logout URL is that there's no query string parameter is preserved. You could possibly set a cookie or handle the request to https://localhost:44333/logout/.

    https://tradingreplay-test.auth.eu-west-1.amazoncognito.com/error?client_id=***ClientId***&logout_uri=https://localhost:44333/signout/
    

    Since Cognito is SAML compliant, it's probably going to handle the logout in the same compliant manner by ignoring the query strings or throwing an error.