Global Trust Authority RBS核心架构解析理解RATS远程证明与资源代理【免费下载链接】globaltrustauthority-rbsThe resource broker service distributes keys, certificates and other resources in a highly secure manner by verifying the remote attestation result from global trust authority.项目地址: https://gitcode.com/openeuler/globaltrustauthority-rbs前往项目官网免费下载https://ar.openeuler.org/ar/Global Trust Authority RBS资源代理服务是一个基于RATS远程证明令牌语法框架构建的高安全资源分发系统专为可信计算和零信任环境设计。本文将深入解析RBS的核心架构帮助您理解这一安全资源代理服务的工作原理、关键组件以及RATS远程证明机制如何保障资源安全分发。 RBS是什么为什么需要它Global Trust Authority RBS是一个资源代理服务它通过验证远程证明结果在高度安全的环境中分发密钥、证书和其他敏感资源。在现代云计算和机密计算场景中工作负载需要安全地访问密钥、证书等敏感资源但传统的身份验证机制无法验证工作负载的真实运行状态。RBS通过RATS远程证明机制解决了这一核心安全问题。RBS采用双模式部署架构RESTful模式作为独立的HTTP/HTTPS服务运行内置/库模式作为库嵌入到主机应用程序中️ 核心架构设计系统上下文与信任边界RBS架构围绕多个信任边界构建确保每个组件都在适当的信任范围内运行┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐ │ 客户端区域 │ │ RBS平台 │ │ 外部系统 │ │ 工作负载/应用 │ │ RBS服务 │ │ GTA服务 │ │ rbc SDK │───▶│ (代理策略 │───▶│ (远程证明) │ │ rbc-cli │ │ 强制执行) │ │ 资源后端 │ └─────────────────┘ └─────────────────┘ └─────────────────┘主要信任边界包括客户端 ↔ RBS网络边界RBS ↔ GTA远程证明边界RBS ↔ 数据库持久化边界RBS ↔ 资源后端密钥边界组件依赖关系RBS工作空间采用清晰的模块化设计┌─────────────────────────────────────────────────────────────┐ │ rbs (组合根) │ ├─────────────────────────────────────────────────────────────┤ │ rbs-rest (HTTP适配层) rbs-core (业务逻辑) │ │ ├─ Actix Web服务器 ├─ AttestationManager │ │ ├─ 路由处理 ├─ ResourceService │ │ ├─ 中间件 ├─ PolicyService │ │ └─ OpenAPI文档 └─ AdminManager │ └─────────────────────────────────────────────────────────────┘依赖方向严格遵循rbs-api-types共享合约→rbs-core业务规则→rbs-restHTTP适配。这种设计确保了业务逻辑与HTTP框架细节的解耦。 RATS远程证明模型RBS实现了RFC 9334定义的两个RATS证明交互模型护照模型Passport Model这是先证明后访问的模式证明者工作负载从验证者GTA获取证明令牌证明者将令牌提交给依赖方RBSRBS验证令牌后授权资源访问工作负载 → 收集证据 → GTA验证 → 获取令牌 → RBS验证 → 访问资源背景检查模型Background-Check Model这是边证明边访问的模式证明者直接将证据发送给依赖方RBSRBS将证据转发给验证者GTAGTA返回证明结果RBS基于结果授权访问工作负载 → 发送证据 → RBS转发 → GTA验证 → 返回结果 → 访问资源 关键运行时流程1. 挑战与远程证明流程2. 资源检索证明令牌路径当工作负载获得证明令牌后可以通过以下流程安全获取资源3. 资源检索Bearer所有者路径操作员可以使用Bearer JWT访问自己拥有的资源️ 安全架构与威胁模型安全边界与数据流RBS实施默认拒绝策略确保只有在满足所有安全条件时才授权访问┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐ │ 客户端信任区域 │ │ RBS服务器信任区 │ │ 外部依赖系统 │ │ 工作负载/客户端│───▶│ RBS/RbsCore │───▶│ GTA服务 │ │ │ │ 证明/授权/资源服务│ │ 数据库 │ │ │ │ │ │ 资源后端 │ └─────────────────┘ └─────────────────┘ └─────────────────┘关键安全机制挑战随机数控制挑战随机数转发给证明提供者RBS核心没有本地单次使用随机数存储默认拒绝缺少策略、无效Rego、缺失声明、过期令牌、锁定用户等情况都会拒绝访问明文边界资源明文仅在授权后进入受控路径立即进行JWE加密export_mode限制资源记录仅包含元数据始终使用JWE加密拒绝明文导出认证双路径RBS支持两种认证路径Bearer JWT路径用于管理员/用户/策略API操作证明令牌路径用于资源GET访问护照模型和POST .../retrieve背景检查模型 配置与部署选项运行时配置RBS通过配置文件rbs/conf/rbs.yaml提供灵活的配置选项rest: https: enabled: true cert_file: /path/to/cert.pem key_file: /path/to/key.pem rate_limit: enabled: true requests_per_sec: 10 burst: 30 attestation: backends: gta: type: GtaRestProvider url: https://gta.example.com storage: database_url: sqlite:///var/lib/rbs/rbs.db sql_file_path: rbs/rdb_sql/sqlite_rbs.sql部署模式比较维度RESTful模式内置/库模式运行时形态独立服务进程主机应用直接链接rbs-core入口边界rbs-rest暴露HTTP/HTTPS API无HTTP适配边界主机应用拥有调用权核心职责配置、日志、数据库、提供者、REST服务器重用证明、策略、资源、管理员功能适用性本文档默认描述此形态核心能力边界不规定主机网络、进程或部署形态 扩展点与自定义核心特性与适配器RBS提供多个扩展点支持自定义实现扩展点位置用途AttestationProviderrbs/core/src/attestation/provider.rs挑战证据 → 证明令牌ResourceBackendrbs/core/src/resource/adapter/mod.rs授权后读取受保护内容BackendProvider同上注册表res_provider → ArcPolicyClient同上ResourceService的运行时策略读取UserKeyProviderrbs/core/src/auth/authn/mod.rsBearer JWT公钥查找VaultBackendrbs/core/src/resource/adapter/vault.rsVault资源后端适配器扩展检查清单开发自定义扩展时需遵循以下步骤合约定义确定所属crate、公共特性/API、测试位置测试覆盖包含故障路径覆盖不泄露证据、令牌、密钥或明文REST变更路由注解 运行./scripts/generate-api-docs.sh安全审查根据安全架构§10审查认证边界变更 快速开始与开发构建与测试# 构建核心库内置模式 cargo build -p rbs-core # 构建REST二进制默认功能 cargo build -p rbs # 完整工作空间构建 cargo build --workspace # 运行测试 cargo test --workspace # 合并就绪检查 ./tests/test_all.shAPI文档生成当添加或修改API端点时./scripts/generate-api-docs.sh该脚本生成docs/proto/rbs_rest_api.yamlOpenAPI YAMLdocs/api/rbs/md/rbs_rest_api.mdMarkdowndocs/api/rbs/html/rbs_rest_api.htmlHTML 性能与可观测性日志堆栈层级位置/机制说明外观logcrateerror!/warn!/info!/debug!/trace!自定义日志器rbs/core/src/infra/logging/文件目标通过flate2可选轮转和gzip压缩配置rbs/conf/rbs.yaml中的logging.*level、format文本/json、file_path、enable_rotation、rotation.*刷新仅在测试和关闭时log::logger().flush()— 不在每个请求的热路径上版本元数据通过GET /rbs/version端点无需认证获取服务元数据{ api_version: 0, service_name: globaltrustauthority-rbs, build: { version: 1.0.0, git_hash: abc123def456, build_date: 2024-01-01T00:00:00Z } } 应用场景与最佳实践典型应用场景机密计算密钥分发TEE可信执行环境工作负载安全获取加密密钥零信任架构基于工作负载状态的动态资源授权证书管理安全分发TLS证书给经过验证的工作负载秘密管理在零信任环境中安全分发API密钥、数据库凭据等最佳实践安全配置始终在生产环境中启用HTTPS和速率限制监控与审计启用结构化日志记录监控认证失败和策略决策定期轮换定期轮换管理员密钥和GTA配置网络隔离将RBS部署在受保护的网络区域限制对GTA和资源后端的访问备份策略定期备份数据库和配置文件 未来发展方向RBS架构设计考虑了未来的扩展需求多证明提供者支持除了GTA支持其他远程证明服务策略引擎扩展支持更复杂的策略语言和评估逻辑性能优化缓存机制和并行处理优化监控集成与Prometheus、Grafana等监控系统集成多云部署支持跨云环境的统一资源代理 总结Global Trust Authority RBS通过RATS远程证明框架为现代云计算环境提供了安全可靠的资源分发解决方案。其核心优势在于✅基于证明的授权不仅验证身份还验证工作负载的运行状态 ✅灵活的部署模式支持独立服务和嵌入式库两种形态 ✅强大的安全边界实施默认拒绝策略确保资源安全 ✅可扩展架构通过提供者模式支持多种证明服务和资源后端 ✅完整的生态系统包含客户端SDK和管理工具链通过深入理解RBS的核心架构您可以更好地部署、配置和扩展这一强大的资源代理服务为您的机密计算和零信任架构提供坚实的安全基础。【免费下载链接】globaltrustauthority-rbsThe resource broker service distributes keys, certificates and other resources in a highly secure manner by verifying the remote attestation result from global trust authority.项目地址: https://gitcode.com/openeuler/globaltrustauthority-rbs创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
Global Trust Authority RBS核心架构解析:理解RATS远程证明与资源代理
发布时间:2026/6/27 20:52:42
Global Trust Authority RBS核心架构解析理解RATS远程证明与资源代理【免费下载链接】globaltrustauthority-rbsThe resource broker service distributes keys, certificates and other resources in a highly secure manner by verifying the remote attestation result from global trust authority.项目地址: https://gitcode.com/openeuler/globaltrustauthority-rbs前往项目官网免费下载https://ar.openeuler.org/ar/Global Trust Authority RBS资源代理服务是一个基于RATS远程证明令牌语法框架构建的高安全资源分发系统专为可信计算和零信任环境设计。本文将深入解析RBS的核心架构帮助您理解这一安全资源代理服务的工作原理、关键组件以及RATS远程证明机制如何保障资源安全分发。 RBS是什么为什么需要它Global Trust Authority RBS是一个资源代理服务它通过验证远程证明结果在高度安全的环境中分发密钥、证书和其他敏感资源。在现代云计算和机密计算场景中工作负载需要安全地访问密钥、证书等敏感资源但传统的身份验证机制无法验证工作负载的真实运行状态。RBS通过RATS远程证明机制解决了这一核心安全问题。RBS采用双模式部署架构RESTful模式作为独立的HTTP/HTTPS服务运行内置/库模式作为库嵌入到主机应用程序中️ 核心架构设计系统上下文与信任边界RBS架构围绕多个信任边界构建确保每个组件都在适当的信任范围内运行┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐ │ 客户端区域 │ │ RBS平台 │ │ 外部系统 │ │ 工作负载/应用 │ │ RBS服务 │ │ GTA服务 │ │ rbc SDK │───▶│ (代理策略 │───▶│ (远程证明) │ │ rbc-cli │ │ 强制执行) │ │ 资源后端 │ └─────────────────┘ └─────────────────┘ └─────────────────┘主要信任边界包括客户端 ↔ RBS网络边界RBS ↔ GTA远程证明边界RBS ↔ 数据库持久化边界RBS ↔ 资源后端密钥边界组件依赖关系RBS工作空间采用清晰的模块化设计┌─────────────────────────────────────────────────────────────┐ │ rbs (组合根) │ ├─────────────────────────────────────────────────────────────┤ │ rbs-rest (HTTP适配层) rbs-core (业务逻辑) │ │ ├─ Actix Web服务器 ├─ AttestationManager │ │ ├─ 路由处理 ├─ ResourceService │ │ ├─ 中间件 ├─ PolicyService │ │ └─ OpenAPI文档 └─ AdminManager │ └─────────────────────────────────────────────────────────────┘依赖方向严格遵循rbs-api-types共享合约→rbs-core业务规则→rbs-restHTTP适配。这种设计确保了业务逻辑与HTTP框架细节的解耦。 RATS远程证明模型RBS实现了RFC 9334定义的两个RATS证明交互模型护照模型Passport Model这是先证明后访问的模式证明者工作负载从验证者GTA获取证明令牌证明者将令牌提交给依赖方RBSRBS验证令牌后授权资源访问工作负载 → 收集证据 → GTA验证 → 获取令牌 → RBS验证 → 访问资源背景检查模型Background-Check Model这是边证明边访问的模式证明者直接将证据发送给依赖方RBSRBS将证据转发给验证者GTAGTA返回证明结果RBS基于结果授权访问工作负载 → 发送证据 → RBS转发 → GTA验证 → 返回结果 → 访问资源 关键运行时流程1. 挑战与远程证明流程2. 资源检索证明令牌路径当工作负载获得证明令牌后可以通过以下流程安全获取资源3. 资源检索Bearer所有者路径操作员可以使用Bearer JWT访问自己拥有的资源️ 安全架构与威胁模型安全边界与数据流RBS实施默认拒绝策略确保只有在满足所有安全条件时才授权访问┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐ │ 客户端信任区域 │ │ RBS服务器信任区 │ │ 外部依赖系统 │ │ 工作负载/客户端│───▶│ RBS/RbsCore │───▶│ GTA服务 │ │ │ │ 证明/授权/资源服务│ │ 数据库 │ │ │ │ │ │ 资源后端 │ └─────────────────┘ └─────────────────┘ └─────────────────┘关键安全机制挑战随机数控制挑战随机数转发给证明提供者RBS核心没有本地单次使用随机数存储默认拒绝缺少策略、无效Rego、缺失声明、过期令牌、锁定用户等情况都会拒绝访问明文边界资源明文仅在授权后进入受控路径立即进行JWE加密export_mode限制资源记录仅包含元数据始终使用JWE加密拒绝明文导出认证双路径RBS支持两种认证路径Bearer JWT路径用于管理员/用户/策略API操作证明令牌路径用于资源GET访问护照模型和POST .../retrieve背景检查模型 配置与部署选项运行时配置RBS通过配置文件rbs/conf/rbs.yaml提供灵活的配置选项rest: https: enabled: true cert_file: /path/to/cert.pem key_file: /path/to/key.pem rate_limit: enabled: true requests_per_sec: 10 burst: 30 attestation: backends: gta: type: GtaRestProvider url: https://gta.example.com storage: database_url: sqlite:///var/lib/rbs/rbs.db sql_file_path: rbs/rdb_sql/sqlite_rbs.sql部署模式比较维度RESTful模式内置/库模式运行时形态独立服务进程主机应用直接链接rbs-core入口边界rbs-rest暴露HTTP/HTTPS API无HTTP适配边界主机应用拥有调用权核心职责配置、日志、数据库、提供者、REST服务器重用证明、策略、资源、管理员功能适用性本文档默认描述此形态核心能力边界不规定主机网络、进程或部署形态 扩展点与自定义核心特性与适配器RBS提供多个扩展点支持自定义实现扩展点位置用途AttestationProviderrbs/core/src/attestation/provider.rs挑战证据 → 证明令牌ResourceBackendrbs/core/src/resource/adapter/mod.rs授权后读取受保护内容BackendProvider同上注册表res_provider → ArcPolicyClient同上ResourceService的运行时策略读取UserKeyProviderrbs/core/src/auth/authn/mod.rsBearer JWT公钥查找VaultBackendrbs/core/src/resource/adapter/vault.rsVault资源后端适配器扩展检查清单开发自定义扩展时需遵循以下步骤合约定义确定所属crate、公共特性/API、测试位置测试覆盖包含故障路径覆盖不泄露证据、令牌、密钥或明文REST变更路由注解 运行./scripts/generate-api-docs.sh安全审查根据安全架构§10审查认证边界变更 快速开始与开发构建与测试# 构建核心库内置模式 cargo build -p rbs-core # 构建REST二进制默认功能 cargo build -p rbs # 完整工作空间构建 cargo build --workspace # 运行测试 cargo test --workspace # 合并就绪检查 ./tests/test_all.shAPI文档生成当添加或修改API端点时./scripts/generate-api-docs.sh该脚本生成docs/proto/rbs_rest_api.yamlOpenAPI YAMLdocs/api/rbs/md/rbs_rest_api.mdMarkdowndocs/api/rbs/html/rbs_rest_api.htmlHTML 性能与可观测性日志堆栈层级位置/机制说明外观logcrateerror!/warn!/info!/debug!/trace!自定义日志器rbs/core/src/infra/logging/文件目标通过flate2可选轮转和gzip压缩配置rbs/conf/rbs.yaml中的logging.*level、format文本/json、file_path、enable_rotation、rotation.*刷新仅在测试和关闭时log::logger().flush()— 不在每个请求的热路径上版本元数据通过GET /rbs/version端点无需认证获取服务元数据{ api_version: 0, service_name: globaltrustauthority-rbs, build: { version: 1.0.0, git_hash: abc123def456, build_date: 2024-01-01T00:00:00Z } } 应用场景与最佳实践典型应用场景机密计算密钥分发TEE可信执行环境工作负载安全获取加密密钥零信任架构基于工作负载状态的动态资源授权证书管理安全分发TLS证书给经过验证的工作负载秘密管理在零信任环境中安全分发API密钥、数据库凭据等最佳实践安全配置始终在生产环境中启用HTTPS和速率限制监控与审计启用结构化日志记录监控认证失败和策略决策定期轮换定期轮换管理员密钥和GTA配置网络隔离将RBS部署在受保护的网络区域限制对GTA和资源后端的访问备份策略定期备份数据库和配置文件 未来发展方向RBS架构设计考虑了未来的扩展需求多证明提供者支持除了GTA支持其他远程证明服务策略引擎扩展支持更复杂的策略语言和评估逻辑性能优化缓存机制和并行处理优化监控集成与Prometheus、Grafana等监控系统集成多云部署支持跨云环境的统一资源代理 总结Global Trust Authority RBS通过RATS远程证明框架为现代云计算环境提供了安全可靠的资源分发解决方案。其核心优势在于✅基于证明的授权不仅验证身份还验证工作负载的运行状态 ✅灵活的部署模式支持独立服务和嵌入式库两种形态 ✅强大的安全边界实施默认拒绝策略确保资源安全 ✅可扩展架构通过提供者模式支持多种证明服务和资源后端 ✅完整的生态系统包含客户端SDK和管理工具链通过深入理解RBS的核心架构您可以更好地部署、配置和扩展这一强大的资源代理服务为您的机密计算和零信任架构提供坚实的安全基础。【免费下载链接】globaltrustauthority-rbsThe resource broker service distributes keys, certificates and other resources in a highly secure manner by verifying the remote attestation result from global trust authority.项目地址: https://gitcode.com/openeuler/globaltrustauthority-rbs创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考