Dmitriy created SYNCOPE-1457:
--------------------------------
Summary: NonAlphaNumeric policy pattern matched the "Not word"
character class
Key: SYNCOPE-1457
URL: https://issues.apache.org/jira/browse/SYNCOPE-1457
Project: Syncope
Issue Type: Bug
Components: core
Affects Versions: 2.0.12
Reporter: Dmitriy
Non-alphanumeric characters look like this
https://wci.llnl.gov/codes/basis/manual/node161.html
Seems, that next patterns are incorrect:
{code:java}
org.apache.syncope.core.provisioning.api.utils.policy.PolicyPattern#NON_ALPHANUMERIC
= Pattern.compile(".*\\W.*");
p
org.apache.syncope.core.provisioning.api.utils.policy.PolicyPattern#FIRST_NON_ALPHANUMERIC
= Pattern.compile("\\W.*");
org.apache.syncope.core.provisioning.api.utils.policy.PolicyPattern#LAST_NON_ALPHANUMERIC
= Pattern.compile(".*\\W");
{code}
Looks like these pattern should be anyhow symmetric to the:
{code:java}
org.apache.syncope.core.spring.security.DefaultPasswordGenerator#SPECIAL_CHARS
= { '!', '£', '%', '&', '(', ')', '?', '#', '$' };
{code}
Maybe these patterns should look like these:
{code:java}
private static final Pattern NON_ALPHANUMERIC =
Pattern.compile(".*[~!@#$%^&*_\\-`(){}\\[\\]:;\"'<>,.?/\\=\\+\\\\\\|].*");
private static final Pattern FIRST_NON_ALPHANUMERIC =
Pattern.compile("[~!@#$%^&*_\\-`(){}\\[\\]:;\"'<>,.?/\\=\\+\\\\\\|].*");
private static final Pattern LAST_NON_ALPHANUMERIC =
Pattern.compile(".*[~!@#$%^&*_\\-`(){}\\[\\]:;\"'<>,.?/\\=\\+\\\\\\|]");
{code}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)