混合使用Windows身份验证和表单身份验证

7
考虑一个用于内部网络的站点,也应该可以从互联网访问。在内部网络中,您想要使用Windows身份验证,在互联网上,您希望用户使用表单身份验证访问该站点。
这两种身份验证方式能否混合使用?我只想验证用户是否已通过其中一种方式登录,而不使用两个站点。
3个回答

4

2

我不知道有内置的方法可以做到这一点。但您可以使用一个简单的解决方法:

选择表单身份验证作为您的主要身份验证,并将Windows身份验证映射到它。您可以在应用程序的AuthenticateRequest中使用global.asax或特殊的http处理程序或模块来完成此操作。在此请求中识别您的Intranet用户,并使用FormsAuthentication.SetAuthCookie以编程方式设置表单身份验证cookie。

实际上,我将其用于混合模式表单和IP号码身份验证,但我认为它也适用于表单和Windows身份验证。

顺便说一下:也许混合模式表单和IP号码身份验证是您问题的第二个解决方案。如果您的服务器是DMZ的一部分,则可以通过IP号码子网检测您的Intranet用户。


1

所链接的解决方案似乎很全面,但需要完全信任或gacced提供程序集。 - Sky Sanders

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接