/authorize?prompt=none
If MFA is added to the silent authentication process, however, then user interaction becomes necessary.
Conditional logic based on silent authentication to bypass MFA should not be used as a workaround. Rules such as this allow complete MFA bypass and should not be utilized:
prompt === 'none'
. This will trigger multi-factor authentication on each silent authentication call to check session status.
If you are affected by the silent authentication with redirection scenario, remove the conditional logic based on prompt === 'none'
and switch to an Auth0-supported multi-factor authentication provider.
To avoid prompting the user for MFA too often, you can set the parameter allowRememberBrowser
to true, which will enable end-users to check a box so they will only be prompted for multi-factor authentication every 30 days. For example:
allowRememberBrowser
configuration option described above.
if( _.findIndex(connection.options.domain_aliases,function(d){ return user.email.indexOf(d) >= 0;
The above logic would return true given emails such as these:
user.domain.com@not-domain.com
"user@domain.com"@not-domain.com
(quotes included)const emailSplit = user.email.split('@'); const userEmailDomain = emailSplit[emailSplit.length - 1].toLowerCase();
Please refer to the Check Domains Against Connection Aliases rule template for more information. Alternatively, in the Rules section of the , view the rule template named Check if user email domain matches configured domain.
id_token
or access_token
associated with the request. For example:
id_token
or access_token
associated with each request. Instead, you should send a subset of attributes from the context object that are less sensitive.
Please refer to the Requestbin rule template for more information. Alternatively, in the Rules section of the Auth0 Dashboard, view the rule template named Dump rule variables to RequestBin.
Auth0 also offers built-in methods for debugging rules without sending information to external services.
true
if an adversary could create an account using a different connection type (such as social) with an email address present in the allow-list. This happens because the same email can exist in different connection types.
const myApiKey = 'abcdefghijklmnopqrstuvwxyz';
Such sensitive values, being present in the rule code, will remain unencrypted in our systems and suffer the risk of being exposed.
const myApiKey = configuration.myApiKey;
This will ensure that all sensitive values are encrypted within Auth0’s systems, reducing the risk of exposure.