C#表单身份验证.用于SSO的ASPXAUTH Cookie

本文关键字:ASPXAUTH Cookie SSO 用于 表单 身份验证 | 更新日期: 2023-09-27 18:27:00

我有两个域名相同的应用程序(一个.NET和另一个Angular SPA(.NET中的web服务)。我需要为这两个应用程序启用SSO。这两个web.config都具有相同的计算机密钥,并且都启用了Forms身份验证模式。

我登录到.NET网站,我在iFrame中展示了有角度的网站。打开iframe时,API调用在请求头中包含.ASPXAUTH cookie,但HttpContext.User.Identity.Authenticated设置为false。因此,它返回一个404,并重定向到iframe中angular站点的登录页面。

auth cookie是HttpOnly,因此angular无法读取它。但由于cookie是在请求头中设置的,API(.NET)方法应该将其视为已验证,而不是。我缺了什么吗?

C#表单身份验证.用于SSO的ASPXAUTH Cookie

缺少一些信息来确保正确回答这个问题,但我认为这与同源政策有关。您必须明确设置iFrame的来源,才能使您的cookie不会被识别为跨站点请求。因此ASP.net不会应用。您的源http标头必须设置为有效的源和引用人。

也请看一下这个问题。它简要解释了同源政策。