首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >哪种授予类型:隐式或Auth代码(无密钥)适用于单页应用程序(SPA)?

哪种授予类型:隐式或Auth代码(无密钥)适用于单页应用程序(SPA)?
EN

Security用户
提问于 2019-07-01 09:11:53
回答 1查看 171关注 0票数 1

我浏览了多个帖子,说明隐式授予是如何构成安全风险的,以及为什么在重定向到应用程序(没有将client_secret传递给AJAX服务器)之后,应该使用AJAX请求授权服务器的auth代码授予。

现在,在2019年,没有CORS问题,因为我可以允许应用程序域上的自授权服务器。

我有以下关切

如果我使用隐式授予:

  1. 现在,隐式授予存在安全问题,因为授权服务器重定向到具有url中令牌的应用服务器。
  2. 如果我将过期时间设置为5到10分钟,在过期后,用户将被重定向到登录,这是有问题的,特别是如果他正在填写重要的申请表格。在这种情况下该怎么办?请注意,隐式授予中没有使用新令牌进行更新的刷新令牌,因此刷新令牌不在图中。

如果我使用Auth代码授予:假设在被重定向到我的主应用程序站点之后,如果我访问了AJAX请求,并获得令牌作为代码交换,

  1. Auth代码授予使用client_secret。在javascript应用程序中,任何人都可以看到代码,我们不能使用秘密。

这里应该采取什么办法?我更倾向于auth_code为SPA,但问题是如何处理client_secret?

感谢您的阅读。

有多个链接建议使用Auth代码授予而不是SPA。多个链接中的几个:

https://www.oauth.com/oauth2-servers/single-page-apps/

https://medium.com/oauth-2/why-you-should-stop-using-the-oauth-implicit-grant-2436ced1c926

EN

回答 1

Security用户

发布于 2019-07-01 14:28:59

您不需要客户端秘密,应该使用PKCE。关于温泉疗养的最佳做法有一个新的IETF草案。

票数 2
EN
页面原文内容由Security提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://security.stackexchange.com/questions/212697

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档