c# - 表单授权 : have different credentials for a subdirectory?

标签 c# .net asp.net forms-authentication

我的网站有表单验证,一切正常。现在我想创建一个子目录并为其设置密码保护,但是!我需要该子目录使用与整个网站使用的一组完全不同的登录名/密码。

例如,我将网站的用户存储在数据库的“用户”表中。但是对于子目录,我希望从“SubdirUsers”表中获取用户。这可能具有完全不同的结构。

因此,我需要登录完全并行,如:

  1. 登录整个网站不会让您也登录到子目录
  2. 在整个网站上单击“注销”不会使您在子目录中的登录无效
  3. 反之亦然

不想为子目录创建单独的虚拟应用程序,因为我想共享所有库、用户控件以及应用程序状态和缓存。换句话说,它必须是同一个应用程序。

我也只想在“用户”表中添加一个标志,指示这是整个网站用户还是子目录用户。用户列表必须来自不同的来源。

目前,我看到的唯一选择是为子目录滚动我自己的 Forms Auth。

有人可以提出更好的选择吗?

最佳答案

我认为您可以使用此代码通过任何提供商验证用户

if (Membership.Providers["myprovider"].ValidateUser("USER", "PWD")) {

  //your code

}

关于c# - 表单授权 : have different credentials for a subdirectory?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2451973/

相关文章:

c# - 无法将委托(delegate)转换为泛型类型 T

c# - 如何编写一个 C# 方法来接受未知类型的注入(inject)依赖项?

c# - ASP.NET 照片 API(Shutterfly 等 ..)

asp.net - 从 javascript 获取下拉框中的值

c# - 应用程序与 fiddler ON 一起工作,没有 fiddler 就不能工作?

c# - 如何在 SQL Server 中创建接受外部参数的触发器?

c# - NUnit 断言方法错误也在 NUnit.Framework 和 Microsoft.VisualStudio.TestTools.UnitTesting 命名空间中找到

c# - Web API 服务部署在 IIS 服务器上后未运行

.net - Visual Studio 2015 Professional 引发以下错误 :- Could not load file or assembly 'Microsoft. Activities.Design.Services

c# - ASP.net Core MVC 登录