问题标签 [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 投票
1 回答
1338 浏览

ios - RNAppAuth,iOS 构建失败,未知类型名称“命名空间”,react-native-app-auth

我正在尝试将react-native-app-authExpo 添加到现有但非常新鲜的项目中。我正在按照您的设置指南进行操作,因此请执行以下步骤:

  • yarn add react-native-app-auth@2.2.0 --dev
  • 添加pod 'AppAuth', '>= 0.91'
  • cd iso && pod install
  • react-native link(编辑:从项目的根路径)

我得到:

看起来不错。

然后,当我在 XCode 中构建时,出现以下错误:

图片

在网上搜索后,我发现它可能与编译器连接,我使用 Objective-C++ 对其进行了更改:

图片

现在我得到更多错误:

图片

我也试过:

  • 将目标版本更改为9.0
  • 再做一次
  • 祈祷

没有任何帮助:( Xcode 9.3 版 (9E145)

应用程序.js

包.js

更新:我刚刚按照指南设置了一个新的 Expo 应用程序并且有完全相同的错误。

0 投票
0 回答
366 浏览

oauth-2.0 - Doorkeeper如何为PKCE客户端实现刷新token

我正在使用最新版本的 Doorkeeper(这是一个很棒的宝石)并启用了 PKCE。它适用于授权流程(我使用授权码)。但是,当我稍后尝试刷新令牌时,我得到 401。

参数

code_challange客户端是使用 AppAuth 的移动应用程序,如您在上面看到的,刷新令牌时不会发送。正如我们在这里所读到的,PKCE 的创建者说服务器应该允许刷新令牌而无需再次发送代码质询。gem是如何实现的?

0 投票
2 回答
687 浏览

android - AppAuth 隐式授权

我正在尝试使用AppAuth从基于 OAuth2 的服务器获取 AccessToken 。

在下面的代码重定向到浏览器进行登录之后

当我在上面的代码中使用 ReceiverActivity 从浏览器返回到应用程序时,然后在:

其他:

显现

那么,为什么我会收到此错误 {"type":0,"code":9,"errorDescription":"Response state param did not match request state"} 我需要在链接中设置一些内容?

0 投票
1 回答
755 浏览

android - AWS cognito 与 AppAuth 集成

我需要在 Cognito 用户池上为具有自托管登录/注册屏幕的移动应用程序执行授权工作流。

我已经使用本机 UI 屏幕测试了 Cognito 用户池的登录/注册,但我需要它与自托管的 Cognito 屏幕一起使用。

我想在移动端使用 AppAuth 来处理这个过程。

尚未找到示例或示例代码。请建议如何进行。

0 投票
1 回答
1015 浏览

angular - Identity Server 4 Angular Electron App 身份验证示例

我正在寻找一个从 Identity Server 4 服务器验证 Angular Electron 应用程序的好例子。

我已经成功使用 oidc-client 通过 Angular Web 应用程序连接到我的身份服务器。 https://github.com/IdentityModel/oidc-client-js

相同的实现不适用于我的 Angular Electron 应用程序,我意识到我应该使用不同的客户端库。

我已经决定将 AppAuthJs 与我的 Angular Electron 应用程序一起使用,但找不到有关如何实现此功能的示例。

帮助!

0 投票
0 回答
116 浏览

android - Android AppAuth 将密码发送到 Chrome 选项卡

我希望将 AppAuth 库合并到我的应用程序中。目前已经有一种用户登录和验证服务器的方法。应用程序 API 正在逐步淘汰,新的 API 正在逐步引入。作为其中的一部分,所有新端点都需要通过 AppAuth 进行身份验证,而旧端点仍需要通过当前登录系统进行身份验证。为此,我需要显示现有的登录屏幕,该屏幕需要一个电子邮件地址和密码。我可以使用该AuthorizationRequest.Builder setLoginHint方法将用户电子邮件地址传递给 AppAuth 库。

通过上述实现,用户需要输入两次密码,这非常麻烦。我的问题是,有没有办法将用户密码安全地传递给 AppAuth 选项卡?

0 投票
1 回答
125 浏览

react-native - OpenID 连接 + OKTA

我刚刚在 Okta 中设置了我们的第一个 OpenID 连接应用程序,分配的用户在仪表板中看不到该应用程序(尽管他们的身份验证很好)我可以知道为什么吗??openid 应用程序将出现在 okta 的仪表板中。谁能帮我。

谢谢

0 投票
0 回答
142 浏览

ios - 为 Outlook API 实施 AppAuth

Outlook API 教程使用此p2OAuth2 库进行 OAuth2 身份验证和进一步的 API 调用。但是我们可以将身份验证库更改为AppAuth-iOS吗?我一直在使用它来集成 Google 帐户,发现它非常有用且易于理解。

我尝试为 Outlook 集成 AppAuth,登录成功。之后,我不知道如何为 API 部分(即日历/邮件 API)实现相同的功能。

0 投票
0 回答
373 浏览

playframework - 使用 Keycloak 作为 Web 和移动客户端的 OIDC 服务器

我正在玩一个具有以下配置的项目:

  • Keycloak 作为 OIDC 服务器
  • 以 Pac4J 作为安全库并以 Pac4J-Play 作为接口的 Play 框架
  • 使用 AppAuth 作为 OIDC 适配器的移动 iOS 客户端

通过 Web 界面处理 API 时——一切正常。Pac4J-Play 检查活动 OIDC 配置文件的播放会话,如果不存在,用户将被重定向到 Keycloak 提供的 OIDC 登录流程。成功的身份验证将用户带回到具有正确信息的 Play 会话的 Web 界面,以便允许所有未来的 API 调用。

我在组织来自移动客户端的交互时遇到问题。AppAuth 允许正确获取访问、刷新和 id 令牌,但我不知道如何将它们与 Pac4J auth 集成。我目前正在尝试在单独的 API 调用中接受来自移动设备的令牌,并试图破解 Pac4J 来包装这些令牌,就好像它们是通过 Pac4J 获得的一样。然而,这感觉就像是一种黑客行为,并且有一些既定的做法是让这个 web/mobile/API/OIDC 以我不遵循的正确方式设置。

同一个问题的另一个问题是我是否应该为 API 和移动授权使用单独的 Keycloak 客户端。例如,通过 Keycloak 中配置的“移动”客户端获取的访问令牌是否可以与“web”Keycloak 客户端管理的调用一起使用?

谢谢

0 投票
0 回答
867 浏览

android - 使用 AppAuth-Android 和使用 IdS4 的 aspnet 核心进行身份验证

几天来,我一直在努力尝试在 aspnet 核心 api 中使用 AppAuth Android 和 IdentityServer4 实现身份验证流程。

到目前为止,我设法达到的是

  1. 创建我认为必要的服务器端并使用 Postman 进行测试
  2. 设法让 AppAuth 打开我登录的选项卡(但是成功的登录不会发送回应用程序)

这是客户端属性服务器端:

并且可以从邮递员和收到的令牌访问此客户端。

好吧,我打赌我做错了什么有趣的部分(即使我已经阅读了我能找到的所有三个示例......) - Android客户端的配置。

我添加的更改在哪里

然后我在清单中添加了一些东西(这里添加了完整的清单):

现在我已经直接在 MainActivity 中添加了所有的授权实现。

在应用程序启动时我打电话authorize()

登录屏幕在选项卡中打开,我可以添加我的凭据并登录(现在我被重定向到浏览器选项卡中的主页)。

我希望在登录完成时调用此函数,但似乎并非如此。

如果这个问题太大了,我很抱歉,但我似乎可以在配置/实现中找到错误。

我期望发生的是:

1) 应用程序启动并使用登录屏幕打开一个选项卡 2) 我登录并关闭自定义选项卡,因为我被重定向到 MainActivity 应该处理的重定向 URI,我得到了postAuthorizationIntent.