asp.net - 为 ASP.NET MVC 实现自定义登录

标签 asp.net asp.net-mvc vb.net authentication authorization

我是 ASP.NET MVC 新手,需要一些有关如何实现以下内容的建议。

该网站是一个使用率很高的网站,内部有大约 200 个用户(内部网)。我们使用表单例份验证来访问 SQL Server DB(不是 Windows 集成)。

有些操作受到保护,有些操作任何人都可以查看,有些操作双方都可以查看 - 因此,如果有登录用户,他们会看到数据库中的内容,否则他们会看到临时配置文件 - 很像 StackOverflow。

我将如何针对这种情况实现安全模型?我可以重用 ASP.NET MVC 中的现有框架并使用授权过滤器吗?

有什么网上文章可以作为引用吗?

最佳答案

我遇到了同样的问题,因为我想使用自定义构建的用户数据库实现 asp.net 成员资格,我的解决方案是覆盖默认的 aspnet 成员资格提供程序来管理用户日志记录和 aspnet 角色提供程序来管理用户角色。 例如,我的自定义成员(member)资格提供商将如下所示

namespace Entities
{
    public class VEMembership : MembershipProvider
    {
        public override bool ValidateUser(string username, string password)
        {
            // your logic to validate user
            // return false if not qualified, other wise true
        }
    }
}

然后在您的网络配置文件中,您只需将默认成员(member)资格提供商添加到:

<membership defaultProvider="VEMembership">
    <providers>
        <clear/>
        <add name="VEMembership"
            type="Entities.VEMembership" 
            enablePasswordReset="true"
            requiresQuestionAndAnswer="false"
            requiresUniqueEmail="false"
            passwordFormat="Hashed"
            maxInvalidPasswordAttempts="5"
            minRequiredPasswordLength="6"
            minRequiredNonalphanumericCharacters="0"
            passwordAttemptWindow="10"
            passwordStrengthRegularExpression=""
            connectionString="VEConnectionString"/>
    </providers>
</membership>

如果您需要任何帮助,Google 搜索上有很多关于编写自定义 aspnet 成员(member)资格提供商的文章。 希望这有帮助

关于asp.net - 为 ASP.NET MVC 实现自定义登录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1641779/

相关文章:

html - vb.net 获取 HTML 元素的样式

asp.net - IIS 中重写规则中的多个条件

c# - 行尾有空白

asp.net - IIS 暂存和生产交换

asp.net - ASP.Net Core Web Api 中的异步视频流无法正常工作

c# - ASP.NET C# MVC4 中的双尖括号

asp.net - <% : %> do in asp. 网络 mvc 是什么?

mysql select语句未填充数据表

vb.net - 系统找不到为程序集指定的引用

VB.NET 限制选项卡排序?