智慧水务认证请求过滤器链
2024-04-02 21:08:21 0 举报
在多租户环境中,获取租户编号的请求过滤器链是一个关键的组件,它负责处理所有入站请求,并确保只允许授权的租户访问相应的资源。这种过滤器链通常由多个过滤器组成,每个过滤器负责特定的任务,例如身份验证、授权和安全策略执行。 核心内容:过滤器链的主要功能是处理入站请求,验证租户身份,并授权其访问特定资源。这通常涉及到多个过滤器,每个过滤器执行特定的任务,如身份验证、授权和安全策略执行。 文件类型:这份描述可能是一篇技术文章、设计文档或项目说明的一部分,旨在解释多租户环境中获取租户编号的请求过滤器链的工作原理和重要性。 修饰语:该过滤器链是安全、高效的,为多租户环境提供了强有力的保障,确保了数据的完整性和保密性。
作者其他创作
大纲/内容
将请求 Header 中的 tenant-id 解析出来,添加到 {@link TenantContextHolder} 中,这样后续的 DB 等操作,可以获得到租户编号
打印 traceId 到 header 中返回
用户
有此租户返回租户ID,否则返回空
TraceFilter
Token 过滤器,验证 token 的有效性验证通过后,获得 {@link LoginUser} 信息,并加入到 Spring Security 上下文
EnvWebFilter
根据租户名称获取租户编号请求的过滤器链时序
TokenAuthenticationFilter
TenantController
多租户 Security Web 过滤器1. 如果是登陆的用户,校验是否有权限访问该租户,避免越权问题。2. 如果请求未带租户的编号,检查是否是忽略的 URL,否则也不允许访问。3. 校验租户是合法,例如说被禁用、到期校验用户访问的租户,是否是其所在的租户,
TenantSecurityWebFilter
TenantContextWebFilter
请求获取租户编号
当有 tag 请求头时,设置到 {@link EnvContextHolder} 的标签上下文
0 条评论
下一页