当前位置: 首页 > 知识库问答 >
问题:

专用应用程序的OAuth2流程和最佳实践

万知
2023-03-14

由于有多个实现提供了OAuth2功能,我们目前正在研究几个可用的选项。(例如Keycloak和ORY Hydra)。我们的选择取决于我们要做多少工作,改变应用程序的现有结构,如何处理数据库中的用户。但无论我们选择哪种实现方式,我们都将面临类似的问题。

问题

>

  • react应用程序如何处理登录过程和令牌存储?

    这同样适用于刷新令牌流。因为对于我自己的应用程序,我必须设置cookie,对于第三方,这必须直接从OAuth服务器

    我阅读/研究过的资源:

    https://gist.github.com/mziwisky/10079157

    我目前正在尝试钥匙斗篷和奥里九头蛇,弄清楚哪一个更适合我们的需要。

    提前谢谢大家!

  • 共有1个答案

    温嘉玉
    2023-03-14
    1. 您不必显示“同意”屏幕。下面是一个React应用程序使用授权代码授权进行身份验证的示例:https://fusionauth.io/blog/2020/03/10/securely-implement-oauth-in-React(完全公开,这是在我雇主的站点上,但可以与任何符合OAuth2的身份服务器一起工作)。

    简单的回答是,您最好避免隐式授予,并将访问和刷新令牌存储在某些中间件中,而不是浏览器中。链接中的示例使用100行express服务器并将这些令牌存储在会话中。

    我写了一些关于PKCE的文章。节选:

     类似资料:
    • 我正在构建一个全栈 Web 应用程序。我正在使用 Vue.js作为前端,Spring启动用于后端,将 PostgreSQL docker 容器用于数据库。但是,我很好奇,一旦我完成了Web应用程序的开发,我应该在哪里以及如何部署它。 我在下面列出了我的问题: < li >我应该在哪里部署我的全栈应用程序,如AWS、GCP、Hiroku或任何其他平台。 < li >部署我的前端、后端和数据库的最佳实

    • 所以我有一个Web应用程序,其中前端是用React编写的,后端是用NodeJs/NestJ编写的,并且处于部署应用程序的阶段。我有一个运行Ubuntu的Linode服务器,我最初的想法是安装Docker 那么,这是设置应用程序的好方法吗?这种设置有什么利弊吗?除了因为需要服务器数量而定价之外?或者还有其他更有益的选择吗? 提前致谢。

    • 我有一个用Tapestry5(javawebframework)和Hibernate制作的web应用程序。现在我尝试添加乐观锁定。所以我添加了一个版本属性,乐观的锁定可以工作,所以这很容易,很快。 但是,由于我的web应用程序使用“每个请求一个会话”模式,我不确定利用这种乐观锁定的最佳方式是什么。 发生了什么: 用户 A 打开包含表单的页面,该表单加载了来自实体 A(版本 1)的值。 UserB打

    • 问题内容: 我们有一个大型Angularjs 1.6应用程序,该应用程序的$ rootscope分散在整个应用程序的过滤器,服务,路由等200多个位置中。因此需要对其进行重构,但是我不确定如何知道何时将其删除。什么时候在应用程序中使用$ rootscope是最佳实践? 我已经阅读了所有内容,从没读过,到用它来存储变量,我都以为是在控制器之间共享数据。从那以后,我读到最好在这种用例中使用工厂/服务,

    • 我不是问这是否可能,我知道这是可能的,但我想知道什么是最好的方式提供一个rest服务,同时在我的应用程序中有一个前端。 我正在开发一个Spring Boot应用程序,我目前有一个调用jsp页面的控制器,还有一个单独的RestController。我希望能够用一个Android应用来消费它。 那么在我的应用程序中同时拥有一个控制器和一个单独的Restcontroller是正确的吗?例如,将从/api

    • 问题内容: 哪个是Java的最佳框架?我在寻找类似于Symfony的php和Ruby-Rails的Ruby吗?我什至不知道Java是否存在这样的东西。 问题答案: 有许多很棒的Java Web框架,但是如果您要寻找与Rails类似的东西,请查看Grails。它使用动态语言Groovy,但是使用Java VM。 查看他们的快速入门,确定它是否是您想要的。