我有一个完全受表单身份验证保护的ASP.NET Web应用程序。
是否存在一种配置,在该配置下,来自同一台计算机上的另一个应用程序(Web或控制台)的Web请求可以绕过表单身份验证并访问该页面,就好像它已经过身份验证一样?
答案 0 :(得分:1)
@ merlin2011,你有两个选择了。
1.在不同的应用程序中使用相同machineKey的cookie。(最简单)
ASP.NET中的表单身份验证使用cookie来加密和解密您的身份并指示您是否已登录。默认情况下,应用程序使用不同的密钥来加密您在不同应用程序中的身份。 看更多: Forms Authentication Across Applications
注意:此解决方案仅适用于同一网域中的应用程序之间。
(例如www.example.com
,a.example.com
,如果www.example1.com
不起作用)
2.应用程序位于不同的Web域(复杂)
在这种情况下,您需要Single Sign-on
解决方案。这将需要您编写代码来验证用户是否已记录。