User 操作
所有文档
menu
没有找到结果,请重新输入

向量数据库 VectorDB

User 操作

创建用户

接口描述

创建一个新的用户。

请求结构

POST /v{version}/user?create HTTP/1.1
HOST: {Endpoint}
Authorization: {Authorization}
{
    "username": "alice",
    "password": "********"
}

请求头域

除公共头域外,无其它特殊头域。

请求参数

参数名称 类型 是否必填 参数位置 描述
version String URL参数 API版本号,当前取1。
username String RequestBody参数 用户名称。
password String RequestBody参数 用户密码。

响应头域

除公共头域外,无其它特殊头域。

响应参数

参数名称 类型 描述
code Int 返回码
msg String 返回信息

请求示例

POST http://vdb.nXWNyPCOSLci.vdb.bj.baidubce.com/v1/user?create
Host: vdb.nXWNyPCOSLci.vdb.bj.baidubce.com
Authorization: Bearer account=root&api_key=eC4bLRy2va******************************
{
    "username": "alice",
    "password": "********"
}

响应示例

HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Date: Wed, 08 Jul 2024 03:28:11 GMT
Request-ID: d8752367-38e8-45e4-b4c7-e53be3137ce5
{
    "code": 0,
    "msg": "Success"
}

删除用户

接口描述

删除指定的用户。

请求结构

POST /v{version}/user?drop HTTP/1.1
HOST: {Endpoint}
Authorization: {Authorization}
{
    "username": "alice"
}

请求头域

除公共头域外,无其它特殊头域。

请求参数

参数名称 类型 是否必填 参数位置 描述
version String URL参数 API版本号,当前取1。
username String RequestBody参数 用户名称。

响应头域

除公共头域外,无其它特殊头域。

响应参数

参数名称 类型 描述
code Int 返回码
msg String 返回信息

请求示例

POST http://vdb.nXWNyPCOSLci.vdb.bj.baidubce.com/v1/user?drop
Host: vdb.nXWNyPCOSLci.vdb.bj.baidubce.com
Authorization: Bearer account=root&api_key=eC4bLRy2va******************************
{
    "username": "alice"
}

响应示例

HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Date: Wed, 08 Jul 2024 03:28:11 GMT
Request-ID: d8752367-38e8-45e4-b4c7-e53be3137ce5
{
    "code": 0,
    "msg": "Success"
}

修改用户密码

接口描述

修改指定用户的密码。密码修改规则如下:

  • 每个用户可以修改自身的密码,需要验证旧密码,旧密码可以从Authrization头获得。
  • 若root用户具备PASSWORD权限,那么root用户可以直接修改其它非root用户的密码,无需验证指定用户的旧密码(相当于直接重置非root用户的密码)。 故,在请求体中,始终无需指定目标用户的旧密码。

请求结构

POST /v{version}/user?changePassword HTTP/1.1
HOST: {Endpoint}
Authorization: {Authorization}
{
    "username": "alice",
    "newPassword": "********"
}

请求头域

除公共头域外,无其它特殊头域。

请求参数

参数名称 类型 是否必填 参数位置 描述
version String URL参数 API版本号,当前取1。
username String RequestBody参数 用户名称。
newPassword String RequestBody参数 用户的新密码。

响应头域

除公共头域外,无其它特殊头域。

响应参数

参数名称 类型 描述
code Int 返回码
msg String 返回信息

请求示例

POST http://vdb.nXWNyPCOSLci.vdb.bj.baidubce.com/v1/user?changePassword
Host: vdb.nXWNyPCOSLci.vdb.bj.baidubce.com
Authorization: Bearer account=root&api_key=eC4bLRy2va******************************
{
    "username": "alice",
    "newPassword": "********"
}

响应示例

HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Date: Wed, 08 Jul 2024 03:28:11 GMT
Request-ID: d8752367-38e8-45e4-b4c7-e53be3137ce5
{
    "code": 0,
    "msg": "Success"
}

授权用户以角色

接口描述

将指定的的一个或多个角色授权给指定的用户,完成授权之后,该用户自动获得这些角色具备的所有权限。

请求结构

