أفضل طريقة لإتقان IAM هي كتابة السياسات بنفسك. هذه تمارين متدرّجة تطبّق ما تعلّمته في أساسيات IAM والأقلّ امتياز.
🔒 مراجعة أمنية مطلوبة: صفحة أمنية؛ تخضع لمراجعة متخصّص قبل النشر.
تذكير ببنية السياسة
كل سياسة مستند JSON فيه Statement، ولكل عبارة: Effect (سماح/منع)، وAction (الإجراءات)، وResource (الموارد). الهدف دائمًا: الأضيق الممكن.
تمرين 1 — قراءة فقط من حاوية
المطلوب: اكتب سياسة تسمح بقراءة الكائنات (لا كتابتها ولا حذفها) من حاوية اسمها reports-2026 فقط.
تلميح
استخدم الإجراء s3:GetObject، والمورد arn:aws:s3:::reports-2026/*. لا تستخدم s3:*.
تمرين 2 — إدارة كائنات حاوية واحدة
المطلوب: سياسة تسمح بالقراءة والرفع والحذف داخل حاوية uploads، دون أي وصول لحاويات أخرى.
تلميح
اجمع الإجراءات s3:GetObject وs3:PutObject وs3:DeleteObject في Action، وحصر Resource بـ arn:aws:s3:::uploads/*.
تمرين 3 — منع صريح
المطلوب: مستخدم لديه صلاحيات واسعة على S3، لكنّك تريد منعه صراحةً من حذف أي كائن.
تلميح
أضف عبارة بـ Effect: "Deny" على الإجراء s3:DeleteObject. تذكّر: المنع الصريح يتغلّب دائمًا على السماح في IAM.
تمرين 4 — التفكير النقدي
المطلوب: راجع هذه العبارة وحدّد خطرها الأمني: Action: "s3:*", Resource: "*".
الإجابة
تمنح كل إجراءات S3 على كل الموارد — انتهاك صارخ لمبدأ الأقلّ امتيازًا. لو تسرّبت بيانات هذا المستخدم، لانكشفت كل حاوياتك. صحّحها بحصر الإجراءات والموارد بما يلزم فعلًا.
بعد التمارين
راجع إجاباتك بالمبدأ: هل حصرت الإجراءات؟ هل حصرت الموارد؟ هل تجنّبت *؟ إن فعلت، فأنت تفكّر كمهندس أمان.
الخطوات التالية
طبّق ذلك على تخزينك في تأمين حاوية S3، وراجع الأساس في فهم AWS IAM.