cs.*_*yan 6 django cas single-sign-on jwt reactjs
我正在设置一个 Django-React 应用程序,通过第三方 CAS 进行身份验证。CAS认证流程如下:
Web 应用程序使用“service”参数将用户的浏览器重定向到 CAS 的登录 URL,例如https://cas.com/login?service=http://myapp.com。
用户通过 CAS 身份验证后,CAS 会将经过身份验证的用户重定向回应用程序,并将一个名为“ticket”的参数附加到重定向的 URL 中。其票证价值是“服务票证”的一次性标识。例如,http://myapp.com/?ticket=abcdefg。
然后,应用程序可以连接到 CAS“serviceValidate”端点以验证一次性服务票证。例如,https://cas.com/serviceValidate?service=http://myapp.com&ticket=abcdefg。
作为响应,CAS 应返回包含经过身份验证的用户 ID 的 XML,例如,
<cas:serviceResponse>
<cas:authenticationSuccess>
<cas:user>johnd</cas:user>
</cas:authenticationSuccess>
</cas:serviceResponse>
Run Code Online (Sandbox Code Playgroud)
我做了一些研究,发现主要可以通过两种方式实现:
将 React 作为 Django 静态内容的一部分。
通过 JWT 独立响应单页应用程序 (SPA)。
我已经尝试过第一种方法并且它有效,但问题是每次我想用 React 测试身份验证时,我需要先构建静态文件并将它们放入 Django 中,这有点慢。所以我想尝试第二种方法。
我的问题是,我可以为独立方法实施任何最佳实践吗?如果我要实现 JWT,将访问令牌存储在localStorageor中是否安全cookie?
非常感谢!
| 归档时间: |
|
| 查看次数: |
719 次 |
| 最近记录: |