SAML2单点登陆接入流程分析
最近有个客户系统需要接入自己内部的统一认证服务,采用的是saml2.0协议,系统自身的iam充当SP角色,客户内部统一认证充当Idp服务,最后由于客户SSO流程返回数据不是标准的SAML2.0协议,没有带回请求时RelayState带的参数数据,导致iam解析SAML2.0协议异常,整个交互流程通过wireshark抓包分析,不然又要被客户diao了~。
SAML协议介绍
SAML(Security...
Continue reading >>最近有个客户系统需要接入自己内部的统一认证服务,采用的是saml2.0协议,系统自身的iam充当SP角色,客户内部统一认证充当Idp服务,最后由于客户SSO流程返回数据不是标准的SAML2.0协议,没有带回请求时RelayState带的参数数据,导致iam解析SAML2.0协议异常,整个交互流程通过wireshark抓包分析,不然又要被客户diao了~。
SAML(Security...
Continue reading >>之前写过一篇文章介绍JWT和使用refreshToken实现无感刷新的文章 → JWT实现refresh token与前端无感刷新。这篇文章主要是前后端实现的具体代码。
前端环境:Vue 2.7 + TypeScript 2.8.0 + Axios 0.27 + Vuex 3.6
后端环境:Python 3.11 + Sanic 23.3.0 + PyJWT 2.0.0
前...
Continue reading >>RPC(Remote Procedure Call),即远程过程调用。它允许像调用本地服务一样调用远程服务。而无需了解网络的细节(不需要直接处理Socket通讯或Http通讯)。
RPC是一种服务器-客户端(Client/Server)模式,经典实现是一个请求响应模型。客户端发起请求,服务器返回响应。
RPC可以分为两部分:用户调用接口 + 具体网络协议。前者为开发者...
Continue reading >>WebSocket是一种计算机通信协议,提供了在单个传输控制协议(TCP)连接上进行双向通信的能力。它允许Web浏览器(或其他客户端应用程序)和Web服务器之间进行全双工交互,从而实现实时数据传输。WebSocket协议的握手过程是通过HTTP请求/响应来建立连接的,允许服务器在同一端口上处理HTTP连接...
Continue reading >>Django是一个由Django Software Foundation开发和维护的高级Python Web开发框架;
因此,Django提供的许多功能都是内置的,包括对象关系映射(ORM)层、模板引擎、表单处理、对象验证、URL路由、会话管理、对象序列化等;
这意味着开发者不需要从零开始构...