第三方服务器上的AD身份验证可能性

时间:2012-11-27 10:05:29

标签: asp.net iis active-directory windows-authentication

请假设有两台服务器:

  • 服务器-A:Windows 2012,IIS8,ASP.NET 4.5
  • Server-B:Windows 2012,IIS8,ASP.NET 4.5,Active Directory

这两台服务器由不同的组织拥有和管理,而Server-B上的Active Directory没有任何职责,也没有参与Server-A。

基于此,是否可以在Server-A上使用Windows身份验证来验证访问Server-B的用户?我不会假设,但显然不完全确定。

我已经设法在Server-B上编写代码来读取当前经过身份验证的用户的属性(例如employeeID),但需要将它们传递给Server-A进行处理(这可能最终会作为单点登录机制) )。除非你有更好的方法可以分享吗?

2 个答案:

答案 0 :(得分:1)

我通过以下方式实现了这一目标。可能有更好的方法,但这个方法和我能得到的一样安全:

  1. 用户通过Active Directory登录服务器B
  2. 用户访问服务器B上托管的“身份验证”页面
  3. 该页面会查找其AD员工ID并在Cookie中对其进行加密
  4. 用户将转移到服务器A上的Web应用程序
  5. 服务器A上的Web应用程序看到加密的cookie并对其进行解密,检查上一页是否位于客户的IP地址上
  6. Web应用程序使用加密cookie中的employeeID
  7. 记录用户

    在服务器B上创建了一个接口,以便在更新employeeID值时,此更改将镜像到服务器A上,以便employeeID值保持同步。

答案 1 :(得分:0)

您可以使用表单身份验证和AD授权提供程序。

http://msdn.microsoft.com/en-us/library/ff650308.aspx