POST /v{version}/user?grantRoles HTTP/1.1
HOST: {Endpoint}
Authorization: {Authorization}
{
    "username": "alice",
    "roles": ["readable", "writable"]
}

请求头域

除公共头域外,无其它特殊头域。

请求参数

参数名称 类型 是否必填 参数位置 描述
version String URL参数 API版本号,当前取1。
username String RequestBody参数 用户名称。
roles List String RequestBody参数 角色列表。

响应头域

除公共头域外,无其它特殊头域。

响应参数

参数名称 类型 描述
code Int 返回码
msg String 返回信息

请求示例

POST http://vdb.nXWNyPCOSLci.vdb.bj.baidubce.com/v1/user?grantRoles
Host: vdb.nXWNyPCOSLci.vdb.bj.baidubce.com
Authorization: Bearer account=root&api_key=eC4bLRy2va******************************
{
    "username": "alice",
    "roles": ["readable", "writable"]
}

响应示例

HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Date: Wed, 08 Jul 2024 03:28:11 GMT
Request-ID: d8752367-38e8-45e4-b4c7-e53be3137ce5
{
    "code": 0,
    "msg": "Success"
}

回收用户的角色

接口描述

回收指定用户的指定的一个或多个角色,完成回收之后,该用户不再具备由这些角色提供的权限。需要注意的是,用户可能具备独立权限。

请求结构

POST /v{version}/user?revokeRoles HTTP/1.1
HOST: {Endpoint}
Authorization: {Authorization}
{
    "username": "alice",
    "roles": ["readable", "writable"]
}

请求头域

除公共头域外,无其它特殊头域。

请求参数

参数名称 类型 是否必填 参数位置 描述
version String URL参数 API版本号,当前取1。
username String RequestBody参数 用户名称。
roles List String RequestBody参数 角色列表。

响应头域

除公共头域外,无其它特殊头域。

响应参数

参数名称 类型 描述
code Int 返回码
msg String 返回信息

请求示例

POST http://vdb.nXWNyPCOSLci.vdb.bj.baidubce.com/v1/user?revokeRoles
Host: vdb.nXWNyPCOSLci.vdb.bj.baidubce.com
Authorization: Bearer account=root&api_key=eC4bLRy2va******************************
{
    "username": "alice",
    "roles": ["readable", "writable"]
}

响应示例

HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Date: Wed, 08 Jul 2024 03:28:11 GMT
Request-ID: d8752367-38e8-45e4-b4c7-e53be3137ce5
{
    "code": 0,
    "msg": "Success"
}

授权用户以权限

接口描述

将指定的一个或多个权限元组(Privilege Tuple)授权给指定的用户。支持同时授权具体的权限和权限组(Privilege Group)。

请求结构

POST /v{version}/user?grantPrivileges HTTP/1.1
HOST: {Endpoint}
Authorization: {Authorization}
{
    "username": "alice",
    "privilegeTuples": [
         {
             "database": "*",
             "table": "*",
             "privileges": ["QUERY", "SELECT", "SEARCH"]
         },
         {
             "database": "KnowledgeBase",
             "table": "DocumentChunks",
             "privileges": ["TABLE_CONTROL", "TABLE_READWRITE"]
         }
     ]
}

请求头域

除公共头域外,无其它特殊头域。

请求参数

参数名称 类型 是否必填 参数位置 描述
version String URL参数 API版本号,当前取1。
username String RequestBody参数 用户名称。
privilegeTuples List PrivilegeTuple RequestBody参数 权限元组列表。

PrivilegeTuple

参数名称 类型 是否必填 描述
database String 库的名称。‘*’代表任意库。
table String 表的名称。‘*’代表任意表。需要注意的是,不支持“*.T1”这样的库表组合,仅支持如下三种组合:
*.*:表示任意库的任意表
A.*:表示库A的任意表
A.T1:表示库A的表T1
privileges List String 权限(组)列表。

响应头域

除公共头域外,无其它特殊头域。

响应参数

参数名称 类型 描述
code Int 返回码
msg String 返回信息

请求示例

