يتضمن ClickStack التحكم بالوصول المستند إلى الأدوار (RBAC)، ما يتيح لك تعريف أدوار مخصصة بأذونات دقيقة لـ لوحات المعلومات، وعمليات البحث المحفوظة، والمصادر، والتنبيهات، وwebhooks، ودفاتر الملاحظات. تعمل الأذونات على مستويين: الوصول على مستوى المورد (عدم الوصول، أو القراءة، أو الإدارة لكل نوع من الموارد) وقواعد دقيقة اختيارية تقيّد الوصول إلى الموارد الفردية بحسب الاسم أو العلامة أو المعرّف. يأتي ClickStack مع ثلاثة أدوار مدمجة، ويمكنك إنشاء أدوار مخصصة لتناسب احتياجات فريقك.
Managed ClickStack فقطيتوفر RBAC فقط في عمليات نشر Managed ClickStack.
المتطلبات الأساسية لوصول المستخدم
تتم المصادقة في ClickStack عبر ClickHouse Cloud. قبل أن تتمكن من تعيين أدوار ClickStack، يجب على كل مستخدم ما يلي:
- أن تتم دعوته إلى organization الخاصة بك في ClickHouse Cloud. يقوم Admin في organization بدعوة المستخدمين من Cloud Console. راجع Manage cloud users لمزيد من التفاصيل.
- أن يكون لديه حق الوصول إلى SQL Console على الـ service. انتقل إلى Settings → SQL Console Access واضبط مستوى permission المناسب:
| مستوى الوصول إلى Cloud SQL Console | مستوى الوصول إلى ClickStack |
|---|
| SQL Console Admin (وصول كامل) | وصول كامل إلى ClickStack. مطلوب لتفعيل alerts. |
| SQL Console Read Only (للقراءة فقط) | يمكنه عرض بيانات observability وإنشاء dashboards. |
| No access | لا يمكنه الوصول إلى ClickStack. |
بمجرد حصول المستخدم على وصول إلى Cloud، سيظهر في صفحة ClickStack إعدادات الفريق حيث يمكنك تعيين دور ClickStack له.
Cloud Users and roles
ClickStack Team Settings
يتضمن ClickStack ثلاثة أدوار على مستوى النظام. لا يمكنك تعديل هذه الأدوار أو حذفها. يُسنَد دور Admin إلى منشئ الفريق افتراضيًا.
| الإذن | Admin | Member | ReadOnly |
|---|
| قراءة جميع الموارد | ✓ | ✓ | ✓ |
| إدارة لوحات المعلومات | ✓ | ✓ | |
| إدارة عمليات البحث المحفوظة | ✓ | ✓ | |
| إدارة المصادر | ✓ | ✓ | |
| إدارة التنبيهات | ✓ | ✓ | |
| إدارة webhooks | ✓ | ✓ | |
| إدارة Notebooks | ✓ | ✓ | |
| تحديث إعدادات الفريق | ✓ | ✓ | |
| إنشاء الفرق وحذفها | ✓ | | |
| إدارة المستخدمين والدعوات | ✓ | | |
إسناد الأدوار إلى أعضاء الفريق
تعرض صفحة إعدادات الفريق جميع أعضاء الفريق مع دور كلٍّ منهم حاليًا. لتغيير أحد الأدوار، انقر على تعديل بجوار اسم المستخدم ثم اختر دورًا جديدًا. لكل مستخدم دور واحد فقط.
الدور الافتراضي للمستخدمين الجدد
يمكنك تعيين دور افتراضي للمستخدمين الجدد ضمن سياسات الأمان. ويُسند هذا الدور تلقائيًا إلى المستخدمين الجدد الذين ينضمون إلى الفريق تلقائيًا.
الانتقال إلى إعدادات الفريق
افتح إعدادات الفريق ثم مرّر لأسفل إلى RBAC Roles.إضافة دور جديد
انقر على + Add Role. أدخل Role Name وأضف Description اختياريًا.إعداد الأذونات وحفظها
اضبط أذونات الدور، ثم انقر على Create Role.
تظهر الأدوار المخصصة بجانب أدوار النظام في قسم RBAC Roles، مع عنصري التحكم Edit وDelete.
يمنح كل دور مستوى وصول لكل نوع من الموارد. والمستويات الثلاثة هي:
| مستوى الوصول | ما الذي يتيحه |
|---|
| بدون وصول | يكون نوع المورد مخفيًا تمامًا عن الدور. |
| قراءة | عرض المورد وإعداده، ولكن من دون إنشائه أو تعديله أو حذفه. |
| إدارة | تحكم كامل — إنشاء الموارد من هذا النوع وتعديلها وحذفها. |
أنواع الموارد التي يمكنك التحكم فيها هي:
- لوحات المعلومات — تخطيطات لوحات المعلومات والمخططات المحفوظة.
- عمليات البحث المحفوظة — استعلامات السجل/التتبّع/الأحداث المحفوظة.
- المصادر — إعدادات مصادر الاستيعاب.
- التنبيهات — قواعد التنبيه وإعدادات الإشعارات الخاصة بها.
- ويب هوك — وجهات الإشعارات الصادرة (مثل Slack وPagerDuty ونقاط نهاية HTTP العامة) التي تُرسِل إليها التنبيهات. ولا يشير هذا إلى واجهة برمجة تطبيقات ClickStack.
- دفاتر الملاحظات — دفاتر ملاحظات التحقيق التعاونية.
بالإضافة إلى أذونات الموارد، يتضمن كل دور إعدادين إداريين:
- المستخدمون (بدون وصول · وصول محدود) — يحدّد ما إذا كان بإمكان الدور عرض أعضاء الفريق وأدوارهم. ولا يملك صلاحية دعوة المستخدمين أو إزالتهم أو تحديثهم إلا Admins.
- الفريق (قراءة · إدارة) — يحدّد ما إذا كان بإمكان الدور عرض إعدادات الفريق أو تعديلها، مثل سياسات الأمان وإعدادات RBAC.
تدعم لوحات المعلومات وعمليات البحث المحفوظة والمصادر ودفاتر الملاحظات عناصر تحكم دقيقة تقيّد الوصول إلى موارد فردية ضمن فئة معيّنة. استخدم هذه العناصر عندما تحتاج إلى قصر الدور على موارد محددة بدلًا من منح وصول شامل إلى نوع المورد بالكامل.
الوصول الافتراضي مقابل عناصر التحكم الدقيقة
لكل نوع من الموارد وضع للتحكم في الوصول:
- الوصول الافتراضي — يطبّق مستوى وصول واحدًا (عدم الوصول أو القراءة أو الإدارة) على جميع الموارد من ذلك النوع.
- عناصر التحكم الدقيقة — تتيح لك تحديد قواعد وصول تطابق موارد معيّنة بناءً على شرط. أمّا الموارد التي لا تطابق أي قاعدة، فيُمنع الوصول إليها افتراضيًا.
للتبديل بين الوضعين، انقر على رمز السهم لتوسيع نوع مورد في محرر الدور، ثم بدّل وضع التحكم في الوصول.
تتكوّن كل قاعدة وصول من شرط ومستوى وصول. وتُطابِق الشروط الموارد استنادًا إلى خصائصها:
| حقل الشرط | المعاملات | ما الذي يطابقه | مثال |
|---|
| الاسم | is, contains | الاسم المعروض للمورد — على سبيل المثال، عنوان لوحة المعلومات. | الاسم يحتوي على production — يطابق أي لوحة معلومات تحتوي على “production” في عنوانها. |
| الوسم | is, contains | الوسوم المُعيَّنة للمورد عبر لوحة الوسوم في الزاوية العلوية اليمنى من عرض المورد. يتوفر ذلك فقط لـ لوحات المعلومات وSaved Searches ودفاتر الملاحظات. | الوسم يساوي critical — يطابق الموارد الموسومة بـ “critical”. |
| المعرّف | is, contains | معرّف المورد، ويمكن العثور عليه في شريط عنوان URL عند فتح المورد. | المعرّف يساوي abc123 — يطابق موردًا محددًا واحدًا. |
تُظهر لقطة الشاشة التالية معرّف لوحة المعلومات مميزًا في شريط عنوان URL، ووسم “TESTING” ظاهرًا في لوحة الوسوم (أعلى اليمين).
يمكنك إضافة قواعد متعددة لكل نوع مورد. ويُتحقق من كل قاعدة بشكل مستقل باستخدام منطق OR — ويكون المورد متاحًا إذا طابق أي قاعدة. أما الموارد التي لا تطابق أي قاعدة فلن تكون متاحة.
مثال: لمنح دورٍ ما وصولًا للقراءة فقط إلى لوحات معلومات الاختبار، وسّع لوحات المعلومات، وبدّل إلى عناصر التحكم الدقيقة، ثم أضف قاعدتين:
- الاسم
contains testing مع مستوى وصول Read
- الوسم
is testing مع مستوى وصول Read
تكون لوحة المعلومات التي تطابق أيًّا من القاعدتين متاحة.
يوفّر قسم سياسات الأمان في إعدادات الفريق ضوابط إضافية.
يحدّد الدور الافتراضي للمستخدم الجديد الدور الذي يُعيَّن تلقائيًا للمستخدمين الجدد الذين ينضمون إلى الفريق.
يتيح لك الذكاء الاصطناعي التوليدي تمكين الميزات المعتمدة على نماذج اللغة الكبيرة أو تعطيلها (مثل إنشاء الاستعلامات باللغة الطبيعية) باستخدام Anthropic أو Amazon Bedrock. وعند تعطيله، لا تُرسَل أي بيانات إلى موفّري خدمات الذكاء الاصطناعي.