Rob*_*nik 32 iis-7 shared forms-authentication
我有一个在ie下运行的基本网站(Asp.net WebForms应用程序).
http://localhost:90/
Run Code Online (Sandbox Code Playgroud)
然后我创建了一个新的(这次是Asp.net MVC)应用程序并添加了它
http://localhost:90/mvc/
Run Code Online (Sandbox Code Playgroud)
但不仅仅是作为一个简单的虚拟文件夹,而是作为一个应用程序文件夹,通过定义一个不同的应用程序池来运行它,与父应用程序相比.
由于浏览器无法知道基本上在同一个域上有两个不同的应用程序,它的工作方式如下:
http://localhost:90/http://localhost:90/mvc我是否有可能根据同一个cookie对用户进行身份验证?我将配置我的MVC应用程序登录重定向到父应用程序以具有共享身份验证屏幕.但是我想知道从那时起谁经过认证和工作.
我已经阅读了一些关于共享相同system.web/machineKey值以提供此类功能的内容,但我想要一些真实世界的示例.
我知道这两个应用程序将无法共享会话状态,这不是问题,因为我不希望它们.我想要的只是一种单一登录(SSO/SSS)
这可能吗?怎么样?
我已经阅读了有关此问题的其他问题/答案,但他们要么是询问跨域/跨服务器等.这个问题都在同一个IIS网站上.
Rob*_*nik 38
我自己找到了.
这篇关于MSDN的文章正好谈到了这个场景.无论如何,我决定对任何想要在一段时间之后追逐相同信息的人保留这个问题.
您必须在web.config两个应用程序中配置机器密钥,以便它们匹配,因此它们将能够解码另一方生成的数据.这就是整个伎俩.MSDN文章详细解释了这一点,包括如何生成这些密钥.
如果有人仍然无法共享密钥使用
compatibilityMode="Framework20SP1"
<machineKey validationKey="same key all over"
decryptionKey="same key all over"
validation="SHA1" decryption="AES"
compatibilityMode="Framework20SP1"/>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
20280 次 |
| 最近记录: |