【发布时间】:2015-07-16 05:12:51
【问题描述】:
我们目前正在评估 WSO2 身份服务器。我们想使用电子邮件地址作为用户名。默认情况下,用户名是 30 个字符,不够长。它必须同时支持两者。和@在用户名中。有没有办法配置这个?用户存储是 JDBC(Mysql) 的。
谢谢
【问题讨论】:
我们目前正在评估 WSO2 身份服务器。我们想使用电子邮件地址作为用户名。默认情况下,用户名是 30 个字符,不够长。它必须同时支持两者。和@在用户名中。有没有办法配置这个?用户存储是 JDBC(Mysql) 的。
谢谢
【问题讨论】:
是的..你可以做到的..
步骤 1。在 IS_HOME/repository/conf 中打开 carbon.xml 并取消注释
<EnableEmailUserName>true</EnableEmailUserName>
步骤 2。在 IS_HOME/repository/conf 中打开 user-mgt.xml 并取消注释 JDBC 配置
org.wso2.carbon.user.core.jdbc.JDBCUserStoreManager
和
评论默认 LDAP 用户存储管理器配置。
org.wso2.carbon.user.core.ldap.ReadWriteLDAPUserStoreManager
第 3 步。请在org.wso2.carbon.user.core.jdbc.JDBCUserStoreManager 配置下添加以下属性。
<Property name="UsernameWithEmailJavaScriptRegEx">[a-zA-Z0-9@._-|//]{3,30}$</Property>
使用上述属性,您可以更改您的电子邮件地址的格式...默认情况下必须大于 3 个字符且小于 30 个字符,但您可以根据需要配置它..
第四步。重启服务器
您可以从here 找到有关使用电子邮件用户名的更多详细信息。这篇文章解释清楚。
【讨论】:
这是官方文档:https://docs.wso2.com/display/IS500/Email+Authentication
默认情况下,“@”被解释为一个特殊字符,用于为多租户环境构建完全合格的用户名。因此,您需要将服务器配置为以其他方式进行解释。
【讨论】: