> ## Documentation Index
> Fetch the complete documentation index at: https://docs2.openclaw.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# نطاقات المشغّل

تحدد نطاقات المُشغّل ما يمكن لعميل Gateway فعله بعد المصادقة.
وهي حاجز حماية لمستوى التحكم داخل نطاق مُشغّل Gateway موثوق واحد،
وليست عزلاً عدائياً متعدد المستأجرين. إذا كنت تحتاج إلى فصل قوي بين
الأشخاص أو الفرق أو الأجهزة، فشغّل Gateways منفصلة تحت مستخدمي نظام تشغيل
أو مضيفين منفصلين.

ذات صلة: [الأمان](/ar/gateway/security)، [بروتوكول Gateway](/ar/gateway/protocol)،
[إقران Gateway](/ar/gateway/pairing)، [CLI الأجهزة](/ar/cli/devices).

## الأدوار

يتصل عملاء WebSocket في Gateway بدور واحد:

* `operator`: عملاء مستوى التحكم مثل CLI، وControl UI، والأتمتة، وعمليات
  المساعدة الموثوقة.
* `node`: مضيفو القدرات مثل macOS أو iOS أو Android أو Node بلا واجهة
  يعرضون الأوامر عبر `node.invoke`.

تتطلب طرق RPC الخاصة بالمُشغّل دور `operator`. وتتطلب الطرق الصادرة من Node
دور `node`.

## مستويات النطاق

| النطاق                  | المعنى                                                                                                                                                                     |
| ----------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `operator.read`         | الحالة للقراءة فقط، والقوائم، والكتالوغ، والسجلات، وقراءات الجلسات، واستدعاءات مستوى التحكم الأخرى غير المعدِّلة.                                                          |
| `operator.write`        | إجراءات المُشغّل المعدِّلة العادية مثل إرسال الرسائل، واستدعاء الأدوات، وتحديث إعدادات Talk/الصوت، وترحيل أوامر Node. يفي أيضاً بـ `operator.read`.                        |
| `operator.admin`        | وصول إداري إلى مستوى التحكم. يفي بكل نطاقات `operator.*`. مطلوب لتعديل التكوين، والتحديثات، والخطافات الأصلية، ومساحات الأسماء المحجوزة الحساسة، والموافقات عالية الخطورة. |
| `operator.pairing`      | إدارة إقران الأجهزة وNode، بما في ذلك سرد سجلات الإقران أو رموز الأجهزة والموافقة عليها ورفضها وإزالتها وتدويرها وإلغاؤها.                                                 |
| `operator.approvals`    | واجهات API لموافقات exec وPlugin.                                                                                                                                          |
| `operator.talk.secrets` | قراءة تكوين Talk مع تضمين الأسرار.                                                                                                                                         |

تتطلب نطاقات `operator.*` المستقبلية غير المعروفة تطابقاً دقيقاً ما لم يكن لدى المستدعي
`operator.admin`.

## نطاق الطريقة هو البوابة الأولى فقط

لكل RPC في Gateway نطاق طريقة بأقل امتيازات. يقرر نطاق الطريقة هذا
ما إذا كان الطلب يمكنه الوصول إلى المعالج. ثم تطبّق بعض المعالجات فحوصات
أشد وقت الموافقة بناءً على الشيء المحدد الذي تتم الموافقة عليه أو تعديله.

أمثلة:

* يمكن الوصول إلى `device.pair.approve` باستخدام `operator.pairing`، لكن الموافقة على
  جهاز مُشغّل لا يمكنها إلا إصدار أو الحفاظ على النطاقات التي يملكها المستدعي بالفعل.
* يمكن الوصول إلى `node.pair.approve` باستخدام `operator.pairing`، ثم يشتق نطاقات
  موافقة إضافية من قائمة أوامر Node المعلقة.
* تكون `chat.send` عادة طريقة ضمن نطاق الكتابة، لكن أوامر `/config set`
  و`/config unset` المستمرة تتطلب `operator.admin` على مستوى الأمر.

