问题标签 [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 回答
884 浏览

asp.net - 防止在 asp.net MVC 4 应用程序中多次登录

系统一次需要单个用户登录。如果同时尝试多次登录,则用户会被阻止。我使用了 Cookie 身份验证,它将从客户端浏览器进行管理。

登录代码:

我正在使用他们的 IP 地址保存每个用户登录,以检查用户多次登录。

登录后它重定向到主控制器,我从上面提到的数据库表 Loginsrepository 中检查了多个登录逻辑:

以上方法:

它不能正常工作。即使多个同时登录,它也会在登录后保持真实。我已经用谷歌搜索并尝试了很多,但我没有得到任何解决方案。

0 投票
0 回答
253 浏览

azure-active-directory - OWIN 身份验证 cookie 是否容易受到攻击?

我有托管 Azure 并由 Azure AD 保护的 MVC 应用程序。我们使用 OWIN 中间件 cookie 身份验证和 openidconnect 方法进行 Azure AD 身份验证。我们有以下观察结果,这似乎是安全漏洞。

1) 在 chrome 浏览器中访问应用程序。Azure AD 身份验证重定向后,应用程序加载正常。至此,OWIN 会创建一个名为“.AspNet.Cookies”的身份验证 cookie,它在内存 cookie 中,这意味着一旦关闭浏览器,cookie 就会丢失。

2)现在复制cookie“.AspNet.Cookies”并关闭浏览器。内存中的 cookie 被删除。但是,如果我们通过附加 cookie 向应用程序发起请求(使用 fiddler 的代理请求),则服务器接受 cookie 并加载应用程序。

这意味着,从一个浏览器会话生成的 cookie 可以与另一个浏览器会话重用。

这看起来像一个安全漏洞。有没有办法解决这个问题。或者我们缺少 Azure AD 上的任何设置?

任何输入都受到高度赞赏。

谢谢,马杜

0 投票
3 回答
2563 浏览

c# - .net core 2.0 cookie 身份验证在尝试通过 https 访问时陷入无限重定向循环

我刚刚将我的代码移动到使用 https 的 QA 环境中,而在 Dev 中工作的内容在 QA 中不起作用,因为浏览器陷入无限重定向循环。我们的负载均衡器强制使用 https,因此当登录重定向发生在代码中时,由于某种原因它试图重定向到 http 而不是 https,负载均衡器会停止它并再次添加 https,这会导致无限循环。我的问题是为什么这段代码不只是重定向到 https,路径在ConfigureServices()方法中是相对的。我在 fiddler 中查看过它,它确实为使用 http 而不是 https 的重定向添加了 FQDN。

我需要在此处添加一些属性以允许 https 重定向吗?

谢谢。

0 投票
1 回答
394 浏览

model-view-controller - Asp.Net MVC Core 2 - 共享身份验证 cookie

我在 localhost 下运行了多个应用程序,最终将部署在一个域名下,例如https://myapp.com/

应用程序将如下所示:

https://myapp.com/security
https://myapp.com/app1
https://myapp.com/app2

应用架构

当用户访问 app1 时,它会在内部使用安全应用程序登录他。我正在使用 cookie 身份验证。现在,当用户移动到 app2 时,我希望 app2 使用 app1 创建的 cookie 并且不再要求进行身份验证。

启动.cs:

0 投票
0 回答
62 浏览

javascript - 在 ExpireTimeSpan 上自动注销网页 Aurelia MVC5 身份验证

我有一个带有 Aurelia SPA 的 MVC5“.Net Framework 4.6.2”网络服务器,它工作得非常好。我想要做的是扩展我的身份验证以在一段时间不活动后自动注销用户。

使用 CookieAuthenticationOptions 设置如下

发生的情况是,在达到 ExpireTimeSpan 后,用户不再经过身份验证,这是预期的,但他们不会自动重定向到我需要发生的登录路径。

