news 2025/12/30 23:47:43

【隐语Secreflow】如何配置 Kuscia 对请求进行 Path Rewrit

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【隐语Secreflow】如何配置 Kuscia 对请求进行 Path Rewrit

打开链接即可点亮社区Star,照亮技术的前进之路。

Github 地址:https://github.com/secretflow/kuscia

背景

隐私计算合作机构之间的网络较为复杂,经常存在多层次的网关,网关根据 Path 将请求路由到真正的业务节点。为了给这种组网提供支持,Kuscia 能够对业务请求进行 Path Rewrite,将对应的路由前缀添加到请求 Path。

:::{tip}
网关要求:机构网关处需要进行 Path 前缀卸载。
:::

多机部署配置 Path Rewrite

  • Kuscia 中心化部署参考这里
  • Kuscia 点对点部署参考这里

下面以 Alice 机构访问 Bob、Carol 机构的通信配置作为示例,其中 Nginx 服务器地址为 1.1.1.1,Bob 机构地址为 2.2.2.2,Carol 机构地址为 3.3.3.3。

# alice accesses bob's addresshttp://1.1.1.1/foo# alice accesses carol's addresshttp://1.1.1.1/bar

Nginx 配置示例如下:

http{# Default is HTTP/1, keepalive is only enabled in HTTP/1.1proxy_http_version1.1;proxy_set_header Connection"";proxy_set_header Host$http_host;proxy_pass_request_headers on;access_log /var/log/access.log;# To allow special characters in headersignore_invalid_headers off;# Maximum number of requests through one keep-alive connectionkeepalive_requests1000;keepalive_timeout 20m;client_max_body_size 2m;# To disable bufferingproxy_buffering off;proxy_request_buffering off;upstream bob{server2.2.2.2:11080weight=1max_fails=5fail_timeout=60s;keepalive32;keepalive_timeout 600s;keepalive_requests1000;}upstream carol{server3.3.3.3:21080weight=1max_fails=5fail_timeout=60s;keepalive32;keepalive_timeout 600s;keepalive_requests1000;}# The reverse proxy needs to remove the prefix path before forwardingserver{location /foo/{proxy_read_timeout 10m;proxy_pass https://bob/;}location /bar/{proxy_read_timeout 10m;proxy_pass https://carol/;}}}

使用 KusciaAPI 配置 Path Rewrite

使用 KusciaAPI 要配置一条 Path Rewrite 路由规则,需要设置endpointprefix字段。

下面以机构 Alice 访问机构 Bob 的场景为例,当机构 Bob 网关地址带 Path 时如何调用 KusciaAPI 设置endpointprefix字段。

# Execute the example inside the container# --cert is the certificate used for mutual authentication with the serverexportCTR_CERTS_ROOT=/home/kuscia/var/certscurl-k -X POST'https://localhost:8082/api/v1/route/create'--header"Token:$(cat${CTR_CERTS_ROOT}/token)"--header'Content-Type: application/json'--cert${CTR_CERTS_ROOT}/kusciaapi-server.crt --key${CTR_CERTS_ROOT}/kusciaapi-server.key --cacert${CTR_CERTS_ROOT}/ca.crt -d'{ "authentication_type": "Token", "destination": "bob", "endpoint": { "host": "1.1.1.1", "ports": [ { "port": 80, "protocol": "HTTP", "isTLS": true, # If the gateway is a domain and supports https, set to true, otherwise set to false "path_prefix": "/foo" } ] }, "source": "alice", "token_config": { "token_gen_method": "RSA-GEN" } }'
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2025/12/29 3:21:04

毕设分享 深度学习遮挡下的人脸识别(源码+论文)

文章目录 0 前言1 项目运行效果2 设计概要4 最后 0 前言 🔥这两年开始毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目缺少创新和亮点,往往达不到毕业答辩的要求,这两年不断有学弟学妹告诉学长自己做的项目系统达不到老师…

作者头像 李华
网站建设 2025/12/30 9:01:19

Python UV搭配Miniconda:下一代包管理体验

Python UV 搭配 Miniconda:下一代包管理体验 在现代 AI 与数据科学项目中,一个常见的痛点是:明明本地跑得好好的代码,换到服务器或同事机器上就报错。追溯原因,往往是 numpy 版本不一致、CUDA 驱动缺失、或者某个依赖包…

作者头像 李华
网站建设 2025/12/29 17:42:23

实验室装修,怎样做更省心?

实验室装修,怎样做更省心?前言实验室装修是一项复杂且专业性极强的工程,涉及多个方面的考量。如何在保证质量和功能的前提下,让整个过程更加省心呢?本文将为您提供一些实用的建议。行业现状与痛点分析实验室装修的复杂…

作者头像 李华
网站建设 2025/12/30 22:22:10

Redis多数据源配置指南

Spring Boot Redis 多数据源配置指南 基于 Spring Boot 3.x + Lettuce 连接池,支持单机版和集群版 目录 1. Maven 依赖 2. 单机版多数据源配置 3. 集群版多数据源配置 4. 使用方式 5. 常见问题 1. Maven 依赖 <!-- Spring Data Redis -->

作者头像 李华
网站建设 2025/12/15 15:46:38

AutoGPT支持ONNX Runtime部署了吗?跨框架兼容测试

AutoGPT支持ONNX Runtime部署了吗&#xff1f;跨框架兼容测试 在当前AI智能体快速演进的背景下&#xff0c;一个现实问题逐渐浮现&#xff1a;我们能否让像AutoGPT这样的自主系统&#xff0c;在普通笔记本甚至边缘设备上高效运行&#xff1f;这不仅关乎响应速度&#xff0c;更直…

作者头像 李华
网站建设 2025/12/15 15:45:47

零基础小白网络安全入行清单:学技术前,先搞定这6件“小事”

一、什么是网络安全&#xff1f; 百度上对“网络安全”是这么介绍的&#xff1a; “网络安全是指网络系统的硬件、软件及其系统中的数据受到保护&#xff0c;不因偶然的或者恶意的原因而遭受到破坏、更改、泄露、系统连续可靠正常地运行&#xff0c;网络服务不中断。” 嗯…是…

作者头像 李华