为什么ASP.NET Windows身份验证在我的测试服务器上无法正常工作?

迈克尔·理查森(Michael Richardson)

我的团队正在使用Windows身份验证构建一个新的内部ASP.NET MVC 5应用程序。当我们需要检索用户的SID时,我们会像这样:

public BaseController : Controller
{
    protected SecurityIdentifier GetSid()
    {
        var wi = (WindowsIdentity)this.User.Identity; 
        SecurityIdentifier sid = wi.Owner;
        return sid;
    }
}

在我们本地的开发机器上,这非常完美。我们能够检索用户的SID并将其存储,并(随后)使用SID向Active Directory查询用户信息。(显然,在一个开发人员的计算机上运行该站点并从另一位开发人员的计算机访问该站点仍然可以正常工作。)这些是在IIS(不是Express)下运行该站点的Windows 7便携式计算机。

该站点也已部署到测试服务器。测试服务器运行Windows Server 2008 R2,并且该站点(再次)在IIS下运行。访问测试站点时,将通过Windows Auth识别用户,并且不需要登录。但是,通过上述方法检索用户SID将为每个用户返回完全相同的SID

可能有用的信息:

  • this.Identity.User.Name 每个用户的正确用户名。
  • “主” SID看起来像“ S-1-2-54-632”。(我怀疑SID是一个敏感数字,但为了安全起见,我更改了最后6位数字。)
  • 实际用户SID超过30位

这个SID比在dev机器上检索到的用户SID短得多。此外,当我们尝试向Active Directory查询与此SID关联的用户时,找不到用户。除非有其他解释,否则我认为这与测试服务器上的IIS(或AD)设置有关。我对IIS配置的经验有限,而对AD的经验几乎为零。无论如何,我尝试在IIS中调整站点的一些设置,但结果仍然相同。在这方面,什么原因可能导致测试服务器的行为有所不同?

莫西克斯

我认为您应该使用拥有一个所有者(另一个用户或组)的窗口对象(SecurityIdentifier sid = wi.User;而不是SecurityIdentifier sid = wi.Owner;用户)来代替因此,在您的测试服务器上,您可能正在接收拥有当前用户对象的组的SID。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

ASP.Net Web Forms App无法使用Windows身份验证在服务器上进行身份验证-模拟失败

来自分类Dev

ASP.Net Web Forms App无法使用Windows身份验证在服务器上进行身份验证-模拟失败

来自分类Dev

在将ASP.NET 4.6应用程序本地部署到IIS 10服务器后,为什么用户不能进行身份验证?

来自分类Dev

在将ASP.NET 4.6应用程序本地部署到IIS 10服务器后,为什么用户不能进行身份验证?

来自分类Dev

为什么身份验证不适用于我的ASP.NET REST API?

来自分类Dev

ASP.NET Identity 2.0针对我们自己的承载服务器进行身份验证

来自分类Dev

为什么我的asp.net重置按钮无法正常工作?

来自分类Dev

ASP.NET开发服务器意外身份验证所需

来自分类Dev

ASP.NET开发服务器意外身份验证所需

来自分类Dev

Instagram API服务器端身份验证ASP.NET MVC

来自分类Dev

为什么ASP.NET服务器在localhost:8084上运行?

来自分类Dev

为什么我的Mesos主服务器无法通过从服务器进行身份验证?

来自分类Dev

为什么没有对asp.net 5.0预览的身份验证-Web API模板-

来自分类Dev

在ASP.NET世界中,此身份验证模型称为什么

来自分类Dev

ASP.NET MVC登录客户端/ASP.NET WebAPI身份验证/授权服务器分离

来自分类Dev

为什么我的ASP.NET网站是单线程的?

来自分类Dev

Asp .Net MVC,为什么我的viewbag 总是不为空?

来自分类Dev

为什么我的数据重复?(ASP.Net Mvc)

来自分类Dev

为什么要在Windows Server上的.NET上的.NET Core上运行ASP.NET Core

来自分类Dev

为什么要在Windows Server上的.NET上的.NET Core上运行ASP.NET Core

