rco*_*tna 2 single-sign-on jwt
我基于令牌的身份验证系统的经验总是涉及令牌交换系统.我们想要对用户进行身份验证的应用程序(通过请求)接收令牌,然后将此令牌安全地传输到身份验证系统的令牌交换服务,该服务验证令牌并将用户信息返回给应用程序.
我最近遇到过ZenDesk的SSO实现,它使用JWT但没有令牌交换/验证步骤.
这里的PHP实现示例:https://github.com/zendesk/zendesk_jwt_sso_examples/blob/master/php_jwt.php
基本上,编码的用户信息与HMAC一起通过URL来签署请求.ZenDesk端将解码,验证HMAC是否有效(使用共享密钥),并立即根据请求的用户信息对用户进行身份验证.生成令牌以确保其有效的系统没有回调.
我的问题是:如果有人要捕获请求,并且他们对其进行解码以获取用户信息和HMAC,他们就不能将其发送到服务器场以开始迭代秘密密钥,直到他们弄清楚它是什么(即:使HMAC匹配)?然后,一旦掌握了密钥,您就可以向ZenDesk作为首席执行官进行身份验证,并提出荒谬的请求吗?
希望我错过了一些东西,因为这种SSO方法是我见过的最简单的方法.
| 归档时间: |
|
| 查看次数: |
1774 次 |
| 最近记录: |