okta / okta-signin-widget

HTML/CSS/JS widget that provides out-of-the-box authentication UX for your organization's apps
Other
375 stars 320 forks source link

Tooltip not shown with password as MFA challenge #2447

Open iuterga opened 2 years ago

iuterga commented 2 years ago

Describe the bug

Actual environment:

The error occurs in the second window when the MFA challenge is the password, regardless of whether it is accessed from the original okta URL (https://example.okta.com) or from a custom URL (https://okta.mycustomurl.com). The error is as follows:

Unable to see the tooltip configured for the password.

What is expected to happen?

  1. When configuring the Okta url from the sign in page code editor, both the placeholder and the tooltip are expected to be displayed.
  2. When configuring the custom code for the sign-in widget, it is expected to be able to configure and display both the placeholder and the tooltip for the password as an mfa challenge. Currently it only seems possible to configure the placeholder.

What is the actual behavior?

1.- When configuring the Okta url from the sign in page code editor, only the placeholder is displayed.

2.- When configuring the custom code for the sign-in widget, only the placeholder is displayed for the password as an mfa challenge. Currently it only seems possible to configure the placeholder because we have added this property (‘mfa.challenge.password.tooltip’: ‘EXAMPLE’ based in other MFA challenges as mfa.challenge.answer.tooltip’ or ‘mfa.challenge.enterCode.tooltip’ with no action

imagen

Reproduction Steps

1.- When configuring the Okta url from the sign in page code editor, only the placeholder is displayed.

2.- When configuring the custom code for the sign-in widget, only the placeholder is displayed for the password as an mfa challenge. Currently it only seems possible to configure the placeholder because we have added this property (‘mfa.challenge.password.tooltip’: ‘EXAMPLE’ based in other MFA challenges as mfa.challenge.answer.tooltip’ or ‘mfa.challenge.enterCode.tooltip’ with no action

imagen

SDK Versions

We are working with okta hosted sign-in widget.

Execution Environment

Browser(s) --> Google Chrome Versión 99.0.4844.82, Mozilla Firefox 98.0.2, Microsofdge Versión 99.0.1150.55 Language --> Spanish OS versions --> Windows 10 version 21H1 --> 19043.1586

Additional Information?

This reported bug comes from okta case 01334221

aarongranick-okta commented 2 years ago

@iuterga Thank you for bringing this issue to our attention. I have investigated and I believe the correct i18n key for this field is primaryauth.password.tooltip. Hopefully customizing the string under this key will result in the desired behavior. Please let us know if this works. Thanks! Internal issue: OKTA-483936

iuterga commented 2 years ago

Hi Aaron, thank you for your response!

I agree with you if you only have one window to authenticate yourself

For example:

If you configure your Okta-hosted custom sign-in widget with this code and you have an org that has one window to authenticate yourself:

image

The result is as expected

image

But, if config the same code into an org that has the factor sequence active and you have 2 windows for authentication:

Furthermore, we have investigated this issue and we have found some interesting things:

image

It seems that this property is not supported when the password is an MFA factor but it does when the factor sequence is not active and the password is required in the first window along with the username (property: 'primaryauth.password.tooltip').

Due to this investigation, Okta support told us to open a new issue here because you may be able to help us.

aarongranick-okta commented 2 years ago

@iuterga Thank you for the detailed explanation of the issue. I understand the problem and am marking the internal issue (OKTA-483936) as a bug. I will forward it to the appropriate team for action.

More detail:

password tooltip is added on "PrimaryAuth" form: https://github.com/okta/okta-signin-widget/blob/master/src/views/primary-auth/PrimaryAuthForm.js#L158

but is not present on "PasswordForm": https://github.com/okta/okta-signin-widget/blob/master/src/views/mfa-verify/PasswordForm.js#L26