问题标签 [appauth]

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 回答
1085 浏览

oauth - iOS 11 AppAuth 处理重定向的重定向 URI

在我的 iOS 应用程序(特别是 iOS 11 )上使用AppAuth (v 0.90.0)进行 Google OAuth 身份验证时,会发生以下情况:

  1. 使用重定向 URI 在 iOS 客户端上启动 Google 身份验证http://myproduct.com/oauth-redirect。因为客户端 ID 是 Web 应用程序的 ID,所以我无法指定自定义 URL。
  2. AppAuth 在客户端启动 SFAuthenticationSession,系统提示我允许登录。选择继续。(https://github.com/openid/AppAuth-iOS/blob/0.90.0/Source/iOS/OIDAuthorizationUICoordinatorIOS.m#L91-L95
  3. http://myproduct.com/oauth-redirect重定向到自定义 URL myproduct://auth,并且 SFAuthenticationSession 完成块使用回调 URL 运行myproduct://auth
  4. 当 AppAuth 恢复身份验证流程时,它会检查原始 URL 是否与上一步中的回调 URL 相同:https ://github.com/openid/AppAuth-iOS/blob/0.90.0/Source/OIDAuthorizationService.m #L108-L110
  5. 因为http://myproduct.com/oauth-redirectmyproduct://auth不同,所以流动停止。

请注意,我正在使用 Web 应用程序 clientID,以便我可以在服务器端执行令牌交换。

在以前的 AppAuth 版本中,这是可能的,因为我能够resumeAuthorizationFlowWithURL直接使用更新后的 URL 进行调用。

有没有办法支持这个用例而无需更新 AppAuth?

0 投票
1 回答
1161 浏览

android - 指示自定义选项卡不建议身份验证存储

我有一个 Android 应用程序,它使用 AppAuth 打开一个 OAUth 网页以对用户进行身份验证。当用户通过身份验证后,chrome 浏览器会建议用户在浏览器中存储凭据(用户/密码)。如果可能,我想禁用此行为。

我已经搜索并阅读了文档,但没有找到任何关于指示浏览器不建议自动完成(存储)的可能性(或相反)的信息。

更改登录页面不是一种选择。我最好希望将一些信息(标志)传递给意图中的 chrome 选项卡。

所有帮助将不胜感激。

0 投票
1 回答
2994 浏览

java - Java包不是公共的,不能在包外访问

嗨,我不是专业的 Java 开发人员,但我正在尝试编写一个 android 本机组件以响应本机,但在编写它时我面临以下错误日志。

知道如何导入它吗?或者有什么解决方法吗?

您可以从以下 URL 检查此库: https ://github.com/openid/AppAuth-Android/blob/master/library/java/net/openid/appauth/AuthorizationServiceConfiguration.java#L102

0 投票
1 回答
512 浏览

android - Google SignIn 和 OpenId Appauth 之间的主要区别是什么

我曾经通过添加谷歌登录按钮并执行谷歌给出的相同步骤来进行谷歌登录,我喜欢这个流程。

但是我的公司要求我通过OpenId Appauth进行 google 登录,他们担心的是,如果我们将使用OpenId Appauth,那么它将支持所有社交登录,例如 Google、Facebook 和 LinkedIn。有没有人知道实际的区别是什么,使用OpenId Appauth进行谷歌登录是否很好。

0 投票
1 回答
195 浏览

android - AppAuth 重新登录

经过一番反复,我终于让它工作了,但我不得不使用 0.2.0 版,因为我遵循了自述文件中提供的谷歌指南。

无论如何,我正在努力处理 oAuth 令牌超时时会发生的事情。然后它需要再次打开浏览器才能登录,或者是否有可用的后台进程,因为它会自动重定向回应用程序,因为服务器会记住用户,因此不需要新的用户名/密码输入?

我得到一个这样的刷新令牌:

那工作正常,但在用户空闲一段时间后,它就无法工作了。如何正确处理?

0 投票
0 回答
404 浏览

android - 在应用程序身份验证中获取 SSL 异常

尝试点击 App auth url 时出现以下错误。 E/AppAuth: Network error检索发现文档时。

javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.

0 投票
1 回答
920 浏览

android - AppAuth Android https 方案 - 与 Firefox 和其他浏览器一起使用?

我想知道带有 https 方案的 AppAuth 是否适用于 Firefox 和其他浏览器。

我有一个 CAS 5.2 作为 OAuth Idp,但 idp 不是问题,所以我不会在这里发布设置。

我正在尝试制作一个可以与我的 Idp 一起使用的演示 AppAuth 应用程序,我正在使用https://github.com/openid/AppAuth-Android中的演示进行设置。

我使用的是https redirect_uri 架构,因为此 OAuth Idp 不仅适用于移动设备。

问题是,我只能使 OAuth 在Chrome(和自定义选项卡版本)和三星浏览器(和自定义选项卡版本)中工作。

对于我测试过的其他浏览器(Opera、Dophin、Firefox),我只是盯着我的 redirect_uri 并拒绝返回应用程序 [ https://www.example.net/test_oauth/index.php ](注意:我已经提示用户单击链接进行重定向)

我希望它不仅仅适用于 Chrome 和三星浏览器,如果它可以与 Firefox 自定义选项卡等一起使用,那就太好了!

设置与 AppAuth Demo 基本相同,但仅强制客户端密码(用于测试目的),以及以下配置

auth_config.json:

AndroidManifest.xml

谢谢!

0 投票
2 回答
1674 浏览

android - Chrome 自定义选项卡有时会在登录期间卡在空白屏幕

我们最近将 AppAuth 集成到我们的应用程序中以自动化 OAuth2 授权代码流。当用户想要登录时,他首先被重定向到我们的身份验证服务器,在那里他继续登录,然后被重定向回应用程序。

我们使用 chrome-custom-tabs 来打开登录页面 (AppAuth)。问题是它有时会卡在空白屏幕上(chrome 选项卡仅显示空白页面而没有呈现的站点或重定向)。当用户已经在浏览器中有会话时会发生这种情况,因此选项卡应自动关闭并将用户重定向回应用程序(经过身份验证)。它的行为不一致,我们有时只会遇到这个问题(~50/50)。

我很高兴添加一些代码,但不知道从哪里开始(试图避免文字墙)。是否存在已知问题或警告?

我们尝试按照此处所述切换上下文,但一直遇到同样的问题。

0 投票
1 回答
1546 浏览

android - 尝试在 UI 线程上运行 okhttp 响应代码时出现 NetworkOnMainThreadException

在我的 Android 应用程序中,我使用AppAuth通过 OpenID 连接端点对用户进行身份验证,所以我正在执行一堆异步调用,当最后一个调用返回时,我使用 okhttp 来获得最终结果,我想要在我的活动的 UI 中显示它,如下所示:

但是当我尝试更新我的文本视图时,我得到了以下异常:

android.os.NetworkOnMainThreadException

当我尝试删除 时runOnUiThread,我得到另一个异常,上面写着:“只有创建视图层次结构的原始线程才能触及它的视图”

我不明白。我该怎么办?

0 投票
1 回答
430 浏览

oauth - 带有证明密钥令牌请求的授权代码导致无效的客户端响应

我目前正在评估 AppAuth ( https://appauth.io/ ) 以在本机移动应用程序中与当前使用 IdentityServer3 的 STS 一起使用。我已经像这样配置了一个客户端:

初始授权请求成功,IdentityServer3 返回授权码。现在我尝试了后续的令牌请求,这导致 HTTP 400 出现 invalid_client 错误以及 IdentityServer3 日志中的以下消息:

我是否理解错误或为什么 IdentityServer3 不返回访问令牌?