Benutzer und Rollen löschen
Um die Datensicherheit zu gewährleisten, empfiehlt es sich, nicht mehr benötigte Benutzer und Rollen zu löschen. In dieser Anleitung erfahren Sie, wie Sie Benutzer und Rollen löschen können.
Löschen eines Benutzers
Das folgende Beispiel zeigt, wie Sie den Benutzer user_1 löschen können.
Der Benutzer root kann nicht gelöscht werden.
from pymilvus import MilvusClient
client = MilvusClient(
uri="http://localhost:19530",
token="root:Milvus"
)
# create a user
client.drop_user(user_name="user_1")
import io.milvus.v2.client.ConnectConfig
import io.milvus.v2.client.MilvusClientV2
import io.milvus.v2.service.rbac.request.DropUserReq
ConnectConfig connectConfig = ConnectConfig.builder()
.uri("http://localhost:19530")
.token("root:Milvus")
.build();
MilvusClientV2 client = new MilvusClientV2(connectConfig);
DropUserReq dropUserReq = DropUserReq.builder()
.userName("user_1")
.build();
client.dropUser(dropUserReq);
import (
"context"
"fmt"
"github.com/milvus-io/milvus/client/v2/milvusclient"
)
ctx, cancel := context.WithCancel(context.Background())
defer cancel()
client, err := milvusclient.New(ctx, &milvusclient.ClientConfig{
Address: "localhost:19530",
APIKey: "root:Milvus",
})
if err != nil {
fmt.Println(err.Error())
// handle error
}
defer client.Close(ctx)
err = client.DropUser(ctx, milvusclient.NewDropUserOption("user_1"))
if err != nil {
fmt.Println(err.Error())
// handle error
}
const { MilvusClient, DataType } = require("@zilliz/milvus2-sdk-node")
const address = "http://localhost:19530";
const token = "root:Milvus";
const client = new MilvusClient({address, token});
milvusClient.deleteUser({
username: 'user_1'
})
export CLUSTER_ENDPOINT="http://localhost:19530"
export TOKEN="root:Milvus"
curl --request POST \
--url "${CLUSTER_ENDPOINT}/v2/vectordb/users/drop" \
--header "Authorization: Bearer ${TOKEN}" \
--header "Content-Type: application/json" \
-d '{
"userName": "user_1"
}'
Sobald der Benutzer gelöscht wurde, können Sie alle vorhandenen Benutzer auflisten, um zu überprüfen, ob der Löschvorgang erfolgreich war.
from pymilvus import MilvusClient
client.list_users()
import io.milvus.v2.service.rbac.request.listUsersReq
List<String> resp = client.listUsers();
users, err := client.ListUsers(ctx, milvusclient.NewListUserOption())
if err != nil {
fmt.Println(err.Error())
// handle error
}
const { MilvusClient, DataType } = require("@zilliz/milvus2-sdk-node")
await milvusClient.listUsers();
curl --request POST \
--url "${CLUSTER_ENDPOINT}/v2/vectordb/users/list" \
--header "Authorization: Bearer ${TOKEN}" \
--header "Content-Type: application/json" \
-d '{}'
Unten sehen Sie eine Beispielausgabe. Es gibt keine user_1 in der Liste. Der Löschvorgang ist erfolgreich.
['root']
Eine Rolle löschen
Das folgende Beispiel zeigt, wie die Rolle role_a gelöscht werden kann.
Die integrierte Rolle admin kann nicht gelöscht werden.
from pymilvus import MilvusClient
client.drop_role(role_name="role_a")
import io.milvus.v2.service.rbac.request.DropRoleReq
DropRoleReq dropRoleReq = DropRoleReq.builder()
.roleName("role_a")
.build();
client.dropRole(dropRoleReq);
err = client.DropRole(ctx, milvusclient.NewDropRoleOption("role_a"))
if err != nil {
fmt.Println(err.Error())
// handle error
}
const { MilvusClient, DataType } = require("@zilliz/milvus2-sdk-node")
await milvusClient.dropRole({
roleName: 'role_a',
});
curl --request POST \
--url "${CLUSTER_ENDPOINT}/v2/vectordb/roles/drop" \
--header "Authorization: Bearer ${TOKEN}" \
--header "Content-Type: application/json" \
-d '{
"roleName": "role_a"
}'
Sobald die Rolle gelöscht wurde, können Sie alle vorhandenen Rollen auflisten, um zu überprüfen, ob der Löschvorgang erfolgreich war.
from pymilvus import MilvusClient
client.list_roles()
List<String> resp = client.listRoles();
roles, err := client.ListRoles(ctx, milvusclient.NewListRoleOption())
if err != nil {
fmt.Println(err.Error())
// handle error
}
await client.listRoles({
includeUserInfo: true
});
curl --request POST \
--url "${CLUSTER_ENDPOINT}/v2/vectordb/roles/list" \
--header "Authorization: Bearer ${TOKEN}" \
--header "Content-Type: application/json" \
-d '{}'
Unten sehen Sie eine Beispielausgabe. Es gibt keine role_a in der Liste. Der Löschvorgang ist erfolgreich.
['admin']