c# – Forms Auth:对子目录有不同的凭据?

我的网站有表格认证,一切都很好.现在我想创建一个子目录并让它也受密码保护,但是!我需要子目录使用一组完全不同于整个网站使用的登录/密码.

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

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

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

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

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

现在,我看到的唯一选项是为子目录滚动我自己的Forms Auth.

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

最佳答案 我认为您可以使用此代码来验证任何提供商的用户

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

  //your code

}
点赞