Hello everyone,
I’m trying to determine the exact list of characters that are allowed (or disallowed) for a username in Keycloak. During my investigation, I came across the filesrc/main/java/org/keycloak/services/validation/Validation.javaand this specific line: Pattern.compile("^[\\p{IsLatin}|\\p{IsCommon}]+$")
I’m particularly curious about the \p{IsCommon}part of this regular expression. It doesn’t seem to match any standard class documented in the Java Regular Expressions API (see Pattern (Java Platform SE 8 )), and I couldn’t find a clear explanation of what it encompasses.
- Does
\p{IsCommon}represent a Keycloak-specific extension, or does it map to a broader Unicode class? Is there an exhaustive list of characters that fall under this category? - And more globally, is there an exhaustive list of allowed characters for usernames in Keycloak ? If so, is it possible to access or retrieve this list?
Thank you in advance for your insights!