Kong oidc插件

≯℡__Kan透↙ 提交于 2020-08-14 06:36:50

介绍

kong oidc插件是诺基亚开源的,用于实现OpenID Connect依赖方(RP)功能。代码量不多,内部使用了lua-resty-openidc 库执行oidc协议的认证,而lua-resty-openidc 库通过利用lua-resty-session来维护已认证用户的会话,从而在将会话状态存储在客户端浏览器cookie,或使用服务器端存储机制共享内存之间提供可配置的选择。

原理

oidc插件是oidc协议的RP,可以与外部的oidc认证授权服务器交互,并且使用session来维持会话,在网关层对前端屏蔽oidc协议的复杂度,提供统一的实现,前端无需关系认证授权相关逻辑。流程如下图所示。

总结

这种用法的争议点在于无状态,使用oidc协议及jwt就是为了无状态,现在网关层为了屏蔽认证的复杂度,又通过增加session变成了有状态,虽然可以通过session共享来处理这个问题。

究竟是要各前端自己实现oidc认证还是网关统一处理,就仁者见仁智者见智了。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!