Redis / المتوسط: صحة التطبيق والتنسيق / الدرس 12
العملاء وACL وTLS والوصول الآمن
افصل الاكتشاف والمصادقة والصلاحية والنقل، واستخدم عملاء محدودين ومتطلبات مفتاح وأمر ضيقة دون كشف الاعتماد أو الإدارة.
في هذه الصفحة
أهداف الدرس
- شرح مستخدم ACL ونطاق الأمر والمفتاح وTLS.
- تصميم المجمع والمهلة والعميل الواعي بالبنية.
نجاح الاتصال ليس سلطة العملية
الاتصال وTLS والهوية وإذن الأمر فحوص مختلفة. ظهرت ACL منذ6 وتحد المستخدم بالأمر والمفتاح والقناة المدعومة. لا تشفر الكلمة النقل ولا يفوض الاسم الوصول. استخدم دور خدمة ضرورياً لا إدارة لكل طلب. تختلف الإدارة المدارة فالتجهيز عملية بيئة معتمدة لا مقتطفاً عاماً.
اكتب متطلبات دون تغيير ACL
يصف JSON قارئاً خيالياً لا إعداد ACL تنفيذي. يحدد أوامر قليلة ونطاق مستأجر ونقلاً مع إبقاء السر خارجه. يترجم المالك لقواعد ويفحص المسموح والمرفوض. قد تضيف الشيفرة والقنوات والاكتشاف متطلبات؛ لا تعالج الرفض بفتح الكل دون حاجة مثبتة.
{
"identity": "lab-cache-reader",
"requiredCommands": ["GET", "MGET", "TTL"],
"keyScope": ["lab:training-a:cache:*"],
"transport": "validated-TLS",
"credentials": "provided-by-approved-secret-system"
}
لا ينشئ مستخدماً أو سراً أو ACL أو اتصالاً بل سياسة تنفذ وتفحص بالمنتج الفعلي.
حد الاتصالات واحمِ التدفقات ذات الحالة
أعد العميل وفق نموذج التزامن لا اتصالاً منفلتاً لكل طلب. قد تحتاج عمليات الانتظار والاشتراك وWATCH وMULTI اتصالاً مخصصاً. حدد مهل الاتصال والأمر والتطبيق وافهم إلغاء العمل مقابل وقف الانتظار. لا تزيد السعة بالمجمع وحده واحفظ الخطأ والهوية عند إعادة الاتصال.
اختبر نطاق التطبيق دون ادعاء مفوض إنتاج
تسمح الدالة بتطابق مستأجر وفعل محدد وتغفل عمداً إثبات الهوية والملكية وACL. اشتق مستأجر الفاعل من سياق خادم مصادق لا وسم الطلب. اختبر العابر والمرفوض مع الصحيح؛ لا يكفي اسم مفتاح مقبول ولا يعوض إذن الأمر تفويض العمل.
def allowed_model(subject_tenant, record_tenant, action):
return subject_tenant == record_tenant and action == 'read-cache'
assert allowed_model('training-a', 'training-a', 'read-cache')
assert not allowed_model('training-a', 'training-b', 'read-cache')
assert not allowed_model('training-a', 'training-a', 'admin')
تفحص المقارنات الاصطناعية فقط دون هوية أو ACL أو إذن حي.
طابق العميل بالبنية واحفظ الأسرار
يختلف اكتشاف Sentinel وCluster وقد لا يعالجه عميل مضيف ثابت. يجب أن توافق الشهادة كل وجهة مؤهلة لا البذرة فقط. احفظ السر وآثار التشخيص. الوضع المحمي حاجز لا تصميم شبكة وهوية وTLS كامل. راجع التوافق والقيود وافحص أقل صلاحية دون تغيير خدمة للتدريب.
الأخطاء الشائعة وإصلاحها
NOAUTH Authentication required.
- لماذا يحدث؟
- وصل الأمر لخادم يلزم المصادقة.
- كيف تصلحه؟
- استخدم الهوية والتدفق المعتمدين دون كشف.
- كيف تتجنب تكراره؟
- اختبر المصادقة وتسليم السر قبل النشر.
NOPERM this user has no permissions
- لماذا يحدث؟
- لا يملك الدور الأمر أو النطاق اللازم.
- كيف تصلحه؟
- راجع الرفض والحاجة الضيقة مع المالك.
- كيف تتجنب تكراره؟
- افحص رفض الزائد والقراءة المسموحة.
تضاعف إعادة المهلة كتابة
- لماذا يحدث؟
- عومل توقف الانتظار كعدم تنفيذ.
- كيف تصلحه؟
- صالح النتيجة واتبع العميل.
- كيف تتجنب تكراره؟
- اختبر الرد الضائع وإعادة الاتصال المحدودة.
اختبر فهمك
1. يصادق العميل ويرفض بادئة جديدة بـNOPERM. ماذا يراجع؟
اعرض الحل المشروح
افحص الأمر المرفوض ونمط المفتاح ومتطلب الخدمة المقصود. نجحت المصادقة، لذلك قد لا يفيد استبدال الاعتماد عشوائياً. ليقيم المالك المصرح تغييراً ضيقاً متوافقاً، مع اختبار الوصول المطلوب ورفض البادئات غير المرتبطة. لا تمنح إدارة عامة لمجرد إزالة رسالة الخطأ الظاهرة.
2. لماذا لا يشارك العامل المنتظر اتصاله عشوائياً بالطلبات؟
اعرض الحل المشروح
قد يشغل الاستخدام الحاجب أو ذو الحالة الاتصال أو يغير تدفق ردوده المتوقع، فيؤخر طلباً آخر أو يفسد معالجته. اتبع نمط الاتصال المخصص وسياسة المجمع المحدود في وثائق المكتبة. تفيد إعادة العملاء، لكنها لا تعني أن جميع عائلات الأوامر تستطيع مشاركة اتصال واحد بأمان دون معالجة خاصة.
أهم ما تعلمته
- الهوية وACL وTLS وتفويض التطبيق منفصلة.
- تحترم إعادة العميل الحالة والبنية والمجهول.