问题标签 [cookie-authentication]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
542 浏览

c# - 使用 asp.net 核心 cookie 身份验证注销后防止自动 Windows 身份验证登录

我正在尝试使用 cookie 身份验证作为默认方案来计算和缓存 Windows 用户的声明。下面是我为此目的使用的帐户控制器。

这在登录时效果很好。但是,注销过程似乎效果不佳。在我从浏览器为路由生成 HTTP POST 后/account/logout,cookie 在浏览器中被正确清除。

但是,在刷新时,它会自动对用户进行身份验证,而无需点击登录端点。使用显式删除 cookieHttpContext.Response.Cookies.Delete(".AspNetCore.Cookies");也无济于事。我究竟做错了什么?

0 投票
2 回答
76 浏览

javascript - 浏览器缓存 API 不适用于 cookie 身份验证服务

我正在尝试浏览器缓存 API 机制,但是要缓存的 api 正在使用 cookie 身份验证。并且收到“未授权 401”错误消息。当我从 cache.add(apiurl) 调用时,我怀疑应该为所有 api 请求发送的 http cookie 没有发送

0 投票
1 回答
2082 浏览

c# - ASP.Net Core Cookie 身份验证不是持久的

我开始使用ASP.Net Core 2.2开发网站。我正在通过自定义 cookie 身份验证(不是身份)来实现登录/注销。

请查看或克隆repo

...或阅读以下代码片段。

这是中的代码Startup.cs

这是Login操作代码:

Cookie 已按预期设置。我有一个.AspNetCore.Cookies有效期为 10 天后的 cookie。但大约 30 分钟后,用户退出。即使在浏览器关闭后,如何强制经过身份验证的用户保持登录状态?

0 投票
0 回答
98 浏览

asp.net-core - Asp.Net Core 2.2 微服务架构中的Cookie认证

我有 2 个服务,一个 Web 前端和另一个后端。身份验证在包括 JWT、Cookie、Session 等在内的后端完成。CookieAuthenticationEvents在这种情况下如何工作,特别是关于OnRedirect<foo>?它们是与 Web 前端相关的事件吗?后端如何将后端传递OnRedirect<foo>给前端服务,然后返回到客户端浏览器以重定向到指定的 URL?

0 投票
2 回答
268 浏览

c# - 如何使 cookie 身份验证方案生成相对登录 url 而不是绝对登录 url?

当 ASP.NET Core 身份验证方案重定向到登录页面时,它会将绝对 URL 发送到浏览器。

有可能使这个网址相对吗?

0 投票
0 回答
18 浏览

asp.net-mvc - 如何拥有一个带有 mvc 控制器的 cookie 身份验证和 API 控制器的令牌身份验证的单个 asp.net mvc 项目

我们有一个现有的 asp.net Mvc 5 应用程序,它通过 OAuth2 提供商(如 google 和 microsoft)进行外部登录。我们为此使用 CookieAuthenticatoin。

现在我们需要将 ApiContoller 添加到同一个应用程序中。

有什么方法可以使用相同的 cookie 来验证 ApiControllers。我可以在启动文件中同时配置 cookie 身份验证和令牌身份验证吗?

0 投票
0 回答
190 浏览

c# - 如何在到期前延长 OWIN Cookie?

我正在尝试处理 ASP.net MVC 5,超时会话场景。这是我正在使用的代码,它也适用于会话到期。

每当向用户显示会话到期的弹出窗口时,我都必须扩展/覆盖此到期。是否有任何解决方法可以在实际到期之前覆盖或延长超时。我需要一个可以跨所有应用程序集成的解决方案,也许 1 ajax 集中调用服务器来执行此操作或任何其他选项(如果有)?

谢谢。

0 投票
0 回答
224 浏览

c# - 浏览器不保存身份验证cookie

我的 webapi 中有一个用户信息端点,它受[Authorize]cookie 身份验证保护。如果指定的 cookie 不存在,则用户将被重定向到/account/login,如下所示。

请注意,我没有在SignInAsync请求中指定任何方案名称。由于我的默认身份验证方案是 cookie 方案,我希望在此处使用它。之后重定向响应被发送到浏览器(在这种情况下,returnUrl将是用户信息端点。Windows 身份验证(在浏览器中带有提示),并且重定向到用户信息端点工作得很好。

问题是发送到浏览器的 cookie 没有保存在浏览器中,因此没有与后续请求一起发送。存储在 cookie 中的声明对于用户信息端点是必不可少的。请注意,cookie 在浏览器的响应头中可见,并且大小远低于 4096 字节,这通常是 cookie 大小的上限。因此,我不清楚为什么浏览器不保存 cookie。

有什么我想念的吗?

更新:我的错,原来是域名拼写错误。由于 cookie 是同站点 cookie,cookie 既不会为应用程序保存,也不会随后续请求一起发送。

0 投票
1 回答
644 浏览

asp.net - 尝试使用带有 ASP.NET 身份的 cookie 身份验证登录时获取 HTTP 500

ASP.NET 核心 2.2

这个问题我纠结了很久...

每当我尝试通过 HttpContext 进行与登录或注销相关的任何操作时,都会收到 HTTP 500 错误。

我已经搭建了身份并完成了我需要的更改,因此我或多或少地一对一地使用了微软的 GitHub 代码。


我正在执行的操作已完成(登录/注销、更改密码)RedirectToPage()调用仅返回 HTTP 500 错误。

我怀疑它必须重新加载太快而不等待 HttpContext 登录或验证?

我已经设法使登录工作而不是RedirectToPage()使用Response.Redirect(returnUrl)

这是我的Startup.cs

更改密码的剃刀页面示例:(正确输入正确的旧密码和新密码后,我收到 HTTP 500 错误)

}

0 投票
0 回答
457 浏览

c# - 共享 cookie 身份验证未在服务器上进行身份验证

在将两个共享身份验证 cookie 的应用程序(一个 .net 4.6 另一个 .net core 2.2)部署到网络场环境时,“接收”应用程序不会进行身份验证。我们有一个非常大的 Web 表单应用程序,我们正试图最终迁移到 .net 核心,所以现在我们正在处理 Web 表单应用程序中的身份验证,并尝试与 .net 核心应用程序共享该身份验证。我们已将 Web 表单应用程序中的身份验证升级为基于 OWIN/Katana cookie 的身份验证。这些应用程序部署在同一站点 (server.com/app1 server.com/app2) 下的同一服务器上。在本地一切正常,您登录一个并移动到另一个,您仍然处于登录状态。当我们部署到负载平衡的服务器时,.net 核心应用程序接收到 cookie,但 isAuthenticated 是错误的。

我已经能够手动解密 .net 核心应用程序中的 cookie,它能够打印出其中包含的声明,但 IsAuthenticated 标志仍然是错误的。我尝试更改 cookie 域、cookie 路径、安全策略和身份验证类型,但没有成功。

Web 表单应用 Startup.cs:

.net 核心应用 Startup.cs:

网页表单登录代码:

没有抛出任何错误,所以很难弄清楚问题是什么。我希望它尊重身份验证 cookie,因为它在本地运行,但用户身份为空且 isAuthenticated 为假。