You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

是否可通过Hasura metadata API的REST接口创建非继承类新角色

Hasura 通过 Metadata REST API 创建独立角色的实现方案

Hasura 原生支持通过 Metadata REST API 直接创建独立角色,不需要使用继承角色功能,完全可以满足你的需求,具体实现方式如下:

接口基本要求

  • 请求地址:https://<你的Hasura实例域名>/v1/metadata
  • 请求方法:POST
  • 必传请求头:
    • Content-Type: application/json
    • X-Hasura-Admin-Secret: <你的管理员密钥> (必须使用管理员权限调用该接口)

创建独立角色的逻辑

注意:Hasura 没有单独的「新增角色」接口,角色不需要提前声明,只要你首次为某个不存在的角色名配置任意资源的权限规则,该角色就会自动创建,完全独立,不需要继承任何现有角色。

示例请求

以下示例会创建一个名为 ordinary_user 的独立角色,并且为其配置 users 表的查询权限:

{
  "type": "pg_create_select_permission",
  "args": {
    "source": "default",
    "table": "users",
    "role": "ordinary_user",
    "permission": {
      "columns": ["id", "username", "avatar"],
      "filter": {
        "id": "X-Hasura-User-Id"
      }
    }
  }
}

如果需要为该角色新增其他操作权限,只需要调用对应的 pg_create_insert_permission、pg_create_update_permission、pg_create_delete_permission 接口,保持role字段值和你创建的角色名一致即可。

验证角色创建结果

调用 Metadata 导出接口即可查看所有已存在的角色:

{
  "type": "export_metadata",
  "args": {}
}

在返回结果的 metadata.permissions 字段下,可以查看到你创建的角色对应的权限配置,确认存在即为创建成功。


内容的提问来源于stack exchange,提问作者Nishad Ceroen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 22:57:03