SPA隐式流与授权流与混合流

时间:2018-06-06 11:04:41

标签: api security token single-page-application openid

对于使用OpenId Implicit Flow for SPA似乎已达成共识,尽管存在一些安全问题,使用HTTPS是否可以降低风险,或者使用其他流类型更安全?例如授权或混合流程。

2 个答案:

答案 0 :(得分:0)

我认为,如果对SPA使用授权或混合流,则风险会更高;对于混合和授权代码,您必须保留一个在身份提供者和客户端之间共享的秘密代码,这对于SPA来说是非常危险的。因为它是一个刷新令牌,如果被盗可以用来获取新令牌

您知道刷新令牌的寿命比access_token长,因此最好提供1小时的访问令牌(隐式流),而不是提供寿命更长并且可以用来获取新令牌的刷新令牌

答案 1 :(得分:0)

SPA的当前标准是将授权代码流与PKCE一起使用。这样,您就可以通过PKCE使用动态机密来请求长期存在的令牌(refresh_token)。

https://oauth.net/2/pkce/

https://youtu.be/CHzERullHe8