问题标签 [logout]
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.
c# - 如何结束用户会话并确保用户已注销?
我是 .aspx 的新手,现在的问题是因为我正在做一个启用 Web 的项目,所以我有这个用户的登录信息。我拖放登录模板,然后使用
Session["Authentication"] = username.Tostring();
存储当前登录用户的信息等。现在我什至在右上角使用了一个超链接“注销”,然后将其转移到登录页面。(如果这是错误的转移方式,请告诉我,我正在通过互联网学习)..
现在,如果在运行网络时,我可以轻松登录,但是当我通过超链接“注销”注销时,它会再次将我带到登录页面,但如果我按下浏览器的后退按钮,它会再次将控制权转移到数据页面,我可以再次执行数据操作。
我用这个
Session["Authenticate"] = null
在登录页面的页面加载时,只有在登录按钮单击用户才能再次输入
Session["Authenticate"] = username.Tostring();
然后我在数据页面的每个页面加载时使用了检查
这没有解决我的问题,请任何人提供提示或链接或提示以改进我的注销方式?我在没有任何.net或aspx知识的情况下策划了这个项目,我还在学习一切,请提前解决我的疑虑。
facebook - Facebook OAuth2 注销不会删除 fb_ cookie
这曾经有效,所以我不确定出了什么问题。用户可以正常登录 Facebook。注销是问题所在。
我通过将用户重定向到 Facebook 注销 php 脚本来注销用户。$facebook->getLogoutUrl();
当用户单击该链接时,他们将退出 Facebook 页面。然而,当他们被引导回我的网站时,我注意到 fb_ cookie 仍然存在。PHP SDK 仍然返回用户 fb 会话详细信息。奇怪的是 www.facebook.com 显示我已经退出 Facebook。
这里可能出了什么问题?谢谢,我很难过:(。
asp.net-mvc - 打开多个选项卡的自动注销
我们已经实现了一个类似于另一个 SO 帖子中描述的系统。基本上,如果用户在 14 分钟内没有做任何事情,我们会提示他们将被注销。如果他们点击“让我保持登录”,我们会发出一个 ajax 请求以保持他们的会话处于活动状态,否则,他们会在一分钟后被重定向到注销页面。
它运行良好,并且与 mint.com 和 bankofamerica.com 等网站使用的类似系统一致。唯一的问题是我们的应用程序的用户倾向于打开多个选项卡来来回引用不同的数据。所以问题是他们可能正在一个选项卡中积极工作,但随后另一个选项卡超时并将它们注销。这会导致用户意外的会话超时。顺便说一句,mint.com 也有同样的问题。
所以我想知道是否有人有任何想法来解决这个问题?
我有一个想法,每个请求都可以设置一个“上次活动时间”cookie。在自动注销时,服务器可以检查最后一次活动时间,如果它是相对较新的,请避免将它们注销。手动注销当然会忽略此 cookie,因此如果用户想要注销,他可以随时这样做。但是,我担心这可能会暴露某种我目前无法看到的安全风险。想法?
facebook - 用于 Open Graph 的 Facebook JS SDK:注销不起作用!
出于某种原因,当我打电话时FB.logout();
,用户实际上并没有退出 Facebook。
为什么会这样?没有 js 错误被抛出,我可以在代码通过 SDK 运行时单步执行它......它只是没有成功注销。
php - 注销后防止显示以前的页面
我正在使用 PHP 应用程序,但我遇到了麻烦,事实上,当用户注销并在注销浏览器的后退按钮后按下时,他可以看到上一页,就好像会话没有被破坏一样:((我有尝试了我在这里和网上找到的所有东西,但它不起作用:'(
我可以禁用后退按钮吗?
php - 注销哈希,它们是如何处理的?
注销哈希通常在 php 中处理的方式是什么?
在很多网站上,通常都有注销哈希来确认注销的用户是正确的用户,这通常是如何处理的?
例子
nil4ytwojytjwoytjwy5tw5是哈希
只是我的研究的更新,以便其他人可以看到它是如何工作的。
我发现这种类型的攻击主要用于 xero 字节图像和 iframe 本身。
如果您登录了站点 A 并且还浏览了站点 B,站点 B 可以放置一个图像标签:
并且因为请求实际上来自合法登录用户,所以请求被处理。
通过在重要的表单中添加验证值,例如转账、注销等,黑客无法获取该值,因此请求不会被执行!
谢谢你的帮助
java - 如何从 Java EE 容器管理的安全性中注销?
我在 websphere 7.0 中工作。我使用来自应用程序服务器的安全性。我想删除与用户的关联,因此在访问安全资源之前将用户重定向到登录页面(并且 request.getUserPrincipal() 返回 null)。
我尝试:
request.getSession().invalidate();
但用户主体仍然关联。
我怎样才能删除该关联?
delphi - Delphi:注销应用程序时表单无法释放时该怎么办
我正在使用 Delphi (7-2010) 并试图找出一种在释放应用程序形式的同时处理异常的好方法。该应用程序有多个由 Application 对象拥有的表单。当用户注销时,我需要释放所有现有表单,以便不维护用户状态,然后为下一个登录用户显示登录对话框。
有时,尝试释放其中一个表单时会发生异常。这将表单留在内存中,但处于未知/不可用状态,因此我无法为下一个用户重新使用表单,也无法将其从内存中删除。因为表单归应用程序所有,所以我不能直接为下一个用户创建表单的新版本,因为它会导致 VCL 出现“名为 MyForm 的组件已存在”错误,我有点反感无论如何都要在内存中拥有旧的表单实例。
我想看看其他人在这种情况下会怎么做。这里有一些想法:
- 当您遇到这些异常时终止应用程序,因此您一定要擦干净。用户无论如何都要注销,所以他们很可能已经完成了该应用程序。如果需要,可以选择重新启动应用程序。
- 使表单不属于应用程序,因此您可以创建它们的多个实例,并确保至少隐藏任何不可释放/损坏的表单。
- 动态生成每个表单的名称,或者将其设置为空白,因此永远不会有重复的名称,也不会出现来自 VCL 的“已经存在”错误。
- 将应用程序编写得如此出色,以至于在释放对象时永远不会出现异常(不切实际 - 我需要针对意外错误的应急计划)。
我的解决方案是上述最初的想法之一。我在释放表单的循环周围添加了一个 try/except 块,如果出现异常,我将向用户显示错误消息而不引发它,然后调用 ExitProcess(0) 以立即终止应用程序。
jsf - javax.faces.application.ViewExpiredException:无法恢复视图
我编写了具有容器管理安全性的简单应用程序。问题是当我登录并打开另一个我注销的页面时,然后我回到第一页并单击任何链接等或刷新页面时出现此异常。我想这是正常的(或者可能不是:))因为我注销并且会话被破坏了。我应该怎么做才能将用户重定向到例如 index.xhtml 或 login.xhtml 并避免他看到该错误页面/消息?
换句话说,我如何在注销后自动将其他页面重定向到索引/登录页面?
这里是:
java - session.invalidate() 的奇怪问题
我在登录和退出时遇到奇怪的问题。我已经实现了基于容器的安全性。我的所有页面(通过template.xhtml
)上都有登录/注销链接,这些链接是基于支持 bean 布尔属性(它实际上是方法isLoggedIn()
)呈现或不呈现的。同样在支持 bean 中,我有方法 logout,它是 Logout 链接的操作(它是h:commandLink
)。注销方法返回String
通过隐式 JSF 2.0 导航重定向到登录页面。现在,当我部署应用程序时,我浏览到它显示的页面index.xhtml
。从那里我去登录页面。我把我的用户名/密码点击登录,它让我登录。但是现在我点击注销,它调用了提到的支持 bean 注销方法,它调用了这个:
现在单击注销后,当我再次输入用户名/密码并单击登录时,它会将我重定向回登录页面。但是后来发生了奇怪的事情,因为它显示我的index.xhtml
但我没有登录。我必须再次进入登录页面,再次重新输入凭据才能最终登录。这仅在我使用session.invalidate()
支持 beanlogout()
方法时发生。当我使用request.logout()
一切正常。有什么问题?
已编辑: isLoggedIn 看起来像这样,但我认为这不是问题,因为我创建了过滤器,当我尝试浏览登录页面时,它会将我(仅当我登录时)重定向到 index.xhtml。它不会发生。
编辑:这是考虑http标头的场景:我请求login.xhtml:
回复:
暂时移动,以便浏览器发出另一个请求:
回复:
我填写用户名/密码并点击登录:
回复:
它被重定向到 index.xhtml:
回复:
再次重定向,因为我有过滤器切换到 https-http,反之亦然(我只想要 https 中的 login.xhtml):
回复:
现在我已成功登录,呈现注销链接意味着支持 bean isLoggedIn 返回 true。现在我单击 Logout,它在支持 bean 的 logout() 方法中调用 session.invalidate():
回复:
重定向到登录页面注销返回字符串“/ssl/login?faces-redirect=true”所以我们去那里:
回复:
另一个重定向,登录页面应该在 https 中(过滤器正在工作:)):
回复:
所以这是正常的事件流程。现在异常:) 我已经在登录页面,所以我重新输入用户名/密码并单击登录:
回复:
重定向到索引:
回复:
再次为 index.xhtml 过滤重定向到 http:
回复:
此时Logout链接没有渲染,说明我们没有登录?作为响应,有 set-cookie,这是否意味着服务器将我注销?再次进入登录页面后,它从顶部开始。我还可以插入与正常登录和异常登录情况略有不同的服务器日志。还有关于 Expires 的回应,为什么是 1970 年 1 月?我真的很困惑。