在我的应用程序中,我使用jsapi实现了Google注销。
现在,我需要在我的应用程序中单击一个按钮的同时从Google登出该用户。如何使用JavaScript实现此功能,或者至少每次用户登录时它都必须询问Google登录页面。
我已经尝试过approval_prompt=force
,但是似乎没有用。
我不确定您是否使用OAuth来登录Stack Overflow,例如“使用Google登录”选项,但是当您使用此功能时,Stack
Overflow只是询问Google是否知道您是谁:
“您是Google,这个Vinesh伙计声称他是vinesh.e@gmail.com,是真的吗?”
如果您已经登录,Google会说是。如果没有,Google会说:
“等待一秒钟的堆栈溢出,我将验证这个家伙,如果他可以为他的Google帐户输入正确的密码,那就是他。”
输入Google密码后,Google会告诉Stack Overflow您是您的真实身份,然后Stack Overflow登录。
这是刚接触OAuth的开发人员有时会感到困惑的地方……Google和Stack
Overflow,Assembla,Vinesh的“非常酷”的webapp都是不同的实体,而Google对您在Vinesh凉爽的webapp上的帐户一无所知,反之反之亦然,除了用于访问个人资料信息的API所公开的内容外。
当您的用户注销时,他或她没有从Google注销,他/她正在注销您的应用程序,Stack Overflow或Assembla或任何使用Google
OAuth进行身份验证的Web应用程序。
实际上,我可以注销所有Google帐户,但仍可以登录Stack
Overflow。一旦您的应用知道用户是谁,该人便可以退出Google。不再需要Google。
话虽如此,您要执行的操作是将用户从真正不属于您的服务中注销。这样思考:作为用户,如果我用自己的Google帐户登录5种不同的服务,那么您会感到多么烦恼,那么当我第一次注销其中之一时,我必须登录到我的Gmail帐户再次因为那个应用程序开发人员决定,当我注销他的应用程序时,我也应该注销Google吗?这真的会很快变老。简而言之,您
真的不想这样做 …
话虽如此,如果您 仍然
希望将用户从Google登出,并意识到您很可能会破坏他们的工作流程,则可以通过其Google服务的一个注销按钮动态构建注销网址,然后使用img元素或脚本标签:
<script type="text/javascript"
src="https://mail.google.com/mail/u/0/?logout&hl=en" />
要么
<img src="https://mail.google.com/mail/u/0/?logout&hl=en" />
要么
window.location = "https://mail.google.com/mail/u/0/?logout&hl=en";
如果您将用户重定向到注销页面,或者从不受跨域限制的元素中调用它,则该用户将从Google中注销。
请注意,这不一定意味着用户将仅从Google 登出 您的 应用程序。:)
对于您而言,重要的是要记住,当您注销应用程序时,无需使用户重新输入密码。这就是重点!它通过Google进行身份验证,因此用户不必在使用的每个Web应用程序中一遍又一遍地输入密码。这需要一些时间来适应,但要知道,只要用户登录到Google,您的应用就不必担心用户是否是他/她所说的那个人。
使用OAuth的Google个人资料信息,我在项目中的实现方式与您相同。我尝试了您要尝试的相同操作,当人们不得不一次又一次地登录Google时,它确实开始使人们感到愤怒,因此我们停止了将他们从Google登出。:)
我有一个通过Google登录Spring Boot OAuth2的Auth Server实现。以及用于我的后端数据服务的资源服务器。我使用了JDBC令牌库。一切都很好。但我很难理解注销的实现。目前,每当用户单击注销时,我只会从浏览器本地存储中删除令牌,但会话在身份验证服务器中保持活动状态,因此我不需要再次登录。我想要的是,每当单击注销时,我都想使会话无效,并迫使他再次登录。 有什么好的方法可以做到
问题内容: 一个非常简单的要求。登录Web J2EE 6应用程序后,如何再次使用户注销? 我见过的大多数(全部?)书籍和教程都展示了如何在其应用程序中添加登录/登录错误页面,以及使用“ j_security_check”方法演示了安全主体/角色/领域等的使用-都很好。但是还不清楚如何赋予用户注销权限。确实,如何在会话超时等之后强制注销? 问题答案: 您应该使用以下方法使会话无效: 在Servlet
用户登录 在用户登录App账号时调用以下登录方法,从而保证用户是以登录身份进行咨询,是区分会话的用户的唯一标识; 游客咨询不需要调用小能login方法,小能会自动生成一个游客身份标识,在客服端游客身份的用户名显示为:“游客+4位数字”。 App完全退出(被杀掉进程), 再次进入时, 在SDK初始化之后, 如果App本身账号是登录用户, 需要重新调用小能SDK登陆接口,同步用户身份【大多是针对App
登录与注销 用户登录 在App登录的地方,调用小能的login方法,目的是传递账号信息,为客服端显示用户信息。在App被杀死之后,sdk会保持用户的登录状态,不需要再次调用登录的方法。 uid作为用户的唯一标识需要保证唯一性,username可根据需要传入手机号、昵称等信息 /** * @param uid 必填,登录用户的id, 只能输入数字、英文字母和"@._—"四种字符,长度小于等于60位
问题内容: 我应该如何向我的Django网站添加Google+ API登录? 问题答案: 首先,你必须为Google+创建OAuth凭据。 转到Google Developer Console 创建一个新项目。 转到“ API和身份验证”->“授权屏幕”,并为你的产品命名。点击“保存”。 转到“ API和身份验证”->“凭据”。在“ OAuth”下,单击“创建新的客户端ID”。添加“ http:/