public interface IAMService
| 限定符和类型 | 方法和说明 |
|---|---|
default void |
createRole(String roleName)
创建的角色
|
default void |
createUser(String userName,
String password)
创建用户
|
default io.milvus.v2.service.rbac.response.DescribeRoleResp |
describeRole(String roleName)
获取指定角色的权限信息。
|
default io.milvus.v2.service.rbac.response.DescribeUserResp |
describeUser(String userName)
获取指定用户的详细信息。
|
default void |
dropRole(String roleName)
删除指定的自定义角色。
|
default void |
dropUser(String userName)
删除指定的用户。
|
io.milvus.v2.client.MilvusClientV2 |
getClient() |
default void |
grantPrivilege(String roleName,
String objectType,
String privilege,
String objectName)
授予角色特定的权限。
|
default void |
grantRole(String roleName,
String userName)
授予用户特定角色。
|
default List<String> |
listRoles()
列出所有自定义角色。
|
default List<String> |
listUsers()
列出所有现有用户的用户名。
|
default void |
revokePrivilege(String roleName,
String objectType,
String privilege,
String objectName,
String databaseName)
撤销已分配给角色的权限。
|
default void |
revokeRole(String roleName,
String userName)
撤销用户的角色。
|
default void |
updatePassword(String userName,
String password,
String newPassword)
更新指定用户的密码。
|
io.milvus.v2.client.MilvusClientV2 getClient()
default void createRole(String roleName)
roleName - 要创建的角色的名称default void createUser(String userName, String password)
userName - 要创建的用户的名称。password - 要创建的用户的密码default io.milvus.v2.service.rbac.response.DescribeRoleResp describeRole(String roleName)
此方法通过调用Milvus客户端的describeRole函数来查询指定角色的权限详情。
返回的DescribeRoleResp对象包含了一个GrantInfo列表,每个GrantInfo对象描述了角色被分配的单个权限。
详情:
每个GrantInfo对象包含以下信息:
objectType - 被授予权限的对象类型。permission - 授予对象的特定权限。objectName - 被授予权限的对象名称。dbName - 与授予的权限关联的数据库名称。grantor - 授予权限的实体(用户或角色)的名称。异常处理:
如果在操作期间发生错误,可能会抛出MilvusClientExceptions异常。调用者应适当处理此类异常。
roleName - 要查询其权限的角色名称。DescribeRoleResp对象。default io.milvus.v2.service.rbac.response.DescribeUserResp describeUser(String userName)
此方法通过调用 Milvus 客户端的 API 来检索与特定用户名称相关联的角色和权限信息。
userName - 要查询的用户名称。DescribeUserRespdefault void dropRole(String roleName)
此方法通过调用 Milvus 客户端的 API 来删除一个自定义角色。
roleName - 要删除的角色名称。DropRoleReqdefault void dropUser(String userName)
此方法通过调用 Milvus 客户端的 API 来删除一个用户。
userName - 要删除的用户名。DropUserReqdefault void grantPrivilege(String roleName, String objectType, String privilege, String objectName)
在基于角色的访问控制(RBAC)模型中,此方法用于将特定的权限授予给角色。 角色可以是集合(Collection)、全局(Global)或用户(User)角色。 权限必须先授予角色,然后用户通过该角色继承相应的权限。
例如,如果想要授予一个角色对某个集合执行创建索引操作的权限,可以这样调用:
grantPrivilege("roleName", "Collection", "CreateIndex", "collectionName");
对于全局权限,例如创建集合,可以省略对象名称或传递特定的 API 名称:
grantPrivilege("adminRole", "Global", "CreateCollection", "");
权限名称和对象名称是区分大小写的。要授予对某种类型对象的所有操作权限,可以使用通配符 "*"。 例如,授予一个角色对所有集合的所有操作权限:
grantPrivilege("adminRole", "Collection", "*", "");
roleName - 要授予权限的角色名称。objectType - 权限对象的类型,例如 "Collection", "Global", 或 "User"。privilege - 要授予的权限名称,例如 "CreateIndex", "DropCollection", 或通配符 "*"。objectName - 权限适用的对象名称,对于集合类型对象,应提供集合名称;对于全局操作,可以为空或指定 API。default void grantRole(String roleName, String userName)
在基于角色的访问控制(RBAC)模型中,此方法用于将一个角色授予给一个已存在的用户。 用户通过被授予的角色继承相应的权限。
roleName - 要授予给用户的角色名称。userName - 已存在的用户名称。MilvusClientV2.grantRole(GrantRoleReq)default List<String> listRoles()
此方法调用 Milvus 客户端的 API,以获取系统中定义的所有自定义角色的名称列表。
MilvusClientV2.listRoles()default List<String> listUsers()
此方法调用 Milvus 客户端的 API,以获取系统中所有现有用户的用户名列表。
MilvusClientV2.listUsers()default void revokePrivilege(String roleName, String objectType, String privilege, String objectName, String databaseName)
在基于角色的访问控制(RBAC)模型中,此方法用于撤销先前分配给角色的特定权限。 可选的数据库名称参数可以限制在指定数据库中撤销权限。
roleName - 要从中撤销权限的角色名称。objectType - 权限对象的类型。可能的值包括 "Global", "Collection", 和 "User"。privilege - 要撤销的权限名称。具体权限详情请参阅用户和角色表中的 "Privilege name" 列。objectName - 要撤销权限的 API 名称。可以使用通配符 "*" 来表示所有适用的 API。databaseName - 可选的数据库名称,用于限制权限撤销的范围在指定数据库内。MilvusClientV2.revokePrivilege(RevokePrivilegeReq)default void revokeRole(String roleName, String userName)
在基于角色的访问控制(RBAC)模型中,此方法用于撤销之前授予用户的特定角色。 用户将失去通过该角色获得的所有权限。
roleName - 要撤销的角色名称。userName - 现有用户的用户名。MilvusClientV2.revokeRole(RevokeRoleReq)Copyright © 2024. All rights reserved.