我有如下所示的基本启动类,但 cookie“.AspNet.ApplicationCookie”永不过期,它设置为 1969-12-31T23:59:59.000Z。

有人可以告诉我我在这里缺少什么吗?

先感谢您!

0 投票
0 回答
71 浏览

c# - 使用模型在 POST 期间 ASP.Net Cookie 身份验证到期

我有一个使用 cookie 身份验证的 ASP.net 应用程序,当 cookie 过期并需要重新验证时,它将返回 URL 传递给我的身份验证控制器。重新验证后,控制器重定向到返回 url 参数作为 GET 的位置。问题是如果在用户执行 POST 时发生重新验证,控制器将重定向到 GET 函数(如果可用),我不希望发生这种情况。此外,某些操作会在 GET 和 POST 上将模型发送到控制器,当重新验证发生时,模型会丢失。

我试图覆盖 Cookie 身份验证选项中的提供程序,就像这样,但这仅在有查询参数而不是模型对象时才有帮助。

0 投票
0 回答
163 浏览

asp.net-mvc - 带有 MVC 页面请求的承载认证方案

我正在使用不记名身份验证方案来保护我的 webApp,该 webApp 使用 angularjs 作为前端,Asp.net webApi 作为后端,它对我很有用。我修改了 $http 服务以添加通用身份验证标头“JWT 令牌”。现在,使用 aspnet MVC 控制器-视图的 Web 项目中添加了新部件。现在,如果 http 请求是“页面请求”而不是 ajax 请求,则授权标头永远不会添加到请求标头中。如果请求是 PAGE REQUEST,我需要一些机制在授权标头中注入 JWT 令牌有什么建议吗?谢谢!!

0 投票
0 回答
59 浏览

c# - 修改 ASP.NET OWIN 管道中的传入请求

我们有一个基于静态前端的应用程序和一个托管在单独子域下的 API(例如 web.theapp.com 与 api.theapp.com)。我们最近实现了一个基于 Azure Blob 存储的文档管理组件,API 中包含自定义元数据。下载文件时,我们希望用户访问 API(用于授权检查等),然后被给予/重定向到具有短期 SAS 令牌的 blob 存储 URL。我们已经“完成”了 API 部分,因为我们可以接受请求、执行所有必需的访问检查、创建 SAS 并生成文件的 URL,然后重定向到那里。

但是:对于 API 中的身份验证,当前使用 Bearer 令牌,这显然不适用于通过单击链接产生的 GET 请求。

这类问题有没有好的“goto”解决方案?

我们一直在考虑创建一个页面,上面写着“您的文件在 3...2...1... 内下载”,就像老式托管服务一样,但这感觉有点俗气。我们还考虑添加某种 cookie 方案,因此 API 可以接受使用不记名令牌或 cookie 进行身份验证,但我们未能找到有关如何配置 cookie 身份验证的信息(相关技术堆栈:Azure AD OAuth2 和 ASP .NET Web API 2)。

这类问题有没有好的模式?

0 投票
1 回答
1095 浏览

cookies - ASP.NET Core Razor Pages Cookie Authentication 登录成功后重定向到登录页面

我按照文章Use cookie authentication without ASP.NET Core Identity并从2.x/Cookies下载了示例。

在 VS 2017 中运行示例。按照文档和代码(受保护)中的指示打开“联系人”页面,使用简单字符串比较在代码中验证的凭据登录,如果已调试,则登录,这意味着它添加了用户主体及其声明,但重定向回登录页面而不是联系页面。

配置服务:

配置

验证

然后我重定向到联系人页面,但又回到了登录页面。

0 投票
1 回答
307 浏览

asp.net-mvc - 使用 cookie 进行不记名令牌身份验证

我想使用 Cookie 在我的 asp.net mvc 应用程序中存储承载令牌,并且我希望每个请求都检查 Cookie 以进行客户端身份验证(我不想在前端为每个请求添加“Authentication”标头) . 我该如何实施?谢谢你。