يتيح هذا للمُشغّلين ذوي النطاق الأدنى تنفيذ إجراءات إقران منخفضة الخطورة من دون جعل
كل موافقات الإقران مقصورة على المسؤولين فقط.

## موافقات إقران الأجهزة

سجلات إقران الأجهزة هي المصدر الدائم للأدوار والنطاقات الموافق عليها.
لا تحصل الأجهزة المقترنة مسبقاً على وصول أوسع بصمت: تؤدي عمليات إعادة الاتصال التي تطلب
دوراً أوسع أو نطاقات أوسع إلى إنشاء طلب ترقية جديد معلق.

عند الموافقة على طلب جهاز:

* لا يحتاج الطلب الذي لا يتضمن دور مُشغّل إلى موافقة نطاق رمز المُشغّل.
* يتطلب طلب دور جهاز غير مُشغّل، مثل `node`،
  `operator.admin`، حتى عندما يكون `device.pair.approve` قابلاً للوصول باستخدام
  `operator.pairing`.
* يتطلب طلب `operator.read` أو `operator.write` أو `operator.approvals`
  أو `operator.pairing` أو `operator.talk.secrets` أن يمتلك المستدعي
  تلك النطاقات، أو `operator.admin`.
* يتطلب طلب `operator.admin` النطاق `operator.admin`.
* يمكن لطلب إصلاح بلا نطاقات صريحة أن يرث نطاقات رمز المُشغّل الموجودة.
  إذا كان ذلك الرمز الموجود ضمن نطاق المسؤول، فستظل الموافقة تتطلب
  `operator.admin`.

لا يمكن لجلسات السر المشترك غير الإدارية والوكيل الموثوق الموافقة على طلبات أجهزة المُشغّل
إلا داخل نطاقات المُشغّل المعلنة الخاصة بها. الموافقة على الأدوار غير الخاصة بالمُشغّل
مقصورة على المسؤولين فقط حتى عندما تتمكن تلك الجلسات بخلاف ذلك من استخدام
`operator.pairing`.

بالنسبة إلى جلسات رموز الأجهزة المقترنة، تكون الإدارة أيضاً ذاتية النطاق ما لم يكن لدى
المستدعي `operator.admin`: لا يرى المستدعون غير الإداريين إلا إدخالات الإقران الخاصة بهم،
ولا يمكنهم الموافقة أو الرفض إلا لطلبهم المعلق، ولا يمكنهم تدوير أو إلغاء أو إزالة إلا
إدخال أجهزتهم الخاص.

## موافقات إقران Node

يستخدم `node.pair.*` القديم مخزن إقران Node منفصلاً مملوكاً لـ Gateway. تستخدم WS Node
إقران الأجهزة مع `role: node`، لكن مفردات مستوى الموافقة نفسها تنطبق.

يستخدم `node.pair.approve` قائمة أوامر الطلب المعلق لاشتقاق نطاقات
مطلوبة إضافية:

* طلب بلا أوامر: `operator.pairing`
* أوامر Node غير exec: `operator.pairing` + `operator.write`
* `system.run` أو `system.run.prepare` أو `system.which`:
  `operator.pairing` + `operator.admin`

ينشئ إقران Node الهوية والثقة. ولا يستبدل سياسة موافقة exec
الخاصة بـ `system.run` في Node نفسه.

## مصادقة السر المشترك

تُعامل مصادقة رمز/كلمة مرور Gateway المشتركة كوصول مُشغّل موثوق
لذلك Gateway. تستعيد أسطح HTTP المتوافقة مع OpenAI، و`/tools/invoke`، ونقاط نهاية
سجل جلسات HTTP مجموعة نطاقات المُشغّل الافتراضية الكاملة العادية لمصادقة الحامل
بالسر المشترك، حتى إذا أرسل المستدعي نطاقات معلنة أضيق.

لا تزال الأوضاع الحاملة للهوية، مثل مصادقة الوكيل الموثوق أو `none` للإدخال الخاص،
قادرة على احترام النطاقات الصريحة المعلنة. استخدم Gateways منفصلة للفصل الحقيقي
لحدود الثقة.
