问题标签 [openid-connect]
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.
asp.net - 将 OAuth2/OpenID2 升级到 OpenID Connect
我正在使用 DotNetOpenAuth 库来管理身份验证。现在谷歌决定不再支持 OpenId2,我已经阅读了文档,但我不太了解如何迁移到 OpenId Connect。
现在我正在向 google 发送以下请求进行身份验证:
所以我想知道我是否只需要修改 openid.CreateRequest(Identifier.Parse(googleEndPoint)) 以包含REALM和Return URI以使其工作。
我正在互联网上寻找有关使用 DotNetOpenAuth lib 进行 Google 身份验证的示例,但我没有找到任何东西
authentication - OpenID Connect (OAuth2) 是否适合标准登录 + 社交登录 + 单点登录?
我必须在一组网站中实施身份验证。
该解决方案必须支持标准登录(用户和密码)、社交登录(facebook、google+、twitter)和单点登录(一旦您登录到组的网站,您就不需要登录到另一个网站)。
此外,所有这些动作都可以通过 Javascript 触发而不会导致页面刷新(使用 iframe 或其他技巧)
您知道 OpenID Connect 是否是一个不错的选择吗?是不是矫枉过正?你知道更合适的选择吗?
提前致谢
c# - 在 OwinStartup 之后为新租户添加 Owin 管道中间件
我有一个多租户应用程序,每个租户都可以为 WsFed 或 OpenIdConnect 定义自己的 ClientID、权限等。所有租户都在 OwinStartup 中注册,如下所示:
它通过 切换要使用的 STS context.Authentication.Challenge(AuthenticationType)
。这工作得很好。
问题是当新租户注册时,我如何在没有应用程序池回收的情况下访问IAppBuilder
和添加新租户?AuthenticationOptions
security - Oauth2/Openid 连接。如何撤销未知的访问/刷新令牌
在 Oauth 或 Openid Connect 中,假设攻击者获取访问或刷新令牌,并清除浏览器或应用程序的缓存。如果用户的字符串未明确知道,用户能否撤销身份提供者颁发的访问或刷新令牌?
django - Oauth2 用于授权和身份验证?
Oauth2 可以用于授权和认证吗?
据我了解,Oauth2授权消费者应用程序从提供商(例如 Facebook、Google、Twitter 等)访问用户信息。
但是 Oauth2 可以用来对用户进行身份验证吗?例如,假设我们有一个由原生移动前端和后端 api 组成的应用程序 - 可以使用 Oauth2 来验证和维护在Facebook、Google、Twitter 等提供商的授权之上用于验证和维护身份验证?
如果是,如何?例如,我们是否将身份验证令牌持久化并将其用作会话令牌?或者通过第三方提供商向“消费者”应用程序验证用户是否需要 OpenId Connect ?
azure - OpenID OWIN 身份验证和缺少用户权限
我可能处理这完全不正确,但我使用 OpenID 和 MS Azure 来验证我的用户,然后我检查以确保用户在 OpenID 中间件的通知中有一个用户帐户,如果找不到用户,我抛出一个安全异常。如何返回您无权访问此应用程序类型页面。我只是错过了钩子吗?
这是示例: https ://gist.github.com/phillipsj/3200ddda158eddac74ca
openid-connect - 拥有自己的 OpenID Connect 提供商有意义吗?
我必须在一组三个网站(相同的子域)中实现本地登录(传统邮件/密码登录)和社交登录。
因为我最终可能会发布一个供移动应用程序使用的 API,所以我正在考虑托管我自己的 OpenID 连接提供程序(使用开源解决方案)。本地登录和 API 将使用此提供程序进行身份验证。
这是一个好主意吗?任何更简单和安全的选择?
谢谢
openid-connect - 当用户对 end_session_endpoint 说“NO”时应该发生什么?
在OpenID Connect Session(问题时的草案 23)中,它指出
在注销端点处,OP 应该询问最终用户是否也想注销 OP。如果最终用户说“是”,那么 OP 必须注销最终用户。
因此,如果用户单击“是”,那么我们仍然处于 OP 领域,我们或许可以将它们带回欢迎屏幕。但是,如果用户单击“否”,则未定义行为。
我猜它会是这样的:
- 设为
state
用户在按下 RP 应用程序上的注销按钮之前所访问的最后一个已知页面。 - RP 的注销将使用令牌撤销端点销毁用户在 OP 上为 RP 拥有的任何凭据(如果 RP 需要重新同意)
- 然后它将重定向到 end_session_endpoint 传递
state
- 一旦到达 OP end_session_endpoint 用户碰巧选择“否”
- 那么用户没有从 OP 中注销。
- 然后用户被重定向回 post_logout_redirect_uri 并带有已通过的状态。
- 然后,RP 上的 post_redirect_uri 会将用户重定向回具有状态的 authentication_endpoint
- 因为用户仍然在 OP 中登录并且假设仍然存在同意,它应该将用户重定向回 RP 回调,其状态就像用户没有离开应用程序一样,但现在有一组全新的 id_token
为防止重定向循环,RP 应确保注销不需要有效身份,以防万一不再存在。否则会有一个重定向循环。
flask - 基本 Flask OpenID 连接示例
随着谷歌对 OpenID 2 的支持即将关闭,任何使用像Flask-Googleauth这样方便的库的人都必须迁移。OpenID Connect 有一个 Flask 库,称为flask-oidc。不幸的是,似乎没有任何关于如何使用它的信息。我查找了标记为flask
and的 SO 问题openid-connect
,但发现为零,因此这个问题。
以下是我汇总的 flask-oidc 的概念验证使用。它基于flask-oidc 的 app.py 文件:
按照此处所述注册我的应用程序后,这成功地将用户发送到 Google 进行身份验证,并将它们返回到http://127.0.0.1:8080/oidc_callback
,然后将它们重定向到https://127.0.0.1:8080/
,但随后将用户重定向回 Google 进行身份验证,从而创建重定向循环。
当然,我的问题很简单:如何让经过身份验证的用户看到该索引页面?
openid - OpenID4Java 到 OpenID 连接
我们在代码中使用 OpenID4Java 库。我们如何按照 Google 的建议升级到 OpenID Connect: https ://developers.google.com/accounts/docs/OpenID