POST http://vdb.nXWNyPCOSLci.vdb.bj.baidubce.com/v1/user?grantPrivileges
Host: vdb.nXWNyPCOSLci.vdb.bj.baidubce.com
Authorization: Bearer account=root&api_key=eC4bLRy2va******************************
{
    "username": "alice",
    "privilegeTuples": [
         {
             "database": "*",
             "table": "*",
             "privileges": ["QUERY", "SELECT", "SEARCH"]
         },
         {
             "database": "KnowledgeBase",
             "table": "DocumentChunks",
             "privileges": ["TABLE_CONTROL", "TABLE_READWRITE"]
         }
     ]
}

响应示例

HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Date: Wed, 08 Jul 2024 03:28:11 GMT
Request-ID: d8752367-38e8-45e4-b4c7-e53be3137ce5
{
    "code": 0,
    "msg": "Success"
}

回收用户的权限

接口描述

回收指定用户的指定的一个或多个权限元组(Privilege Tuple)。支持同时回收具体的权限和权限组(Privilege Group)。

请求结构

POST /v{version}/user?revokePrivileges HTTP/1.1
HOST: {Endpoint}
Authorization: {Authorization}
{
    "username": "alice",
    "privilegeTuples": [
         {
             "database": "*",
             "table": "*",
             "privileges": ["QUERY", "SELECT", "SEARCH"]
         },
         {
             "database": "KnowledgeBase",
             "table": "DocumentChunks",
             "privileges": ["TABLE_CONTROL", "TABLE_READWRITE"]
         }
     ]
}

请求头域

除公共头域外,无其它特殊头域。

请求参数

参数名称 类型 是否必填 参数位置 描述
version String URL参数 API版本号,当前取1。
username String RequestBody参数 用户名称。
privilegeTuples List PrivilegeTuple RequestBody参数 权限元组列表。

PrivilegeTuple

参数名称 类型 是否必填 描述
database String 库的名称。‘*’代表任意库。
table String 表的名称。‘*’代表任意表。
需要注意的是,不支持“*.T1”这样的库表组合,仅支持如下三种组合:
*.*:表示任意库的任意表
A.*:表示库A的任意表
A.T1:表示库A的表T1
privileges List String 权限(组)列表。

响应头域

除公共头域外,无其它特殊头域。

响应参数

参数名称 类型 描述
code Int 返回码
msg String 返回信息

请求示例

POST http://vdb.nXWNyPCOSLci.vdb.bj.baidubce.com/v1/user?revokePrivileges
Host: vdb.nXWNyPCOSLci.vdb.bj.baidubce.com
Authorization: Bearer account=root&api_key=eC4bLRy2va******************************
{
    "username": "alice",
    "privilegeTuples": [
         {
             "database": "*",
             "table": "*",
             "privileges": ["QUERY", "SELECT", "SEARCH"]
         },
         {
             "database": "KnowledgeBase",
             "table": "DocumentChunks",
             "privileges": ["TABLE_CONTROL", "TABLE_READWRITE"]
         }
     ]
}

响应示例

HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Date: Wed, 08 Jul 2024 03:28:11 GMT
Request-ID: d8752367-38e8-45e4-b4c7-e53be3137ce5
{
    "code": 0,
    "msg": "Success"
}

展示用户的权限

接口描述

展示指定用户的所有权限,以及角色。

请求结构

POST /v{version}/user?showPrivileges HTTP/1.1
HOST: {Endpoint}
Authorization: {Authorization}
{
    "username": "alice"
}

请求头域

除公共头域外,无其它特殊头域。

请求参数

参数名称 类型 是否必填 参数位置 描述
version String URL参数 API版本号,当前取1。
username String RequestBody参数 用户名称。

响应头域

除公共头域外,无其它特殊头域。

响应参数

参数名称 类型 描述
code Int 返回码
msg String 返回信息
privilegeTuples List PrivilegeTuple 权限元组列表。

PrivilegeTuple

参数名称 类型 描述
database String 库的名称。‘*’代表任意库。
table String 表的名称。‘*’代表任意表。
privileges List String 权限列表。需要注意的是,在响应体中,不会展示权限组,而是展示所有的具体权限。

请求示例

