gpt4 book ai didi

c# - 自定义 .net MembershipProvider 中的自定义 ValidateUser()

转载 作者:太空宇宙 更新时间:2023-11-03 22:13:36 25 4
gpt4 key购买 nike

有没有办法扩展 ValidateUser 方法来接收默认参数以外的其他参数?

默认

public override bool ValidateUser(string username, string password)
{
return db.ValidateUser(username, password);
}

我想实现

public bool ValidateUser(Guid rsid)
{
return db.ValidateUser(rsid);
}

'db' 是一个包含与数据库通信的方法的类。这无论如何都不是我的设计,它是希望能够使用 Guid 链接登录的客户,安全! :)

谢谢

最佳答案

如果您正在为登录页面编写隐藏代码,那么您可以直接引用自定义 MembershipProvider 方法并点击您想要的任何重载,但如果您正在通过抽象类,那么您将无法访问重载。

至于 Guid 登录,将 Guid 设置为用户名,将密码设置为 null 并执行如下操作:

    public override bool ValidateUser(string username, string password)
{
Guid parsedUsername;
if (String.IsNullOrWhiteSpace(password) && Guid.TryParse(username, out parsedUsername))
{
return ValidateUser(parsedUsername);
}
else
{
return db.ValidateUser(username, password);
}
}

它最终成为一个完整的 hack,但实现了您的客户的目标。可能想提醒他们 guid 链接中的安全性为零。

关于c# - 自定义 .net MembershipProvider 中的自定义 ValidateUser(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5823133/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com