Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature][Improvement] Introduce rule based password input validation. #16323

Closed
Thumimku opened this issue Jul 26, 2023 · 9 comments
Closed
Assignees
Labels
Fixed/7.0.0 QA-Reject This issue fix is rejected by the QA team Type/NewFeature
Milestone

Comments

@Thumimku
Copy link
Contributor

Thumimku commented Jul 26, 2023

Currently IS has password input validation with the following features.

  • validating minimum characters
  • validating maximum charectors
  • validating against regex

Validating against regex is not user-friendly. Hence with this improvement, we plan to introduce the following validators.

  • Min character
  • Max character
  • No. of Upper case
  • No. of lower case
  • No. of special characters

above configuration will provide fine-grained password validation configuration.

@Thumimku Thumimku self-assigned this Jul 26, 2023
@Thumimku
Copy link
Contributor Author

After the initial test found the updates:

  • Proposed password validation feature is already added to the product but has not been tested or enabled.
  • Rule-based password validation is skipped by checking Java regex by default
  • InputValidation Handelr is disabled by default.
  • I enabled and bypass the skipping point by manually changing the regex at the server startup.
  • Early smoke tests are working as expected.

TODO

  • Add configuration for the regex skip point to enable the feature by default, but we need to consider backward compatibility.
  • Enable InputValidationHandler.
  • Add UI improvements for the password validation section to support the new handler.
  • Add UI improvement when creating a user, and updating user credentials.

@Thumimku
Copy link
Contributor Author

Thumimku commented Jul 26, 2023

Daily Update:
26/07:

  • Started working on the feature.
  • Checked the code for enabling the feature and do a couple of tests to check the feature stability.

28/07:

  • Raised mail for expected delivery with current behavior.
  • Started working on UIs

31/07(Updated):

02/08:

  • Tested the feasibility and backend effort estimation for the $ please refer the section Password Input Validation effort analysis in EPIC

04/08:

@Thumimku
Copy link
Contributor Author

Thumimku commented Aug 2, 2023

Hi ,
POC: wso2/identity-apps#3975
At the moment we don't support Password expiry Rest API in the product, so we have to exclude the call from the console. By adding above mentioned tentative changes we can view the rule based password validation configuration UI with password history component.

@Thumimku
Copy link
Contributor Author

This feature depend on the username input validation feature, hence we can move both in one go. Hence modifying the milestone.

@Thumimku Thumimku modified the milestones: 7.0.0-m2, 7.0.0-alpha Sep 14, 2023
@chamathns chamathns modified the milestones: 7.0.0-m3, 7.0.0-alpha Sep 27, 2023
@Thumimku
Copy link
Contributor Author

Postponing to alpha cause we need tenant qualified URL feature to be enabled

@asekawa
Copy link

asekawa commented Oct 12, 2023

This feature fix will be QA rejected due to these L1 issues

1.#16929
2.#16930

@asekawa asekawa added the QA-Reject This issue fix is rejected by the QA team label Oct 12, 2023
@Thumimku
Copy link
Contributor Author

Input validation for REST API: #16983

@Thumimku
Copy link
Contributor Author

@bhagyasakalanka is working on integration test updates, can you please update the status.

@Thumimku Thumimku modified the milestones: 7.0.0-alpha, 7.0.0-alpha2 Oct 31, 2023
@bhagyasakalanka
Copy link
Contributor

Integration tests are fixed with: #17508
Default configuration is enabled with: wso2/carbon-identity-framework#5133

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Fixed/7.0.0 QA-Reject This issue fix is rejected by the QA team Type/NewFeature
Projects
Archived in project
Development

No branches or pull requests

6 participants