When user clicks the button a request is sent to the server but returning a NS_BINDING_ABORTED which is causing the user not really being signed out and when redirect it lands in the same page not in the sign in page.
This started happening recently and can be reproduced in Firefox/Chrome (haven't tried Safari yet).
User signed out and redirected to the login page.
import EnvConfig from "./services/EnvConfig";
const config = {
API: {
endpoints: [
{
name: "BackendApi",
endpoint: EnvConfig.backendApi,
},
],
},
Auth: {
region: EnvConfig.region,
userPoolId: EnvConfig.userPoolId,
userPoolWebClientId: EnvConfig.appClientId,
identityPoolId: EnvConfig.identityPoolId,
},
Storage: {
AWSS3: {
bucket: EnvConfig.datasetsBucket,
region: EnvConfig.region,
},
},
};
const oauthConfig = {
domain: EnvConfig.cognitoDomain,
scope: [
"phone",
"email",
"openid",
"profile",
"aws.cognito.signin.user.admin",
],
redirectSignIn: EnvConfig.frontendDomain,
redirectSignOut: EnvConfig.frontendDomain,
responseType: "code", // or token
// optional, for Cognito hosted ui specified options
options: {
// Indicates if the data collection is enabled to support Cognito advanced security features. By default, this flag is set to true.
AdvancedSecurityDataCollectionFlag: true,
},
};
export const samlConfig = {
oauthConfig: {
customProvider: EnvConfig.samlProvider,
label: EnvConfig.enterpriseLoginLabel,
},
};
export function amplifyConfig(): {} {
var configuration: { [k: string]: any } = config;
if (EnvConfig.samlProvider) {
configuration.oauth = oauthConfig;
}
return configuration;
}
export default config;
{
"UserPool": {
"Id": "us-east-xxxx",
"Name": "UserPool6BA7E5F2-xxxx",
"Policies": {
"PasswordPolicy": {
"MinimumLength": 8,
"RequireUppercase": true,
"RequireLowercase": true,
"RequireNumbers": true,
"RequireSymbols": true,
"TemporaryPasswordValidityDays": 7
}
},
"LambdaConfig": {},
"LastModifiedDate": "2021-10-19T14:57:35.795000-04:00",
"CreationDate": "2021-10-19T14:57:35.795000-04:00",
"SchemaAttributes": [
{
"Name": "sub",
"AttributeDataType": "String",
"DeveloperOnlyAttribute": false,
"Mutable": false,
"Required": true,
"StringAttributeConstraints": {
"MinLength": "1",
"MaxLength": "2048"
}
},
{
"Name": "name",
"AttributeDataType": "String",
"DeveloperOnlyAttribute": false,
"Mutable": true,
"Required": false,
"StringAttributeConstraints": {
"MinLength": "0",
"MaxLength": "2048"
}
},
{
"Name": "given_name",
"AttributeDataType": "String",
"DeveloperOnlyAttribute": false,
"Mutable": true,
"Required": false,
"StringAttributeConstraints": {
"MinLength": "0",
"MaxLength": "2048"
}
},
{
"Name": "family_name",
"AttributeDataType": "String",
"DeveloperOnlyAttribute": false,
"Mutable": true,
"Required": false,
"StringAttributeConstraints": {
"MinLength": "0",
"MaxLength": "2048"
}
},
{
"Name": "middle_name",
"AttributeDataType": "String",
"DeveloperOnlyAttribute": false,
"Mutable": true,
"Required": false,
"StringAttributeConstraints": {
"MinLength": "0",
"MaxLength": "2048"
}
},
{
"Name": "nickname",
"AttributeDataType": "String",
"DeveloperOnlyAttribute": false,
"Mutable": true,
"Required": false,
"StringAttributeConstraints": {
"MinLength": "0",
"MaxLength": "2048"
}
},
{
"Name": "preferred_username",
"AttributeDataType": "String",
"DeveloperOnlyAttribute": false,
"Mutable": true,
"Required": false,
"StringAttributeConstraints": {
"MinLength": "0",
"MaxLength": "2048"
}
},
{
"Name": "profile",
"AttributeDataType": "String",
"DeveloperOnlyAttribute": false,
"Mutable": true,
"Required": false,
"StringAttributeConstraints": {
"MinLength": "0",
"MaxLength": "2048"
}
},
{
"Name": "picture",
"AttributeDataType": "String",
"DeveloperOnlyAttribute": false,
"Mutable": true,
"Required": false,
"StringAttributeConstraints": {
"MinLength": "0",
"MaxLength": "2048"
}
},
{
"Name": "website",
"AttributeDataType": "String",
"DeveloperOnlyAttribute": false,
"Mutable": true,
"Required": false,
"StringAttributeConstraints": {
"MinLength": "0",
"MaxLength": "2048"
}
},
{
"Name": "email",
"AttributeDataType": "String",
"DeveloperOnlyAttribute": false,
"Mutable": true,
"Required": false,
"StringAttributeConstraints": {
"MinLength": "0",
"MaxLength": "2048"
}
},
{
"Name": "email_verified",
"AttributeDataType": "Boolean",
"DeveloperOnlyAttribute": false,
"Mutable": true,
"Required": false
},
{
"Name": "gender",
"AttributeDataType": "String",
"DeveloperOnlyAttribute": false,
"Mutable": true,
"Required": false,
"StringAttributeConstraints": {
"MinLength": "0",
"MaxLength": "2048"
}
},
{
"Name": "birthdate",
"AttributeDataType": "String",
"DeveloperOnlyAttribute": false,
"Mutable": true,
"Required": false,
"StringAttributeConstraints": {
"MinLength": "10",
"MaxLength": "10"
}
},
{
"Name": "zoneinfo",
"AttributeDataType": "String",
"DeveloperOnlyAttribute": false,
"Mutable": true,
"Required": false,
"StringAttributeConstraints": {
"MinLength": "0",
"MaxLength": "2048"
}
},
{
"Name": "locale",
"AttributeDataType": "String",
"DeveloperOnlyAttribute": false,
"Mutable": true,
"Required": false,
"StringAttributeConstraints": {
"MinLength": "0",
"MaxLength": "2048"
}
},
{
"Name": "phone_number",
"AttributeDataType": "String",
"DeveloperOnlyAttribute": false,
"Mutable": true,
"Required": false,
"StringAttributeConstraints": {
"MinLength": "0",
"MaxLength": "2048"
}
},
{
"Name": "phone_number_verified",
"AttributeDataType": "Boolean",
"DeveloperOnlyAttribute": false,
"Mutable": true,
"Required": false
},
{
"Name": "address",
"AttributeDataType": "String",
"DeveloperOnlyAttribute": false,
"Mutable": true,
"Required": false,
"StringAttributeConstraints": {
"MinLength": "0",
"MaxLength": "2048"
}
},
{
"Name": "updated_at",
"AttributeDataType": "Number",
"DeveloperOnlyAttribute": false,
"Mutable": true,
"Required": false,
"NumberAttributeConstraints": {
"MinValue": "0"
}
},
{
"Name": "custom:roles",
"AttributeDataType": "String",
"DeveloperOnlyAttribute": false,
"Mutable": true,
"Required": false,
"StringAttributeConstraints": {}
}
],
"SmsVerificationMessage": "The verification code to your new account is {####}",
"EmailVerificationMessage": "The verification code to your new account is {####}",
"EmailVerificationSubject": "Verify your new account",
"VerificationMessageTemplate": {
"SmsMessage": "The verification code to your new account is {####}",
"EmailMessage": "The verification code to your new account is {####}",
"EmailSubject": "Verify your new account",
"DefaultEmailOption": "CONFIRM_WITH_CODE"
},
"MfaConfiguration": "OFF",
"EstimatedNumberOfUsers": 8,
"EmailConfiguration": {
"EmailSendingAccount": "COGNITO_DEFAULT"
},
"UserPoolTags": {
"app-id": "Performance Dashboard on AWS"
},
"AdminCreateUserConfig": {
"AllowAdminCreateUserOnly": true,
"UnusedAccountValidityDays": 7,
"InviteMessageTemplate": {
"EmailMessage": "<html>\n <head>\n <meta charset=\"utf-8\" />\n <meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />\n <meta\n name=\"viewport\"\n content=\"width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=no;\"\n />\n </head>\n <body\n width=\"100%\"\n style=\"\n margin: 0;\n padding: 0 !important;\n background-color: #fff;\n font-family: Source Sans Pro Web, Helvetica Neue, Helvetica, Roboto, Arial,\n sans-serif;\n \"\n >\n <div\n style=\"margin: 0 auto; max-width: 700px; background-color: #fff\"\n align=\"center\"\n >\n <div\n style=\"border: 1px solid; margin: 0 auto; max-width: 600px\"\n align=\"left\"\n >\n <div style=\"padding: 20px;\">\n <table>\n <tr>\n <td width=\"50\">\n <img\n align=\"left\"\n style=\"\n border: none;\n border-radius: 0px;\n display: block;\n outline: none;\n text-decoration: none;\n width: 100%;\n height: auto;\n \"\n alt=\"Your Logo\"\n src=\"https://[your domain]/logo.png\"\n />\n </td>\n <td style=\"padding: 5px; font-size: 16px; font-weight: bold\">\n <p align=\"left\" style=\"margin-top: 10px; margin-bottom: 0\">\n [Organization] Performance Dashboard\n </p>\n </td>\n </tr>\n </table>\n\n <p style=\"margin-top: 10px; margin-bottom: 0\"> </p>\n <h2\n style=\"\n margin-top: 20px;\n margin-bottom: 0;\n font-style: normal;\n color: #000;\n font-size: 28px;\n line-height: 32px;\n \"\n >\n You have been invited to the [Organization] Performance Dashboard on\n AWS\n </h2>\n <p\n style=\"\n margin-top: 10px;\n margin-bottom: 0;\n font-size: 16px;\n line-height: 24px;\n color: #000;\n \"\n >\n [Administrator] has invited you. If you believe that you have gotten\n this invite in error, please disregard this message. If you are\n unsure of the message’s authenticity, please reach out to the person\n who invited you.\n </p>\n <p\n style=\"\n margin-top: 10px;\n margin-bottom: 0;\n font-size: 16px;\n line-height: 24px;\n color: #000;\n \"\n >\n Your username is <b>{username}</b> and temporary password is \"<b>{####}</b>\". You\n will have to change your password after you login.\n </p>\n <p style=\"margin-top: 20px; margin-bottom: 0\"> </p>\n <div style=\"margin-bottom: 20px\">\n <a\n style=\"\n border-radius: 4px;\n border-width: 2px;\n border-color: #71767a;\n font-size: 14px;\n font-weight: bold;\n line-height: 24px;\n padding: 12px 24px 13px 24px;\n text-decoration: none !important;\n text-align: center;\n color: #71767a !important;\n background-color: #ffffff;\n \"\n href=\"https://[your domain]/admin\"\n >Accept the invite</a\n >\n </div>\n <a\n style=\"font-size: 12px; line-height: 5px; color: #000\"\n href=\"https://[your domain]/admin\"\n >https://[your domain]/admin</a\n >\n <hr style=\"margin-top: 30px\" />\n <p\n style=\"\n font-size: 10px;\n line-height: 5px;\n color: #000;\n font-style: italic;\n \"\n >\n Please do not reply to this message\n </p>\n </div>\n </div>\n <table style=\"font-size: 12px; line-height: 50px\">\n <tr>\n <td>\n <a\n style=\"color: #000\"\n href=\"https://github.com/awslabs/performance-dashboard-on-aws\"\n >About Performance Dashboard</a\n >\n </td>\n <td>|</td>\n <td>\n <a style=\"color: #000\" href=\"[Replace]\">Privacy</a>\n </td>\n </tr>\n </table>\n </div>\n </body>\n</html>\n",
"EmailSubject": "You have been invited to the {Organization} Performance Dashboard on AWS."
}
},
"Arn": "arn:aws:cognito-idp:us-east-1:558378773035:userpool/us-east-1_3vVMvROS8",
"AccountRecoverySetting": {
"RecoveryMechanisms": [
{
"Priority": 1,
"Name": "verified_phone_number"
},
{
"Priority": 2,
"Name": "verified_email"
}
]
}
}
}
Before opening, please confirm:
JavaScript Framework
React
Amplify APIs
Authentication, REST API, Storage, Interactions
Amplify Categories
auth, storage, api
Environment information
Details
Describe the bug
We have a signOut button defined as follows
When user clicks the button a request is sent to the server but returning a NS_BINDING_ABORTED which is causing the user not really being signed out and when redirect it lands in the same page not in the sign in page.
This started happening recently and can be reproduced in Firefox/Chrome (haven't tried Safari yet).
Expected behavior
User signed out and redirected to the login page.
Reproduction steps
Code Snippet
// Put your code below this line.Log output
Details
aws-exports.js
No response
Manual configuration
Additional configuration
{ "UserPool": { "Id": "us-east-xxxx", "Name": "UserPool6BA7E5F2-xxxx", "Policies": { "PasswordPolicy": { "MinimumLength": 8, "RequireUppercase": true, "RequireLowercase": true, "RequireNumbers": true, "RequireSymbols": true, "TemporaryPasswordValidityDays": 7 } }, "LambdaConfig": {}, "LastModifiedDate": "2021-10-19T14:57:35.795000-04:00", "CreationDate": "2021-10-19T14:57:35.795000-04:00", "SchemaAttributes": [ { "Name": "sub", "AttributeDataType": "String", "DeveloperOnlyAttribute": false, "Mutable": false, "Required": true, "StringAttributeConstraints": { "MinLength": "1", "MaxLength": "2048" } }, { "Name": "name", "AttributeDataType": "String", "DeveloperOnlyAttribute": false, "Mutable": true, "Required": false, "StringAttributeConstraints": { "MinLength": "0", "MaxLength": "2048" } }, { "Name": "given_name", "AttributeDataType": "String", "DeveloperOnlyAttribute": false, "Mutable": true, "Required": false, "StringAttributeConstraints": { "MinLength": "0", "MaxLength": "2048" } }, { "Name": "family_name", "AttributeDataType": "String", "DeveloperOnlyAttribute": false, "Mutable": true, "Required": false, "StringAttributeConstraints": { "MinLength": "0", "MaxLength": "2048" } }, { "Name": "middle_name", "AttributeDataType": "String", "DeveloperOnlyAttribute": false, "Mutable": true, "Required": false, "StringAttributeConstraints": { "MinLength": "0", "MaxLength": "2048" } }, { "Name": "nickname", "AttributeDataType": "String", "DeveloperOnlyAttribute": false, "Mutable": true, "Required": false, "StringAttributeConstraints": { "MinLength": "0", "MaxLength": "2048" } }, { "Name": "preferred_username", "AttributeDataType": "String", "DeveloperOnlyAttribute": false, "Mutable": true, "Required": false, "StringAttributeConstraints": { "MinLength": "0", "MaxLength": "2048" } }, { "Name": "profile", "AttributeDataType": "String", "DeveloperOnlyAttribute": false, "Mutable": true, "Required": false, "StringAttributeConstraints": { "MinLength": "0", "MaxLength": "2048" } }, { "Name": "picture", "AttributeDataType": "String", "DeveloperOnlyAttribute": false, "Mutable": true, "Required": false, "StringAttributeConstraints": { "MinLength": "0", "MaxLength": "2048" } }, { "Name": "website", "AttributeDataType": "String", "DeveloperOnlyAttribute": false, "Mutable": true, "Required": false, "StringAttributeConstraints": { "MinLength": "0", "MaxLength": "2048" } }, { "Name": "email", "AttributeDataType": "String", "DeveloperOnlyAttribute": false, "Mutable": true, "Required": false, "StringAttributeConstraints": { "MinLength": "0", "MaxLength": "2048" } }, { "Name": "email_verified", "AttributeDataType": "Boolean", "DeveloperOnlyAttribute": false, "Mutable": true, "Required": false }, { "Name": "gender", "AttributeDataType": "String", "DeveloperOnlyAttribute": false, "Mutable": true, "Required": false, "StringAttributeConstraints": { "MinLength": "0", "MaxLength": "2048" } }, { "Name": "birthdate", "AttributeDataType": "String", "DeveloperOnlyAttribute": false, "Mutable": true, "Required": false, "StringAttributeConstraints": { "MinLength": "10", "MaxLength": "10" } }, { "Name": "zoneinfo", "AttributeDataType": "String", "DeveloperOnlyAttribute": false, "Mutable": true, "Required": false, "StringAttributeConstraints": { "MinLength": "0", "MaxLength": "2048" } }, { "Name": "locale", "AttributeDataType": "String", "DeveloperOnlyAttribute": false, "Mutable": true, "Required": false, "StringAttributeConstraints": { "MinLength": "0", "MaxLength": "2048" } }, { "Name": "phone_number", "AttributeDataType": "String", "DeveloperOnlyAttribute": false, "Mutable": true, "Required": false, "StringAttributeConstraints": { "MinLength": "0", "MaxLength": "2048" } }, { "Name": "phone_number_verified", "AttributeDataType": "Boolean", "DeveloperOnlyAttribute": false, "Mutable": true, "Required": false }, { "Name": "address", "AttributeDataType": "String", "DeveloperOnlyAttribute": false, "Mutable": true, "Required": false, "StringAttributeConstraints": { "MinLength": "0", "MaxLength": "2048" } }, { "Name": "updated_at", "AttributeDataType": "Number", "DeveloperOnlyAttribute": false, "Mutable": true, "Required": false, "NumberAttributeConstraints": { "MinValue": "0" } }, { "Name": "custom:roles", "AttributeDataType": "String", "DeveloperOnlyAttribute": false, "Mutable": true, "Required": false, "StringAttributeConstraints": {} } ], "SmsVerificationMessage": "The verification code to your new account is {####}", "EmailVerificationMessage": "The verification code to your new account is {####}", "EmailVerificationSubject": "Verify your new account", "VerificationMessageTemplate": { "SmsMessage": "The verification code to your new account is {####}", "EmailMessage": "The verification code to your new account is {####}", "EmailSubject": "Verify your new account", "DefaultEmailOption": "CONFIRM_WITH_CODE" }, "MfaConfiguration": "OFF", "EstimatedNumberOfUsers": 8, "EmailConfiguration": { "EmailSendingAccount": "COGNITO_DEFAULT" }, "UserPoolTags": { "app-id": "Performance Dashboard on AWS" }, "AdminCreateUserConfig": { "AllowAdminCreateUserOnly": true, "UnusedAccountValidityDays": 7, "InviteMessageTemplate": { "EmailMessage": "<html>\n <head>\n <meta charset=\"utf-8\" />\n <meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />\n <meta\n name=\"viewport\"\n content=\"width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=no;\"\n />\n </head>\n <body\n width=\"100%\"\n style=\"\n margin: 0;\n padding: 0 !important;\n background-color: #fff;\n font-family: Source Sans Pro Web, Helvetica Neue, Helvetica, Roboto, Arial,\n sans-serif;\n \"\n >\n <div\n style=\"margin: 0 auto; max-width: 700px; background-color: #fff\"\n align=\"center\"\n >\n <div\n style=\"border: 1px solid; margin: 0 auto; max-width: 600px\"\n align=\"left\"\n >\n <div style=\"padding: 20px;\">\n <table>\n <tr>\n <td width=\"50\">\n <img\n align=\"left\"\n style=\"\n border: none;\n border-radius: 0px;\n display: block;\n outline: none;\n text-decoration: none;\n width: 100%;\n height: auto;\n \"\n alt=\"Your Logo\"\n src=\"https://[your domain]/logo.png\"\n />\n </td>\n <td style=\"padding: 5px; font-size: 16px; font-weight: bold\">\n <p align=\"left\" style=\"margin-top: 10px; margin-bottom: 0\">\n [Organization] Performance Dashboard\n </p>\n </td>\n </tr>\n </table>\n\n <p style=\"margin-top: 10px; margin-bottom: 0\"> </p>\n <h2\n style=\"\n margin-top: 20px;\n margin-bottom: 0;\n font-style: normal;\n color: #000;\n font-size: 28px;\n line-height: 32px;\n \"\n >\n You have been invited to the [Organization] Performance Dashboard on\n AWS\n </h2>\n <p\n style=\"\n margin-top: 10px;\n margin-bottom: 0;\n font-size: 16px;\n line-height: 24px;\n color: #000;\n \"\n >\n [Administrator] has invited you. If you believe that you have gotten\n this invite in error, please disregard this message. If you are\n unsure of the message’s authenticity, please reach out to the person\n who invited you.\n </p>\n <p\n style=\"\n margin-top: 10px;\n margin-bottom: 0;\n font-size: 16px;\n line-height: 24px;\n color: #000;\n \"\n >\n Your username is <b>{username}</b> and temporary password is \"<b>{####}</b>\". You\n will have to change your password after you login.\n </p>\n <p style=\"margin-top: 20px; margin-bottom: 0\"> </p>\n <div style=\"margin-bottom: 20px\">\n <a\n style=\"\n border-radius: 4px;\n border-width: 2px;\n border-color: #71767a;\n font-size: 14px;\n font-weight: bold;\n line-height: 24px;\n padding: 12px 24px 13px 24px;\n text-decoration: none !important;\n text-align: center;\n color: #71767a !important;\n background-color: #ffffff;\n \"\n href=\"https://[your domain]/admin\"\n >Accept the invite</a\n >\n </div>\n <a\n style=\"font-size: 12px; line-height: 5px; color: #000\"\n href=\"https://[your domain]/admin\"\n >https://[your domain]/admin</a\n >\n <hr style=\"margin-top: 30px\" />\n <p\n style=\"\n font-size: 10px;\n line-height: 5px;\n color: #000;\n font-style: italic;\n \"\n >\n Please do not reply to this message\n </p>\n </div>\n </div>\n <table style=\"font-size: 12px; line-height: 50px\">\n <tr>\n <td>\n <a\n style=\"color: #000\"\n href=\"https://github.com/awslabs/performance-dashboard-on-aws\"\n >About Performance Dashboard</a\n >\n </td>\n <td>|</td>\n <td>\n <a style=\"color: #000\" href=\"[Replace]\">Privacy</a>\n </td>\n </tr>\n </table>\n </div>\n </body>\n</html>\n", "EmailSubject": "You have been invited to the {Organization} Performance Dashboard on AWS." } }, "Arn": "arn:aws:cognito-idp:us-east-1:558378773035:userpool/us-east-1_3vVMvROS8", "AccountRecoverySetting": { "RecoveryMechanisms": [ { "Priority": 1, "Name": "verified_phone_number" }, { "Priority": 2, "Name": "verified_email" } ] } } }Mobile Device
MacBook Pro (16-inch, 2019)
Mobile Operating System
macOS Monterrey
Mobile Browser
Firefox/Chrome
Mobile Browser Version
91.11.0esr (64-bit)/104.0.5112.79
Additional information and screenshots
No response