asp.net中的简单角色身份验证

asp.net中的简单角色身份验证,asp.net,authentication,Asp.net,Authentication,我想在.NET中做一个简单的角色身份验证-但是我迷失在大量的API中 我希望每个目录都有一个web.config,具有如下角色访问权限: <authorization> <allow roles="admin"/> <deny users="*"/> </authorization> 在我的登录页面中,我要指定登录用户(管理员、用户等)的角色 我不需要RoleManagementProviders和RoleManagement

我想在.NET中做一个简单的角色身份验证-但是我迷失在大量的API中

我希望每个目录都有一个web.config,具有如下角色访问权限:

<authorization>
    <allow roles="admin"/>
    <deny users="*"/>
</authorization>

在我的登录页面中,我要指定登录用户(管理员、用户等)的角色 我不需要RoleManagementProviders和RoleManagement(在我的例子中)的过度熟练的功能

我需要向用户提供什么API才能指定用户的角色


如果您打算使用ASP.NET中已经提供的角色管理和用户功能,请亲自感谢

,为什么要尝试拼凑一个解决方案来限制您的扩展能力呢


使用角色分配的默认功能很容易,您不必担心为用户正确创建身份信息。

这里是一个关于使用角色的非常简单的表单身份验证实现的链接。我认为这是最基本的表单身份验证实现:

以下是一个关于会员资格提供商的信息: 您可能需要搜索其他教程才能清楚地了解如何自定义它


我更喜欢成员资格提供程序,因为它允许您覆盖默认值,并提供您自己的数据存储和用于不同身份验证操作的方法。我发现它比使用基本实现更容易。

请注意,要使用角色提供程序模型,您不必使用数据库和模式,有更简单的选项。您可能有兴趣使用授权管理器(从Microsoft免费下载),它允许您向ASP.NET应用程序添加角色提供程序,并使用其工具(通过管理工具访问的MMC管理单元)配置角色和权限

该工具公开的配置存储在一个xml文件中,该文件在applications web.config中引用:

<connectionStrings>
  <add name="LocalPolicyStore" connectionString="msxml://C:/AzManStore.xml"/>
</connectionStrings>

然后,当您将应用程序配置为使用授权管理器角色提供程序时,可以引用:

<roleManager enabled="true" defaultProvider="RoleManagerAzManProvider">
  <providers>
    <add name="RoleManagerAzManProvider"
         type="System.Web.Security.AuthorizationStoreRoleProvider, System.Web, Version=2.0.0.0, Culture=neutral, publicKeyToken=b03f5f7f11d50a3a"
         applicationName="MyApp"
         connectionStringName="LocalPolicyStore"/>
  </providers>
</roleManager>

我无法使用默认功能,因为我没有SQL,无法创建角色成员所需的所有表。我需要另找一条路。