跨站点Windows和Forms身份验证

时间:2011-05-10 06:14:42

标签: asp.net security authentication forms-authentication windows-authentication

我在公共Web服务器上有一个ASP.NET站点,用户使用表单身份验证登录。

我希望某些组织内的用户能够通过Windows身份验证自动登录(绕过登录页面)。但是,因为这些客户端位于许多不同的服务器上,所以我不能只在Windows安全性中构建主站点。 (我知道有关于如何混合Windows和Forms安全性的文章。)

我的想法是让每个组织在其Intranet上安装一个页面,该页面重定向到我的网站,并根据用户的Windows域和用户名对用户进行身份验证。这有可能实现安全吗?我怎么能去做呢?

1 个答案:

答案 0 :(得分:1)

您所描述的几乎是 联合身份

除了每个网站上的页面外,您还需要一个能够验证令牌的网络服务。

基本上,流程是: 用户进入您的登录页面 您将它们重定向到他们的公司登录页面 他们的公司登录页面获取其凭据并重定向回您返回令牌

然后,您可以调用他们的Web服务来验证令牌以确定用户是谁。

许多公共API使用此方案(facebook是一个值得注意的例子)。

查找oauth和联合身份以获取更多信息。