关于milvus
在运行官方文档的User- and RBAC-related methods中的describe_role()的代码的时候出现错误,一直授予权限不成功。https://milvus.io/api-reference/pymilvus/v2.4.x/MilvusClient/Authentication/describe_role.md
官方代码:
python
from pymilvus import MilvusClient
client = MilvusClient(
uri="http://localhost:19530",
token="root:Milvus"
)
client.create_role(role_name="read_only")
client.grant_privilege(
role_name="read_only",
object_type="Global",
privilege="DescribeCollection",
object_name="*"
)
client.describe_role(role_name="read_only")
我的代码:
from pymilvus import MilvusClient
# 连接milvus数据库
client = MilvusClient(
uri="http://127.0.0.1:19530",
token="root:Milvus"
)
# #创建用户--用户名只能包含数字、字母和下划线
# client.create_user(user_name="Liao_13", password="Jl790106")
# #创建一个角色
client.create_role(role_name="roleA")
# #先创建角色与用户才能授予
# #授予角色--赋予用户角色
client.grant_role(
user_name="Liao_13",
role_name="roleA"
# )
# 授予权限
client.grant_privilege(
role_name="read_only",
object_type="Global",
privilege="READ",
object_name="*",
#要向一种对象授予所有权限,例如 Collection、Global、User,请使用“*”作为权限名称。
)
res3 = client.describe_role(role_name="read_only")
print(res3)
报错:
第一个
D:\SOFT\Python\python.exe "D:\code\Python\Local\Database\user 和 RBAC 相关.py"
RPC 错误:[grant_privilege], ,
回溯(最近一次调用最后一次):
文件“D:\code\Python\Local\Database\user and RBAC-lated.py”,第 62 行,位于
客户端.grant_privilege(
文件“D:\SOFT\Python\Lib\site-packages\pymilvus\milvus_client\milvus_client.py”,第 925 行,位于 grant_privilege 中
conn.grant_privilege(
文件“D:\SOFT\Python\Lib\site-packages\pymilvus\decorators.py”,第 147 行,在处理程序中
从 e 提高 e
文件“D:\SOFT\Python\Lib\site-packages\pymilvus\decorators.py”,第 143 行,在处理程序中
返回 func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^
文件“D:\SOFT\Python\Lib\site-packages\pymilvus\decorators.py”,第 182 行,在处理程序中
返回 func(self, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
文件“D:\SOFT\Python\Lib\site-packages\pymilvus\decorators.py”,第 122 行,在处理程序中
从 e 提高 e
文件“D:\SOFT\Python\Lib\site-packages\pymilvus\decorators.py”,第 87 行,在处理程序中
返回 func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^
文件“D:\SOFT\Python\Lib\site-packages\pymilvus\client\grpc_handler.py”,第 1803 行,位于 grant_privilege 中
检查状态(分别)
文件“D:\SOFT\Python\Lib\site-packages\pymilvus\client\utils.py”,第 63 行,在 check_status 中
引发 MilvusException(status.code, status.reason, status.error_code)
pymilvus.exceptions.MilvusException:
进程已完成,退出代码为 1
第二个:
D:\SOFT\Python\python.exe "D:\code\Python\Local\Database\user and RBAC-related.py"
RPC error: [grant_privilege], <MilvusException: (code=65535, message=not found the privilege name[READ])>, <Time:{'RPC start': '2024-07-29 11:22:45.645211', 'RPC error': '2024-07-29 11:22:45.648535'}>
Traceback (most recent call last):
File "D:\code\Python\Local\Database\user and RBAC-related.py", line 68, in <module>
client.grant_privilege(
File "D:\SOFT\Python\Lib\site-packages\pymilvus\milvus_client\milvus_client.py", line 925, in grant_privilege
conn.grant_privilege(
File "D:\SOFT\Python\Lib\site-packages\pymilvus\decorators.py", line 147, in handler
raise e from e
File "D:\SOFT\Python\Lib\site-packages\pymilvus\decorators.py", line 143, in handler
return func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^
File "D:\SOFT\Python\Lib\site-packages\pymilvus\decorators.py", line 182, in handler
return func(self, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\SOFT\Python\Lib\site-packages\pymilvus\decorators.py", line 122, in handler
raise e from e
File "D:\SOFT\Python\Lib\site-packages\pymilvus\decorators.py", line 87, in handler
return func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^
File "D:\SOFT\Python\Lib\site-packages\pymilvus\client\grpc_handler.py", line 1803, in grant_privilege
check_status(resp)
File "D:\SOFT\Python\Lib\site-packages\pymilvus\client\utils.py", line 63, in check_status
raise MilvusException(status.code, status.reason, status.error_code)
pymilvus.exceptions.MilvusException: <MilvusException: (code=65535, message=not found the privilege name[READ])>
D:\SOFT\Python\python.exe "D:\code\Python\Local\Database\user and RBAC-related.py"
RPC error: [grant_privilege], <MilvusException: (code=65535, message=fail to get authorization from the md, authorize:[authorization])>, <Time:{'RPC start': '2024-07-29 08:27:15.795416', 'RPC error': '2024-07-29 08:27:15.796491'}>
Traceback (most recent call last):
File "D:\code\Python\Local\Database\user and RBAC-related.py", line 62, in <module>
client.grant_privilege(
File "D:\SOFT\Python\Lib\site-packages\pymilvus\milvus_client\milvus_client.py", line 925, in grant_privilege
conn.grant_privilege(
File "D:\SOFT\Python\Lib\site-packages\pymilvus\decorators.py", line 147, in handler
raise e from e
File "D:\SOFT\Python\Lib\site-packages\pymilvus\decorators.py", line 143, in handler
return func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^
File "D:\SOFT\Python\Lib\site-packages\pymilvus\decorators.py", line 182, in handler
return func(self, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\SOFT\Python\Lib\site-packages\pymilvus\decorators.py", line 122, in handler
raise e from e
File "D:\SOFT\Python\Lib\site-packages\pymilvus\decorators.py", line 87, in handler
return func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^
File "D:\SOFT\Python\Lib\site-packages\pymilvus\client\grpc_handler.py", line 1803, in grant_privilege
check_status(resp)
File "D:\SOFT\Python\Lib\site-packages\pymilvus\client\utils.py", line 63, in check_status
raise MilvusException(status.code, status.reason, status.error_code)
pymilvus.exceptions.MilvusException: <MilvusException: (code=65535, message=fail to get authorization from the md, authorize:[authorization])>
Process finished with exit code 1