是否有可用于指定在自动生成的密码中使用哪些字符的设置?
我们当前的密码是一些特殊字符的混乱,我们想在未来对它们进行一些整理。
有一个Sitecore.SecurityModel.Cryptography.PasswordGenerator
类,用于为 Sitecore Packager 安装的安全帐户分配随机密码。它包含一个属性Exclusions
,它是生成密码时要排除的字符串。
因此,您似乎可以像这样实现您所需要的:
var generator = new Sitecore.SecurityModel.Cryptography.PasswordGenerator();
generator.Exclusions = @"%|)(";
generator.Generate();
重置密码时,SitecoreResetPassword()
使用SqlMembershipProvider
. 默认情况下,配置的提供程序是System.Web.Security.SqlMembershipProvider
.
我追踪了生成密码的代码,它有一个硬编码的标点符号列表,这些标点符号总是随机包含在密码中:
private static char[] punctuations = "!@#$%^&*()_-+=[{]};:>|./?".ToCharArray();
因此,如果不实现自己的 SqlMembershipProvider 就无法更改此行为(至少不能用于重置密码,也许可以对 Yan 回答的打包程序生成的密码进行操作)