「应用安全」OAuth和OpenID Connect的全面比较(42)
攻击成功需要一些条件 , 但如果您考虑发布智能手机应用程序 , 强烈建议客户端应用程序和授权服务器都支持PKCE 。 否则 , 恶意应用程序可能拦截授权服务器发出的授权代码 , 并将其与授权服务器的令牌端点处的有效访问令牌交换 。
在2012年10月发布了RFC 6749(OAuth 2.0授权框架) , 因此即使熟悉OAuth 2.0的开发人员也可能不知道2015年9月最近发布的RFC 7636 。 但是 , 应该注意的是“OAuth 2.0 for Native Apps”草案表明 , 在某些情况下 , 它的支持是必须的 。
客户端和授权服务器都必须支持PKCE [RFC7636
使用自定义URI方案或环回IP重定向 。 授权服务器应该使用自定义方案拒绝授权请求 , 或者如果不存在所需的PKCE参数 , 则将环回IP作为重定向URI的一部分 , 返回PKCE [RFC7636
第4.4.1节中定义的错误消息 。 建议将PKCE [RFC7636
用于应用程序声明的HTTPS重定向URI , 即使这些URI通常不会被拦截 , 以防止对应用程序间通信的攻击 。
支持RFC 7636的授权服务器的授权端点接受两个请求参数:code_challenge和code_challenge_method , 令牌端点接受code_verifier 。 并且在令牌端点的实现中 , 授权服务器使用(a)客户端应用程序呈现的代码验证器和(b)客户端应用程序在授权端点处指定的代码质询方法来计算代码质询的值 。 如果计算的代码质询和客户端应用程序在授权端点处呈现的code_challenge参数的值相等 , 则可以说发出授权请求的实体和发出令牌请求的实体是相同的 。 因此 , 授权服务器可以避免向恶意应用程序发出访问令牌 , 该恶意应用程序与发出授权请求的实体不同 。
推荐阅读
- 三国杀|Win 11也能运行安卓应用,流畅度秒杀模拟器,不信你来试试?
- 游戏版号|解决游戏安全问题刻不容缓,腾讯《白皮书》呼吁共建共治
- 宿舍|“宿舍安全检查在男寝搜出来了32个望远镜,又在女寝搜出来”
- 百里守约|队友选什么英雄最有安全感?玩家:百里守约!看到原因我笑了
- 鱿鱼游戏|《鱿鱼游戏》不仅绿衣人会死,粉衣人也不安全,他们也并不想害人
- 原神|腾讯米哈游达成共识,原神官服上架应用宝,真的三七分账了?
- 地下城与勇士|DNF:国服最安全的账号,放着也没人敢盗,上个盗他号的才出狱
- 单机|Poppy评RNG队员:Wei最认真,Cryin总能给人安全感
- 王者荣耀|王者荣耀防沉迷系统再次升级 未成年应用商店怒打一星差评泄愤
- 王者荣耀|王者荣耀:没有未成年玩家后,安全裤也不用加长了,玩家直呼漂亮