来自分类Dev

ASP.NET的新手,我不知道为什么此@RenderPage无法正常工作

来自分类Dev

如何从ASP.NET应用程序获取经过身份验证的代理服务器?

来自分类Dev

IIS托管的ASP.NET和SharePoint服务器库-身份验证/安全问题

来自分类Dev

为什么我的ASP.NET Web服务无法完成此POST请求?

来自分类Dev

为什么在使用ASP.NET MVC捆绑包时,我的客户端为什么要去服务器检查文件是否被修改?

来自分类Dev

为什么在使用ASP.NET MVC捆绑包时,我的客户端为什么要去服务器检查文件是否被修改?

来自分类Dev

为什么在Heroku服务器上获得Laravel JWT身份验证的此错误

来自分类Dev

为什么我的REST服务.NET客户端发送不带身份验证标头的每个请求,然后使用身份验证标头重试?

来自分类Dev

使用运行Identity Server 4的ASP.NET CORE 3身份验证服务器对ASP.NET MVC 5应用(目标.net 4.5)进行身份验证

Related 相关文章

  1. 1

    ASP.Net Web Forms App无法使用Windows身份验证在服务器上进行身份验证-模拟失败

  2. 2

    ASP.Net Web Forms App无法使用Windows身份验证在服务器上进行身份验证-模拟失败

  3. 3

    在将ASP.NET 4.6应用程序本地部署到IIS 10服务器后,为什么用户不能进行身份验证?

  4. 4

    在将ASP.NET 4.6应用程序本地部署到IIS 10服务器后,为什么用户不能进行身份验证?

  5. 5

    为什么身份验证不适用于我的ASP.NET REST API?

  6. 6

    ASP.NET Identity 2.0针对我们自己的承载服务器进行身份验证

  7. 7

    为什么我的asp.net重置按钮无法正常工作?

  8. 8

    ASP.NET开发服务器意外身份验证所需

  9. 9

    ASP.NET开发服务器意外身份验证所需

  10. 10

    Instagram API服务器端身份验证ASP.NET MVC

  11. 11

    为什么ASP.NET服务器在localhost:8084上运行?

  12. 12

    为什么我的Mesos主服务器无法通过从服务器进行身份验证?

  13. 13

    为什么没有对asp.net 5.0预览的身份验证-Web API模板-

  14. 14

    在ASP.NET世界中,此身份验证模型称为什么

  15. 15

    ASP.NET MVC登录客户端/ASP.NET WebAPI身份验证/授权服务器分离

  16. 16

    为什么我的ASP.NET网站是单线程的?

  17. 17

    Asp .Net MVC,为什么我的viewbag 总是不为空?

  18. 18

    为什么我的数据重复?(ASP.Net Mvc)

  19. 19

    为什么要在Windows Server上的.NET上的.NET Core上运行ASP.NET Core

  20. 20

    为什么要在Windows Server上的.NET上的.NET Core上运行ASP.NET Core

  21. 21

    ASP.NET的新手,我不知道为什么此@RenderPage无法正常工作

  22. 22

    如何从ASP.NET应用程序获取经过身份验证的代理服务器?

  23. 23

    IIS托管的ASP.NET和SharePoint服务器库-身份验证/安全问题

  24. 24

    为什么我的ASP.NET Web服务无法完成此POST请求?

  25. 25

    为什么在使用ASP.NET MVC捆绑包时,我的客户端为什么要去服务器检查文件是否被修改?

  26. 26

    为什么在使用ASP.NET MVC捆绑包时,我的客户端为什么要去服务器检查文件是否被修改?

  27. 27

    为什么在Heroku服务器上获得Laravel JWT身份验证的此错误

  28. 28

    为什么我的REST服务.NET客户端发送不带身份验证标头的每个请求,然后使用身份验证标头重试?

  29. 29

    使用运行Identity Server 4的ASP.NET CORE 3身份验证服务器对ASP.NET MVC 5应用(目标.net 4.5)进行身份验证

热门标签

归档