ASM服务网格支持接入第三方鉴权服务,用于网格内的服务鉴权,当前支持定义HTTP协议和gRPC协议的自定义鉴权服务。
添加自定义授权服务
1. 从服务网格控制台 选择 网格安全中心 -> 自定义授权服务菜单,选择创建
2. 填写参数,提交即可
参数说明如下:
配置 | 说明 |
协议 | 调用外部授权服务的协议,当前支持HTTP和gRPC |
名称 | 唯一标识一个外部授权服务 |
服务地址 | 外部授权服务的地址 |
服务端口 | 外部授权服务的端口号 |
超时时间 | 调用外部授权服务时的超时时间,单位秒 |
针对HTTP协议的外部授权服务支持以下额外配置选项:
配置 | 说明 |
鉴权服务不可用时放行请求 | 打开此开关后,访问鉴权服务出现异常时将放行请求 |
在鉴权请求中携带header | 将请求中指定的头部带到鉴权服务 |
在鉴权请求中新增header | 在发往鉴权服务的请求中新增头部 |
鉴权通过时覆盖Header | 使用鉴权请求Response中Header覆盖发往目标服务的请求中的Header |
鉴权失败时覆盖Header | 使用鉴权请求Response中Header覆盖Response中的Header |
在鉴权请求中携带请求Body | 打开此开关后,将在访问鉴权服务时携带请求Body |
鉴权请求携带Body的最大长度(Byte) | 限制发往鉴权服务的Body大小 |
允许将不完整消息发送至鉴权服务 | 在请求Body超出最大长度限制时,若不启用该选项则将拒绝请求并返回HTTP 413 |
针对gRPC协议的外部授权服务支持以下额外配置选项:
配置 | 说明 |
鉴权服务不可用时放行请求 | 打开此开关后,访问鉴权服务出现异常时将放行请求 |
在鉴权请求中携带请求Body | 打开此开关后,将在访问鉴权服务时携带请求Body |
鉴权请求携带Body的最大长度(Byte) | 限制发往鉴权服务的Body大小 |
允许将不完整消息发送至鉴权服务 | 在请求Body超出最大长度限制时,若不启用该选项则将拒绝请求并返回HTTP 413 |
鉴权请求Body编码方式及存放位置 | 当前支持两种选项: UTF8 String(Body):授权请求将编码为UTF8字符串放到请求body字段 RawBytes(RawBody):授权请求将编码为原始字节串放到请求的raw_body字段 |
修改自定义授权服务
1. 从服务网格控制台 选择 网格安全中心 -> 自定义授权服务菜单,默认会展示当前定义的所有外部授权服务
2. 选择要编辑的服务编辑即可
删除自定义授权服务
1. 从服务网格控制台 选择 网格安全中心 -> 自定义授权服务菜单,默认会展示当前定义的所有外部授权服务
2. 选择要编辑的服务删除即可