POST http://vdb.nXWNyPCOSLci.vdb.bj.baidubce.com/v1/user?showPrivileges
Host: vdb.nXWNyPCOSLci.vdb.bj.baidubce.com
Authorization: Bearer account=root&api_key=eC4bLRy2va******************************
{
    "username": "alice"
}

响应示例

HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Date: Wed, 08 Jul 2024 03:28:11 GMT
Request-ID: d8752367-38e8-45e4-b4c7-e53be3137ce5
{
    "roles": [
        {
            "role": "writable",
            "privilegeTuples": [
                 {
                     "database": "*",
                     "table": "*",
                     "privileges": ["INSERT", "UPSERT", "UPDATE", "DELETE"]
                 }
            ]
        },
        {
            "role": "knowledge_base_writable",
            "privilegeTuples": [
                 {
                     "database": "*",
                     "table": "*",
                     "privileges": ["QUERY", "SELECT", "SEARCH"]
                 },
                 {
                     "database": "KnowledgeBase",
                     "table": "*",
                     "privileges": ["INSERT", "UPSERT", "UPDATE", "DELETE"]
                 }
            ]
        }
    ],
    "privilegeTuples": [
         {
             "database": "*",
             "table": "*",
             "privileges": ["QUERY", "SELECT", "SEARCH"]
         },
         {
             "database": "KnowledgeBase",
             "table": "DocumentChunks",
             "privileges": ["CREATE_TABLE", "DROP_TABLE", "ALTER_TABLE", "INSERT", ...]
         }
     ],
    "code": 0,
    "msg": "Success"
}

根据权限筛选用户

接口描述

根据指定的一个或多个权限元组(Privilege Tuple)和/或一个或多个角色来筛选同时满足这些权限要求的用户。权限元组和角色都是可选的,若不指定任何权限和任何角色,则等价于列出所有用户。

请求结构

POST /v{version}/user?select HTTP/1.1
HOST: {Endpoint}
Authorization: {Authorization}
{
    "roles": ["writable"],
    "privilegeTuples": [
         {
             "database": "*",
             "table": "*",
             "privileges": ["QUERY", "SELECT", "SEARCH"]
         },
         {
             "database": "KnowledgeBase",
             "table": "DocumentChunks",
             "privileges": ["TABLE_CONTROL", "TABLE_READWRITE"]
         }
     ]
}

请求头域

除公共头域外,无其它特殊头域。

请求参数

参数名称 类型 是否必填 参数位置 描述
version String URL参数 API版本号,当前取1。
roles List String RequestBody参数 角色名称列表。
privilegeTuples List PrivilegeTuple RequestBody参数 权限元组列表。

PrivilegeTuple

参数名称 类型 是否必填 描述
database String 库的名称。‘*’代表任意库。
table String 表的名称。‘*’代表任意表。
需要注意的是,不支持“*.T1”这样的库表组合,仅支持如下三种组合:
*.*:表示任意库的任意表
A.*:表示库A的任意表
A.T1:表示库A的表T1
privileges List String 权限(组)列表。

响应头域

除公共头域外,无其它特殊头域。

响应参数

参数名称 类型 描述
code Int 返回码
msg String 返回信息
users List String 用户列表

请求示例

POST http://vdb.nXWNyPCOSLci.vdb.bj.baidubce.com/v1/user?select
Host: vdb.nXWNyPCOSLci.vdb.bj.baidubce.com
Authorization: Bearer account=root&api_key=eC4bLRy2va******************************
{
    "roles:" ["writable"],
    "privilegeTuples": [
         {
             "database": "*",
             "table": "*",
             "privileges": ["QUERY", "SELECT", "SEARCH"]
         },
         {
             "database": "KnowledgeBase",
             "table": "DocumentChunks",
             "privileges": ["TABLE_CONTROL", "TABLE_READWRITE"]
         }
     ]
}

响应示例

HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Date: Wed, 08 Jul 2024 03:28:11 GMT
Request-ID: d8752367-38e8-45e4-b4c7-e53be3137ce5
{
    "users": ["root", "alice"],
    "code": 0,
    "msg": "Success"
}
上一篇
Role 操作
下一篇
SDK