مصادقة وصول المستخدم
يشرح هذا الدليل كيفية إدارة مصادقة المستخدم في Milvus، بما في ذلك تمكين المصادقة والاتصال كمستخدم وتعديل بيانات اعتماد المستخدم.
TLS ومصادقة المستخدم هما نهجان مختلفان للأمان. إذا قمت بتمكين كل من مصادقة المستخدم و TLS في نظام Milvus الخاص بك، يجب عليك توفير اسم مستخدم وكلمة مرور ومسارات ملفات الشهادات. للحصول على معلومات حول كيفية تمكين TLS، راجع التشفير في النقل.
تستخدم مقتطفات التعليمات البرمجية في هذه الصفحة MilvusClient الجديد (Python) للتفاعل مع Milvus. سيتم إصدار MilvusClient SDKs الجديدة للغات الأخرى في التحديثات المستقبلية.
تمكين مصادقة المستخدم
لتمكين مصادقة المستخدم لخادم Milvus الخاص بك، قم بتعيين common.security.authorizationEnabled إلى صواب في ملف تكوين Milvus milvus.yaml
. لمزيد من المعلومات حول التكوينات، راجع تكوين Milvus مع Docker Compose.
...
common:
...
security:
authorizationEnabled: true
...
لتمكين مصادقة المستخدم لخادم Milvus الخاص بك، قم بتعيين authorizationEnabled إلى صواب في ملف تكوين Milvus values.yaml
. لمزيد من المعلومات حول التكوينات، راجع تكوين ملف Milvus مع مخططات Helm.
...
extraConfigFiles:
user.yaml: |+
common:
security:
authorizationEnabled: true
...
لتمكين المصادقة، قم بتعيين spec.common.security.authorizationEnabled
إلى true
في ملف Milvus
CRD. للمزيد من المعلومات حول قرص مالفوس CRD، راجع تكوين ملف Milvus مع مشغل Milvus.
apiVersion: milvus.io/v1beta1
kind: Milvus
metadata:
name: my-release
labels:
app: milvus
spec:
# Omit other fields ...
config:
common:
security:
authorizationEnabled: true
الاتصال بـ Milvus مع المصادقة
بعد تمكين المصادقة، تحتاج إلى الاتصال بـ Milvus باستخدام اسم مستخدم وكلمة مرور. بشكل افتراضي، يتم إنشاء المستخدم root
باستخدام كلمة المرور Milvus
عند بدء تشغيل ملفوس. فيما يلي مثال على كيفية الاتصال بـ Milvus مع تمكين المصادقة باستخدام المستخدم الافتراضي root
:
# use default `root` user to connect to Milvus
from pymilvus import MilvusClient
client = MilvusClient(
uri='http://localhost:19530', # replace with your own Milvus server address
token="root:Milvus"
)
إنشاء مستخدم جديد
بمجرد الاتصال كمستخدم root
الافتراضي، يمكنك إنشاء مستخدم جديد والمصادقة عليه كما يلي:
# create a user
client.create_user(
user_name="user_1",
password="P@ssw0rd",
)
# verify the user has been created
client.describe_user("user_1")
# output
# {'user_name': 'user_1', 'roles': ()}
للمزيد من المعلومات حول إنشاء مستخدمين، راجع create_user().
الاتصال بـ Milvus باستخدام مستخدم جديد
اتصل باستخدام بيانات اعتماد المستخدم الذي تم إنشاؤه حديثاً:
# connect to milvus with the newly created user
client = MilvusClient(
uri="http://localhost:19530",
token="user_1:P@ssw0rd"
)
تحديث كلمة مرور المستخدم
قم بتغيير كلمة المرور لمستخدم موجود باستخدام الرمز التالي:
# update password
client.update_password(
user_name="user_1",
old_password="P@ssw0rd",
new_password="P@ssw0rd123"
)
لمزيد من المعلومات حول تحديث كلمات مرور المستخدم، راجع update_password().
إذا نسيت كلمة المرور القديمة، يوفر ميلفوس عنصر تهيئة يسمح لك بتعيين مستخدمين معينين كمستخدمين خارقين. هذا يلغي الحاجة إلى كلمة المرور القديمة عند إعادة تعيين كلمة المرور.
بشكل افتراضي، يكون الحقل common.security.superUsers
في ملف تكوين ملف Milvus فارغًا، مما يعني أنه يجب على جميع المستخدمين تقديم كلمة المرور القديمة عند إعادة تعيين كلمة المرور الخاصة بهم. ومع ذلك، يمكنك تعيين مستخدمين محددين كمستخدمين متميزين لا يحتاجون إلى تقديم كلمة المرور القديمة. في المقتطف أدناه، تم تعيين root
و foo
كمستخدمين متميزين.
يجب عليك إضافة عنصر التكوين أدناه في ملف تكوين ميلفوس الذي يحكم تشغيل مثيل ميلفوس الخاص بك.
common:
security:
superUsers: root, foo
إسقاط مستخدم
لإسقاط مستخدم، استخدم طريقة drop_user()
.
client.drop_user(user_name="user_1")
سرد جميع المستخدمين
سرد جميع المستخدمين.
# list all users
client.list_users()
القيود
- يجب ألا يكون اسم المستخدم فارغًا، ويجب ألا يتجاوز طوله 32 حرفًا. يجب أن يبدأ بحرف، وأن يحتوي فقط على أحرف سفلية أو أحرف أو أرقام.
- يجب أن تحتوي كلمة المرور على 6 أحرف على الأقل ويجب ألا يتجاوز طولها 256 حرفاً.
ما التالي
- قد ترغب أيضًا في معرفة كيفية القيام بـ
- إذا كنت مستعدًا لنشر مجموعتك على السحابة:
- تعرف على كيفية نشر Milvus على Amazon EKS باستخدام Terraform
- تعلم كيفية نشر مجموعة Milvus العنقودية على GCP باستخدام Kubernetes
- تعرف على كيفية نشر مجموعة ميلفوس على مايكروسوفت أزور باستخدام Kubernetes