ServiceStack授权:允许重复的电子邮件

时间:2015-02-17 23:48:44

标签: authentication servicestack

我们正在使用SS4并希望将其设置为不强制执行唯一的电子邮件(我们有一些客户需要能够为不同的用户重复发送电子邮件)。

Demis已经提到它是可配置的,但快速浏览一下代码并没有说明如何放松每个帐户都有一个独特的电子邮件的要求。

看起来我们可能需要使用RegistrationValidator?

SS代码中是否有一个示例显示更改帐户注册的验证规则以允许使用重复的电子邮件地址?

2 个答案:

答案 0 :(得分:4)

您可以在注册AuthFeature插件时配置它:

Plugins.Add(new AuthFeature(...) {
    ValidateUniqueEmails = false
});

答案 1 :(得分:0)

SS 3.x中的简单解决方案,我认为它将在SS 4.x中起作用

AssertNoExistingUser()检查电子邮件唯一性即使您尝试使用用户名作为凭据而非电子邮件的用户名。 简单的解决方法是使用空电子邮件地址(和有效的用户名)创建用户。 保存用户后,您可以将电子邮件重新发送给用户并调用AuthRepo.PatchUserAuth(userAuth)

它会保存,你不会有任何问题。