
【免费下载链接】context-ontology-acceleratorAn open-source, ontology-based semantic context accelerator that enables AI agents to make more accurate, consistent, and explainable decisions.项目地址https://gitcode.com/gh_mirrors/co/context-ontology-accelerator点击查看免费下载Context Ontology Accelerator是一个开源的、基于本体ontology的语义上下文加速器它让 AI Agent 能更准确、一致且可解释地做出决策。要安全地多团队协作使用它关键就是搞清它的角色与权限管理哪些内置角色、怎么授权、以及表级/列级数据授权如何生效。本文用一份完整清单带你快速上手无需阅读源码即可掌握核心机制 两层授权模型先搞懂请求如何被拦截Context Ontology Accelerator 采用两层授权模型任何一次数据查询必须同时通过两层检查请求到达 │ ▼ 第 1 层Cedar 策略API 网关鉴权 这个用户能否调用该 API、访问该命名空间 ├─ 拒绝 → 403 Forbidden └─ 允许 ▼ │ 第 2 层SQL Firewall查询执行时 这个用户能否读取这些具体的表 / 列 ├─ 拒绝 → 查询被拒并返回原因 └─ 允许 → 查询执行层级执行位置控制内容机制动作级CedarAPI Gateway Lambda 鉴权器该主体能对哪个命名空间调用哪些 APICedar 策略 RBAC数据级SQL Firewallcontext-manager 查询执行时该主体能读哪些表和列grant 上的tableAllowlist/columnDenylist/allowedMetrics两层相互独立绕过任何一层都无法绕过另一层且任一层解析失败都会拒绝fail-closed。完整角色清单2 个全局角色 4 个命名空间角色系统内置两类角色。**平台角色Platform Roles**跨所有命名空间生效**命名空间角色Namespace Roles**只在被授予的那个命名空间内生效。由于namespace-owner与namespace-maintainer功能完全等价实际上形成5 种不同的权限档位 全局平台角色对所有命名空间生效角色说明platform-admin所有命名空间、所有资源的全部操作权限platform-viewer跨所有命名空间的只读访问查看、查询、搜索 命名空间角色仅限所授命名空间角色权限namespace-owner命名空间内完全权限管理、删除、授权namespace-maintainer与 owner 功能完全相同data-steward管理数据源、本体、指标 读取/查询data-analyst只读查询数据、查看指标、搜索文档此外任何已认证用户都可以列出命名空间list动作。每个角色背后的权限由一份 Cedar 策略文件定义例如data-analyst的策略 只授予query、readMetric、searchDocuments等只读动作。所有种子策略位于 libs/common/src/coa_authorization/seed/ 目录。权限矩阵谁能做什么一目了然操作platform-adminplatform-viewernamespace-ownerdata-stewarddata-analyst列出命名空间✅✅✅✅✅查看命名空间✅✅✅✅✅创建命名空间✅❌❌❌❌更新 / 删除命名空间✅❌✅❌❌管理数据源✅❌✅✅❌管理本体✅❌✅✅❌管理指标✅❌✅✅❌查询数据✅✅✅✅✅授予权限grant✅❌✅❌❌更细粒度的「API 端点 → Cedar 动作」完整映射见官方文档 authz-access-matrix.md。如何授权给用户还是给团队组授权Grant把「用户 / 用户组」与「角色 作用域」绑定支持两种主体类型User指定一个邮箱如alicecompany.comGroup匹配 IdP 中的组名所有 token 携带该组的用户自动继承角色 ——团队场景的推荐做法权限与身份提供方保持同步无需逐人授权重要提示授权不会在 Cognito 或外部 IdP 中创建、校验用户。grant 只是一条「授权意图」在匹配身份登录后才真正生效。所以给platform-admin授权前请像对待任何特权操作一样仔细核对邮箱或组名。管理入口平台授权Web 应用Identity页面或POST /grants仅platform-admin可写命名空间授权命名空间内的Permissions标签页或POST /namespaces/{namespaceId}/grants任何用户都可以通过GET /principals/{principalId}/grants查看自己的授权列表。表级 / 列级数据授权3 个可选字段这是本系统权限模型的精华同一个data-analyst可以只让他看部分表、部分列、部分指标。在创建 grant 时附加 3 个可选的覆盖字段即可字段契约定义在 grant.smithy字段类型效果tableAllowlistlist[string]只允许查询这些表引用其他表一律拒绝columnDenylistmap[string, list[string]]这些列不可被投影对受限表执行SELECT *会被拒绝allowedMetricslist[string]只允许计算这些指标 ID举个例子给alicecompany.com授予data-analyst后SELECT name FROM customers可以执行而SELECT ssn FROM customers或SELECT * FROM payroll会在查询执行时被 SQL Firewall 拦截。完整示例请求见 control-plane README。⚠️ 两个容易踩的坑省略字段 无限制不填这 3 个字段时用户对该命名空间内的全部数据拥有查询权限仍受 Cedar 动作级权限约束显式空列表 全部拒绝传tableAllowlist: []表示「什么都不能查」与「省略字段」含义完全不同SQL Firewall 的具体实现在 packages/context-manager/src/coa_serve/tier2/sql_firewall.py标识符比较大小写不敏感解析失败、受限表上的SELECT *、异常 grant 配置一律拒绝。关键规则限制只叠加、不解除platform-admin 也不例外这是整个权限模型中最反直觉、也最重要的一条没有任何角色能绕过第 2 层数据级限制 —— 包括platform-admin。两层各自遵循不同合并规则Cedar 层动作级取最宽松持有多个角色时任一角色允许即允许SQL Firewall 层数据级取最严格限制累积且永不消解columnDenylist只要该命名空间的任一grant 拒了某列该列就被拒tableAllowlist/allowedMetrics取各 grant 声明列表的并集只有当没有任何grant 声明列表时才无限制实际效果示例针对命名空间ns-Z持有的 grants实际数据限制data-analystcolumnDenylist: {customers: [ssn]}拒绝ssn同上 额外platform-admin全局ssn仍被拒绝同上 额外namespace-owner无限制ssn仍被拒绝无 grant 的platform-admin无数据级限制没有 grant 声明限制含义加更高级角色 ≠ 放开更多数据。要解除限制必须撤销或修改携带限制的那条 grant。这是有意设计 —— 否则只要某人兼任一个不受限角色PII 黑名单就会被悄悄绕过。需要「破例」读取时请显式修改或新发一条 grant留下可审计、可撤销的记录。3 个实用授权模式 新团队入驻为团队创建命名空间给团队负责人授予data-stewardUser grant给团队 IdP 组授予data-analystGroup grant对敏感表追加数据级限制 限制 PII 访问给junior-analysts组授予data-analyst并附带columnDenylist覆盖customers.ssn、customers.date_of_birth、employees.salary等敏感列。 审计员的平台级只读给审计组授予platform-viewer—— 他能查看所有命名空间但无法放松任何命名空间级的数据限制可与 PII 模式安全叠加。常见行为补充归档命名空间冻结当命名空间处于ARCHIVED状态时所有变更类操作管理数据源/指标/本体、修改命名空间、授权等会被一条 Cedarforbid策略硬性禁止包括platform-admin和namespace-owner读操作和重新激活setNamespaceStatus、删除仍允许。这条不变量同样不可被任何角色覆盖。速查相关文档与源码路径内容位置角色与权限管理官方指南external-docs/content/role-permission-management.md完整角色 × 动作访问矩阵packages/control-plane/docs/authz-access-matrix.mdGrants API 与数据访问限制字段packages/control-plane/README.mdCedar 种子策略每角色一份libs/common/src/coa_authorization/seed/API 鉴权器实现packages/control-plane/src/coa_control_plane/authorization/handler.pySQL Firewall表级/列级强制点packages/context-manager/src/coa_serve/tier2/sql_firewall.pygrant 字段的 API 契约models/src/main/smithy/grant.smithy一句话总结Context Ontology Accelerator 用 Cedar 管「能调什么 API」用 SQL Firewall 管「能读什么数据」5 种角色档位覆盖从平台管理员到只读分析师的全部场景而表级/列级授权让最小权限原则真正落到每一行数据上 ✅赞分享【免费下载链接】context-ontology-acceleratorAn open-source, ontology-based semantic context accelerator that enables AI agents to make more accurate, consistent, and explainable decisions.项目地址https://gitcode.com/gh_mirrors/co/context-ontology-accelerator点击查看免费下载相关推荐PojavLauncher iOS 终极指南三步自检、安装调优与排障一次讲清PojavLauncher iOS 终极指南三步自检、安装调优与排障一次讲清 想在 iPhone 或 iPad 上运行 Minecraft Java Edit移动开发游戏开发Unity游戏转微信小游戏3步导出全流程一次讲透Unity游戏转微信小游戏3步导出全流程一次讲透 Unity游戏想在微信小游戏平台再卖一遍又不想推倒重写Unity WebGL小游戏适配干的就是这事引擎游戏开发移动开发WebAssembly如何把整站网站下载并打包成 ZIPWebsite-downloader 实测笔记如何把整站网站下载并打包成 ZIPWebsite downloader 实测笔记 前阵子我想把一个技术文档站留一份本地副本浏览器的另存为只能存下当前这一后端网页爬虫上一篇Runebender 项目路线图解读未来功能规划与发展方向下一篇如何快速部署SQL Server Maintenance Solution5分钟安装教程创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考