- عندما تكون قاعدة البيانات في شبكة لا يمكن الوصول إليها مباشرة من الإنترنت، كان النهج التقليدي يقضي بوضع خادم وسيط SSH مع فتح المنفذ 22 على الإنترنت وإدارة ملفات المفاتيح. يشرح هذا المقال كيفية الاتصال بـ RDS أو Aurora من عميل قاعدة بيانات محلي باستخدام Session Manager من AWS Systems Manager دون فتح منافذ.
- يعمل Session Manager لأن SSM Agent المثبت على الخادم EC2 يفتح اتصال HTTPS صادرًا نحو AWS، لذلك لا تحتاج مجموعة الأمان إلى قواعد واردة. غير أن المؤلف يوضح أنه لا يمكن تثبيت Agent على RDS، لذلك ما زال خادم وسيط واحد من نوع EC2 مطلوبًا.
- الإعداد الذي يشغله المؤلف يضع Aurora PostgreSQL في شبكة فرعية خاصة لا يوجد لها مسار إلى الإنترنت، ويُبقي خادم وسيطًا من نوع t4g.nano دون زوج مفاتيح وبلا قواعد واردة مغلقًا معظم الوقت. يقدم النص الأصلي هذا بوصفه حالة تشغيلية للمؤلف، ولا يتضمن نتائج التحقق من حدود التكلفة أو الأداء 3.
- بحسب النص الأصلي، يُتحكم في الوصول بصلاحية ssm:StartSession في سياسات IAM، ويُسجَّل بدء الجلسات وانتهاؤها في CloudTrail. ويذكر النص صراحةً أن محتوى استعلامات SQL المتبادلة مع قاعدة البيانات في جلسات إعادة توجيه المنافذ لا يُسجَّل.
O: هذه المقالة مفيدة لمطور الواجهة الخلفية الذي يحتاج إلى الاتصال بقاعدة RDS في شبكة فرعية خاصة باستخدام عميل قاعدة بيانات محلي، عند تجربة إعادة توجيه المنافذ عبر Session Manager مرة واحدة دون فتح المنفذ 22.
X: يوضح الأصل أنه ما زال يلزم جهاز EC2 وسيطا، وأن استخدام نقطة نهاية VPC أو بوابة NAT يضيف تكاليف شهرية، لذلك ينبغي دراسة هيكل التكلفة قبل اعتماد هذا الحل.