AWS SAA 09 - Securing User and Application Access

🎯 Securing User, Application, and Data Access — تأمين وصول المستخدمين والتطبيقات والبيانات

تُركز هذه الوحدة على كيفية تأمين البنى السحابية في AWS من خلال إدارة الهويات والصلاحيات وتشفير البيانات واستخدام خدمات الأمن المتقدمة. ستتعلم كيفية استخدام IAM لإدارة المستخدمين والمجموعات والأدوار، وتطبيق ABAC للتحكم في الوصول استناداً إلى السمات، ودمج الهويات الخارجية عبر Identity Federation، وإدارة حسابات متعددة باستخدام AWS Organizations وSCPs، وتشفير البيانات في حالة السكون باستخدام AWS KMS، وأخيراً التعرف على خدمات الأمن المتقدمة مثل AWS WAF وAmazon Macie وAmazon Inspector وAWS Security Hub لتطبيق استراتيجية دفاعية متعددة الطبقات.

1️⃣ IAM Users, Groups, and Roles — مستخدمون ومجموعات وأدوار IAM

📖 ما هي مكونات AWS Identity and Access Management (IAM)؟
IAM هي خدمة تتيح لك التحكم في الوصول إلى موارد AWS بشكل آمن. يمكنك إنشاء users (مستخدمين) وgroups (مجموعات) وroles (أدوار) وتطبيق سياسات الصلاحيات عليها. المستخدم هو هوية دائمة تمثل شخصاً أو تطبيقاً، أما المجموعة فهي مجموعة من المستخدمين تتشارك نفس الصلاحيات، والدور هو هوية مؤقتة يمكن لأي كيان افتراضها للحصول على صلاحيات محددة.
📋 المفاهيم الأساسية:
  • سياسة IAM هي مستند JSON يحدد الصلاحيات المسموح بها أو الممنوعة صراحةً.
  • سياسة المستخدم (user policy) تُرفق بمستخدم معين وتعطيه صلاحيات إضافية.
  • سياسة المجموعة (group policy) تُرفق بالمجموعة وتطبق على جميع أعضائها.
  • المنع الصريح (explicit deny) يتجاوز السماح الصريح (explicit allow) في أي سياسة.
  • إذا لم يُمنح المستخدم صلاحية صريحة لفعل معين، فهذا يعني أنه لا يمتلك تلك الصلاحية.
🔑 مثال على تضارب السياسات: مستخدم اسمه Zhang لديه سياسة مستخدم تسمح له بالوصول إلى S3 وDynamoDB وتمنعه صراحةً من الوصول إلى Kinesis. وهو عضو في مجموعة Developer التي تسمح بالوصول إلى S3 وAthena وDynamoDB وKinesis. يستطيع Zhang الوصول إلى Athena (لأن سياسة المجموعة تسمح بذلك)، لكنه لا يستطيع الوصول إلى Kinesis لأن المنع الصريح في سياسة المستخدم يتجاوز السماح في سياسة المجموعة.
على سبيل المثال شركة برمجيات تضم 50 مطوراً.
بدلاً من إنشاء سياسة لكل مطور على حدة تنشئ الشركة مجموعة Developers ومجموعة Admins.
المطورون الجدد يُضافون إلى مجموعة Developers فقط ويحصلون تلقائياً على الصلاحيات المناسبة دون أي جهد إضافي.

2️⃣ RBAC vs ABAC — التحكم بالوصول القائم على الدور مقابل القائم على السمات

📖 ما الفرق بين RBAC وABAC؟
Role-Based Access Control (RBAC) هو النموذج التقليدي حيث تُعرف الصلاحيات بناءً على المسمى الوظيفي. ينشئ المسؤول سياسة IAM لكل دور وظيفي ويرفقها بكيان IAM (مستخدم أو مجموعة أو دور). أما Attribute-Based Access Control (ABAC) فهو استراتيجية أحدث تُعرف الصلاحيات بناءً على السمات (attributes) التي تأخذ شكل أزواج مفتاح-قيمة (key-value pairs) تُسمى tags في AWS.
📋 مقارنة الطريقتين:
  • RBAC: يتطلب صيانة سياسات متعددة، وعند إضافة موارد جديدة يجب تحديث جميع السياسات ذات العلاقة مما يستغرق وقتاً طويلاً.
  • ABAC: أكثر مرونة ولا يتطلب تحديث السياسات عند إضافة مستخدمين أو موارد جدد.
  • ABAC: يتحقق من أن السمة المطبقة على مستخدم IAM مطبقة أيضاً على المورد الذي يريد الوصول إليه.
  • ABAC: يمكن دمج الصلاحيات في سياسة واحدة بدلاً من سياسات متعددة.
  • ABAC: قابل للتدقيق (auditable) بالكامل.
على سبيل المثال مؤسسة تطوير تستخدم السمات لتحديد الفريق والمشروع.
لديهم أربعة أدوار IAM للمطورين والمختبرين في مشروعي الصيانة والتطوير الجديد.
باستخدام ABAC يمكنهم إنشاء سياسة واحدة تقول: الأدوار التي تحمل سمة Env=Dev وProject=Maint يمكنها الوصول إلى موارد المشروع.
عند إضافة EC2 instance جديد إضافة الوسم المناسب وستحصل الأدوار على الصلاحية تلقائياً.
🔑 الوسوم (Tags) في AWS: يمكنك إنشاء حتى 50 وسماً لكل مورد. لكل مورد، يجب أن يكون مفتاح الوسم فريداً ويمكن أن يكون له قيمة واحدة فقط. مفاتيح وقيم الوسوم حساسة لحالة الأحرف (case-sensitive).
مثل نظام المكتبات القديم حيث كل كتاب له بطاقة ورقية ويجب تحديث الفهرس يدوياً عند إضافة كتاب جديد هذا هو RBAC.
أما ABAC فهو مثل نظام التصنيف الحديث Dewey Decimal حيث يمكنك إضافة كتاب جديد وتصنيفه برقم معين فيندرج تلقائياً في المكان الصحيح دون الحاجة لتحديث الفهرس بالكامل.

3️⃣ Example: Using ABAC to Grant Permissions — مثال عملي على ABAC

📖 كيف يعمل ABAC في سيناريو حقيقي؟
تخيل مؤسسة تطوير تستخدم سمات لتحديد فريق العمل (تطوير أو اختبار) والمشروع (صيانة أو تطوير جديد). لديهم أربعة أدوار IAM: مطورو الصيانة، مطورو التطوير الجديد، مختبرو الصيانة، مختبرو التطوير الجديد. لكل مشروع خادمان EC2: واحد موسوم بـ Env=Dev والآخر بـ Env=Test. وهناك S3 bucket للمطورين وآخر للمختبرين.
📋 خطوات تطبيق ABAC:
  • إنشاء هويات IAM مع الوسوم المناسبة (مثل Env=Dev وProject=Maint).
  • فرض الوسوم على الموارد الجديدة عبر سياسات تمنع إنشاء مورد دون الوسم المطلوب.
  • تكوين صلاحيات الوصول بناءً على الوسوم باستخدام سياسة واحدة تغطي جميع السيناريوهات.
  • اختبار التهيئة للتأكد من أن المحاولات غير المصرَّح بها تفشل.
على سبيل المثال في سياسة ABAC واحدة يمكنك تحديد أن الأدوار التي تحمل Env=Dev وProject=Maint يمكنها الوصول إلى خادم EC2 للصيانة في بيئة التطوير وS3 bucket الخاص بالمطورين.
عند إضافة خادم EC2 جديد بمجرد وضع الوسم المناسب تحصل الأدوار على الصلاحية تلقائياً دون أي تغيير في السياسات.
خلاصة: إدارة الصلاحيات
  • استخدم المجموعات (IAM groups) لمنح نفس الصلاحيات لعدة مستخدمين.
  • المنع الصريح (explicit deny) يتجاوز السماح الصريح (explicit allow) دائماً.
  • يفضل استخدام ABAC بدلاً من RBAC لتوسيع نطاق إدارة الصلاحيات.
  • ABAC يعرف الصلاحيات بناءً على السمات (الوسوم) مما يبسط الإدارة بدمج الصلاحيات في سياسة واحدة.
  • الوسوم هي بيانات وصفية تأخذ شكل زوج مفتاح-قيمة وتطبق على الموارد والهويات.

📖 جدول المصطلحات

المصطلح (English)الترجمةالمفهوم
IAMإدارة الهوية والوصولخدمة للتحكم الآمن في الوصول إلى موارد AWS عبر مستخدمين ومجموعات وأدوار.
IAM policyسياسة IAMمستند JSON يحدد الصلاحيات المسموح بها أو الممنوعة.
Explicit denyمنع صريحقاعدة في السياسة تمنع وصولاً معيناً وتتجاوز أي قاعدة سماح.
RBACالتحكم بالوصول القائم على الدورنموذج صلاحيات تقليدي يُعرف الصلاحيات بناءً على المسمى الوظيفي.
ABACالتحكم بالوصول القائم على السماتاستراتيجية صلاحيات تُعرف الوصول بناءً على سمات (وسوم) الهويات والموارد.
Tagsالوسومبيانات وصفية (مفتاح-قيمة) تُطبق على موارد AWS وهويّات IAM لأغراض التنظيم والتحكم.

1️⃣ Identity Federation — دمج الهويات

📖 ما هو دمج الهويات (Identity Federation
دمج الهويات هو نظام ثقة بين طرفين: Identity Provider (IdP) المسؤول عن مصادقة المستخدمين، وService Provider (SP) المسؤول عن التحكم في الوصول إلى موارده. من خلال اتفاق إداري وتهيئة، يثق SP في IdP لمصادقة المستخدمين ومنحهم حق الوصول إلى الموارد المطلوبة. أمثلة على IdP: Login with Amazon وFacebook وGoogle وActive Directory Federation Services.
📋 خدمات AWS الداعمة لدمج الهويات:
  • AWS Identity and Access Management (IAM) — يدعم SAML 2.0 وOIDC لكل حساب على حدة.
  • AWS IAM Identity Center — إدارة مركزية للوصول الموحد عبر حسابات متعددة.
  • AWS Security Token Service (AWS STS) — يصدر صلاحيات مؤقتة محدودة الصلاحية.
  • Amazon Cognito — مصادقة وترخيص لتطبيقات الويب والجوال.
🔑 هويات القوى العاملة (Workforce identities): المستخدمون البشريون في مؤسستك الذين لديهم بالفعل طريقة للمصادقة (مثل تسجيل الدخول إلى شبكة الشركة) يمكن دمج هوياتهم في AWS باستخدام IAM أو IAM Identity Center.
على سبيل المثال موظف في شركة لديه حساب على Active Directory الخاص بالشركة.
بدلاً من إنشاء حساب IAM منفصل في AWS يمكن للشركة استخدام Identity Federation بحيث يسجل الموظف دخوله إلى شبكة الشركة ثم يحصل تلقائياً على صلاحيات مؤقتة للوصول إلى AWS Management Console دون الحاجة لكلمة مرور ثانية.

2️⃣ AWS IAM Identity Center — مركز هوية IAM

📖 ما هو AWS IAM Identity Center؟
IAM Identity Center هو الخليفة لخدمة AWS Single Sign-On (SSO). يسمح لك بإنشاء الهويات أو ربطها مرة واحدة وإدارة الوصول مركزياً عبر حسابات AWS الخاصة بك. يوفر تجربة إدارة موحدة لتعريف وتخصيص وتعيين صلاحيات دقيقة بناءً على المسميات الوظيفية الشائعة. يمكن للمستخدمين الوصول إلى بوابة المستخدم (user portal) الخاصة بهم لرؤية جميع حسابات AWS وتطبيقات السحابة المخصصة لهم.
📋 المميزات الرئيسية:
  • إنشاء أو ربط الهويات مرة واحدة وإدارة الوصول مركزياً.
  • تجربة إدارة موحدة لتعريف وتخصيص وتعيين صلاحيات دقيقة.
  • بوابة مستخدم للوصول إلى جميع الحسابات والتطبيقات المخصصة.
  • يدعم تطبيقات سحابية شائعة مثل Microsoft 365 وSalesforce.
  • يمكن استخدامه بالتزامن مع IAM أو كبديل لإدارة الوصول.
على سبيل المثال شركة لديها 10 حسابات AWS لفِرق مختلفة.
بدلاً من إنشاء مستخدمين في كل حساب على حدة تستخدم IAM Identity Center لربط Active Directory الخاص بالشركة مرة واحدة.
عند انضمام موظف جديد يكفي إضافته إلى المجموعة المناسبة في AD وستنتشر صلاحياته تلقائياً إلى جميع الحسابات.

3️⃣ AWS STS and Identity Broker — STS ووسيط الهوية

📖 كيف يعمل AWS Security Token Service (STS)؟
AWS STS هي خدمة ويب (API) تمكنك من طلب صلاحيات مؤقتة محدودة الصلاحية يمكن استخدامها من قبل مستخدمي IAM أو المستخدمين المدمجين أو التطبيقات. تستمر الصلاحية من بضع دقائق إلى عدة ساعات. Identity Broker هو وسيط يربط بين موفري الهوية الخارجيين ومزود الخدمة لتسهيل عملية الدمج.
📋 خطوات الدمج باستخدام وسيط الهوية:
  • يسجل المستخدم باستخدام هويته الحالية من موفر الهوية (IdP).
  • يتواصل وسيط الهوية مع AWS STS لطلب صلاحيات مؤقتة.
  • AWS STS يُصدر الصلاحيات المؤقتة ويعيدها إلى وسيط الهوية.
  • وسيط الهوية يمرر الصلاحيات المؤقتة إلى التطبيق ليتمكن المستخدم من الوصول إلى الموارد.
🔑 عملية AssumeRole: عندما تُستدعى عملية AssumeRole من STS API بنجاح، تعيد الخدمة الصلاحيات المؤقتة المطلوبة. تستخدم هذه العملية عادة للوصول عبر الحسابات (cross-account access) أو لدمج الهويات.
على سبيل المثال تطبيق ويب يريد السماح للمستخدمين بتسجيل الدخول بحسابات Google الخاصة بهم.
يستخدم التطبيق وسيط هوية يتواصل مع AWS STS.
بعد مصادقة المستخدم عبر Google يحصل التطبيق على صلاحيات AWS مؤقتة للوصول إلى S3 أو DynamoDB نيابة عن المستخدم.

4️⃣ Amazon Cognito — أمازون كوجنيتو

📖 ما هي خدمة Amazon Cognito؟
Amazon Cognito هي خدمة مُدارة بالكامل توفر المصادقة والترخيص وإدارة المستخدمين لتطبيقات الويب والجوال. يمكن للمستخدمين تسجيل الدخول مباشرة باسم مستخدم وكلمة مرور أو من خلال طرف ثالث مثل Facebook وAmazon وGoogle. تتكون الخدمة من مكونين رئيسيين: user pools (مجمعات المستخدمين) وidentity pools (مجمعات الهويات).
📋 مكونات Amazon Cognito:
  • User pools: دليل مستخدمين في Cognito. يمكن للمستخدمين تسجيل الدخول إلى تطبيق الويب أو الجوال من خلال Cognito أو عبر موفر هوية خارجي.
  • Identity pools: تمكن من إنشاء هويات فريدة وتعيين صلاحيات للمستخدمين. يمكنها توفير صلاحيات AWS مؤقتة للوصول إلى الخدمات.
  • يدعم Cognito واجهة مستخدم مستضافة (hosted UI) للتسجيل وتسجيل الدخول والمصادقة متعددة العوامل (MFA) وإعادة تعيين كلمة المرور.
  • يدعم رموز JSON Web Token (JWT) للوصول إلى موارد الخادم.
على سبيل المثال تطبيق توصيل طعام يريد مصادقة المستخدمين عبر حسابات Facebook أو Google.
يستخدم المطورون Amazon Cognito مع user pool لتسجيل الدخول وidentity pool لمنح المستخدمين صلاحية الوصول إلى DynamoDB لتخزين الطلبات.
بهذا يتخلصون من عناء بناء نظام مصادقة من الصفر.
مثل بطاقة الدخول الموحدة في المجمعات التجارية الكبرى التي تسمح لك بالدخول إلى جميع المتاجر بهوية واحدة.
وكما تستخدم هذه البطاقة لفتح موقف السيارات وشراء الطعام ودخول صالة السينما فإن Identity Federation تسمح بهوية واحدة للوصول إلى جميع خدمات AWS المصرح بها.
خلاصة: دمج الهويات
  • Identity Federation هو نظام ثقة بين IdP وSP لمصادقة المستخدمين والتحكم في الوصول.
  • IAM Identity Center يوفر إدارة مركزية للوصول الموحد عبر حسابات متعددة.
  • AWS STS يصدر صلاحيات مؤقتة ويمكن المستخدمين المدمجين من افتراض دور IAM.
  • Amazon Cognito خدمة مُدارة للمصادقة والترخيص وإدارة المستخدمين في تطبيقات الويب والجوال.
  • وسيط الهوية (Identity Broker) يسهل الدمج عندما تكون الهويات خارج AWS.

📖 جدول المصطلحات

المصطلح (English)الترجمةالمفهوم
Identity Federationدمج الهوياتنظام ثقة بين موفر هوية خارجي ومزود خدمة لمصادقة المستخدمين والتحكم في الوصول.
IAM Identity Centerمركز هوية IAMخدمة للإدارة المركزية للوصول الموحد عبر حسابات AWS وتطبيقات السحابة.
AWS STSخدمة رمز الأمانخدمة ويب تصدر صلاحيات AWS مؤقتة محدودة الصلاحية.
Amazon Cognitoأمازون كوجنيتوخدمة مُدارة للمصادقة والترخيص وإدارة المستخدمين في تطبيقات الويب والجوال.
User poolمجمع المستخدميندليل مستخدمين في Cognito يمكنهم تسجيل الدخول محلياً أو عبر موفر خارجي.
Identity poolمجمع الهوياتمكون في Cognito يوفر صلاحيات AWS مؤقتة للمستخدمين المصادق عليهم.
Identity Brokerوسيط الهويةوسيط يربط بين موفري الهوية الخارجيين ومزود الخدمة لتسهيل الدمج.

1️⃣ Multiple Accounts Patterns — أنماط الحسابات المتعددة

📖 لماذا تستخدم المؤسسات حسابات AWS متعددة؟
عند استخدام AWS لدعم فِرَق وأقسام مختلفة في المؤسسة، هناك نمطان معماريتان: الأول هو إنشاء عدة VPCs في حساب واحد، والثاني هو إنشاء حسابات AWS متعددة مع VPC في كل منها. عملياً، تميل المؤسسات الكبيرة والصغيرة إلى إنشاء حسابات متعددة لعزل الموارد حسب الوحدات التنظيمية أو البيئات (تطوير، اختبار، إنتاج).
📋 مزايا وتحديات الحسابات المتعددة:
  • المزايا: عزل حسب الوحدات التنظيمية أو البيئات، عزل بيانات التدقيق والاسترداد، فصل حسابات لأحمال العمل الخاضعة للتنظيم، سهولة إنشاء تنبيهات التكلفة، توفير التكاليف عبر التسعير المجمّع.
  • التحديات: إدارة الأمان عبر الحسابات، الحاجة لعمليات يدوية لإنشاء حسابات جديدة، تحديد الجهة المسؤولة عن الفوترة، الحاجة لحوكمة مركزية لضمان الامتثال والاتساق.
🔑 استراتيجية فعالة: إنشاء حساب واحد للموارد المشتركة (مثل DNS وActive Directory) وحسابات منفصلة للمشاريع أو الأقسام المستقلة. هذا يسمح بتعيين الصلاحيات تحت كل حساب وإدارة الوصول عبر الحسابات.
على سبيل المثال شركة تقنية لديها ثلاثة فرق: تطوير واختبار وإنتاج.
تنشئ الشركة ثلاثة حسابات AWS واحدة لكل بيئة.
بهذا إذا أجرى فريق التطوير تجارب غير مستقرة فإن ذلك لا يؤثر على بيئة الإنتاج الحقيقية للعملاء.

2️⃣ AWS Organizations — مؤسسات AWS

📖 ما هي خدمة AWS Organizations؟
AWS Organizations هي خدمة إدارة حسابات تسمح لك بدمج عدة حسابات AWS في مؤسسة واحدة تُدار مركزياً. توفر الخدمة إمكانية إنشاء الحسابات وإدارتها بشكل مركزي، والفوترة المجمّعة (consolidated billing)، والتجميع الهرمي للحسابات في وحدات تنظيمية (Organizational Units - OUs)، والتحكم في السياسات المركزية باستخدام Service Control Policies (SCPs).
📋 مميزات AWS Organizations:
  • تجميع الحسابات في هيكل هرمي يصل عمقه إلى 5 مستويات من الوحدات التنظيمية (OUs).
  • سياسات التحكم في الخدمات (SCPs) لتحديد أقصى الصلاحيات المسموحة للحسابات الأعضاء.
  • خصومات على التسعير المجمّع (volume pricing) عبر جميع الحسابات.
  • يتكامل مع IAM لتوسيع نطاق التحكم إلى مستوى الحساب.
  • يمنع SCP العملية إذا منعها أي من Organizations أو IAM.
على سبيل المثال مجموعة شركات لديها 15 حساباً لشركات تابعة مختلفة.
تستخدم AWS Organizations لتجميع الفواتير والحصول على خصومات الحجم.
كما تنشئ وحدات تنظيمية لكل شركة وتطبق SCPs لضمان عدم تمكن أي شركة من تعطيل CloudTrail أو مغادرة المؤسسة.

3️⃣ Service Control Policies (SCPs) — سياسات التحكم في الخدمات

📖 ما هي SCPs وكيف تعمل؟
SCPs تقدم تحكماً مركزياً في أقصى الصلاحيات المتاحة لجميع الحسابات في المؤسسة. تتحكم في الخدمات التي يمكن لمستخدمي IAM في الحسابات الأعضاء الوصول إليها. تحدد SCPs قيوداً على الإجراءات التي يمكن لمسؤول الحساب تفويضها لمستخدمي IAM والأدوار. لا يمكن تجاوز SCP من قبل المسؤول المحلي. الأفضلية: من الأسهل تعريف السياسات عبر حسابات متعددة في SCP بدلاً من نسخ إعدادات الصلاحيات هذه في مستندات سياسة IAM في كل حساب.
📋 أمثلة على سيناريوهات SCPs:
  • منع تعطيل AWS CloudTrail في جميع الحسابات الأعضاء.
  • فرض الوسوم على الموارد (مثلاً منع تشغيل EC2 بدون وسم محدد).
  • منع الحسابات الأعضاء من مغادرة المؤسسة.
🔑 مثال SCP: سياسة تمنع مغادرة الحسابات الأعضاء للمؤسسة. التأثير: Deny مع الإجراء organizations:LeaveOrganization. SCPs تتدفق من الجذر (root) إلى جميع الوحدات التنظيمية والحسابات أسفله.
على سبيل المثال مؤسسة تريد ضمان عدم تمكن أي حساب تابع من تعطيل تسجيل CloudTrail المطلوب للامتثال.
تطبق SCP على جميع الحسابات تمنع إجراء cloudtrail:StopLogging وcloudtrail:DeleteTrail.
حتى مسؤول الحساب المحلي لا يستطيع تجاوز هذا المنع مما يضمن الامتثال الدائم.

4️⃣ SCPs and Permissions Boundaries — حدود الصلاحيات

📖 ما هي حدود الصلاحيات (Permissions Boundaries
حدود الصلاحيات هي ميزة متقدمة في AWS تستخدم سياسة مُدارة لتعيين أقصى الصلاحيات التي يمكن أن تمنحها سياسة هوية (identity-based policy) لكيان IAM (مستخدم أو دور). لا تمنح حدود الصلاحيات صلاحيات بحد ذاتها، بل تحد من الصلاحيات القصوى. الصلاحية الفعلية هي تقاطع (intersection) ما تسمح به سياسة الهوية وما تسمح به حدود الصلاحيات. المنع الصريح في أي منهما يتجاوز السماح.
📋 العلاقة بين SCPs و IAM و Permissions Boundaries:
  • SCP: يؤثر على الحساب بأكمله ويحد من صلاحيات كل المبادئ داخل الحساب.
  • Permissions Boundary: يحدد أقصى صلاحيات لكيان IAM محدد (مستخدم أو دور).
  • Identity-based policy: تمنح صلاحيات صريحة لكيان IAM.
  • الصلاحية الفعلية = تقاطع الثلاثة. إذا منع أي منها، فلا صلاحية.
على سبيل المثال حد صلاحيات يسمح فقط بخدمات S3 وCloudWatch وEC2.
حتى لو كانت سياسة الهوية تسمح بإنشاء مستخدم IAM (باستخدام iam:CreateUser) فإن حد الصلاحيات لا يتضمن IAM لذا يفشل الطلب.
هذا يمنح المسؤول تحكماً دقيقاً في صلاحيات كل مستخدم.
💡 مقارنة سريعة:
الميزةSCPPermissions Boundary
النطاقالحساب بأكملهكيان IAM محدد (مستخدم/دور)
الغرضتحديد الخدمات المسموح بها في الحسابتحديد أقصى صلاحيات الكيان
من يطبقهمسؤول AWS Organizationsمسؤول حساب AWS
التجاوزلا يمكن تجاوزه محلياًلا يمكن تجاوزه إلا بتغيير الحد

5️⃣ AWS Control Tower — برج التحكم

📖 ما هي خدمة AWS Control Tower؟
AWS Control Tower تسهّل إعداد وإدارة بيئة AWS متعددة الحسابات وآمنة بناءً على أفضل الممارسات. توفر إعداداً آلياً لبيئة جديدة متقنة التصميم (well-architected multi-account environment) مع حوكمة باستخدام قواعد حماية (guardrails) من قائمة مُعدّة مسبقاً. القاعدة الحامية (guardrail) أو control هي قاعدة عالية المستوى توفر حوكمة مستمرة لبيئة AWS.
📋 فوائد AWS Control Tower:
  • إعداد آلي لبيئة متعددة الحسابات ومتقنة التصميم وفقاً لأفضل الممارسات.
  • حوكمة أحمال عمل AWS بقواعد للأمان والتشغيل والامتثال الداخلي.
  • توجيه إرشادي (prescriptive guidance) لحوكمة بيئة AWS على نطاق واسع.
  • مناسب لبناء بيئة AWS جديدة أو إدارة بيئة حالية.
على سبيل المثال شركة ناشئة تتوسع بسرعة وتحتاج لبيئة AWS منظمة.
بدلاً من إعداد كل شيء يدوياً تستخدم AWS Control Tower الذي ينشئ تلقائياً هيكل الحسابات والوحدات التنظيمية ويفعّل قواعد الحوكمة.
هذا يوفر أسابيع من العمل اليدوي ويضمن الامتثال من اليوم الأول.
خلاصة: إدارة الوصول إلى حسابات متعددة
  • معظم المؤسسات تنشئ حسابات AWS متعددة لعزل الموارد وتحقيق فوائد الفوترة المجمّعة.
  • AWS Organizations تسمح بدمج الحسابات في مؤسسة واحدة تُدار مركزياً.
  • SCPs تحدد أقصى الصلاحيات للحسابات بينما Permissions Boundaries تحدد صلاحيات كيانات IAM محددة.
  • Control Tower توفر إعداداً آلياً لبيئة متعددة الحسابات مع حوكمة مدمجة.
  • الصلاحية الفعلية = تقاطع ما تسمح به SCP وPermissions Boundary وسياسة الهوية.

📖 جدول المصطلحات

المصطلح (English)الترجمةالمفهوم
AWS Organizationsمؤسسات AWSخدمة إدارة حسابات لدمج عدة حسابات AWS في مؤسسة واحدة تُدار مركزياً.
Organizational Unit (OU)وحدة تنظيميةمجموعة هرمية من الحسابات داخل AWS Organizations لتطبيق السياسات.
Service Control Policy (SCP)سياسة التحكم في الخدماتسياسة تحدّد أقصى الصلاحيات المسموحة للحسابات الأعضاء في المؤسسة.
Permissions Boundaryحد الصلاحياتميزة لتحديد أقصى صلاحيات يمكن أن تمنحها سياسة هوية لكيان IAM.
AWS Control Towerبرج التحكمخدمة إعداد آلي لبيئة متعددة الحسابات مع حوكمة مدمجة وفقاً لأفضل الممارسات.
Guardrailقاعدة حاميةقاعدة حوكمة عالية المستوى لتطبيق سياسات الأمان والتشغيل والامتثال.
Consolidated billingالفوترة المجمّعةميزة تجمع فواتير حسابات متعددة في فاتورة واحدة مع خصومات الحجم.

1️⃣ Why Protect Data at Rest? — لماذا نحمي البيانات في حالة السكون؟

📖 ما هي أهمية حماية البيانات في حالة السكون؟
حماية البيانات في حالة السكون تضمن سرية المعلومات (confidentiality) وسلامتها (integrity) حتى لو تمكن طرف غير مصرح له من الوصول إليها. تشفير البيانات في حالة السكون يصعّب على المهاجمين اختراق البيانات حتى لو تمكنوا من اختراق نقطة نهاية (endpoint). ثالوث CIA (السرية والسلامة والتوفر) هو النموذج المستخدم على نطاق واسع لتطبيق أمن البيانات في المؤسسات.
📋 مكونات CIA Triad:
  • السرية (Confidentiality): الحفاظ على البيانات الشخصية آمنة ومخفية عن غير المصرح لهم.
  • السلامة (Integrity): ضمان عدم تعديل البيانات أو تغييرها أثناء استخدامها.
  • التوفر (Availability): ضمان بقاء البيانات متاحة عند الحاجة للشخص المناسب.

2️⃣ Types of Encryption — أنواع التشفير

📖 ما هو التشفير وما أنواعه؟
التشفير (encryption) هو عملية استخدام شيفرة (cipher) لتحويل البيانات المقروءة (plaintext) إلى بيانات غير مقروءة (ciphertext). المفتاح (key) هو سلسلة من الأرقام والحروف يستخدمها الخوارزم (algorithm) لتشفير البيانات وفك تشفيرها. هناك نوعان رئيسيان: التشفير المتماثل (symmetric encryption) والتشفير غير المتماثل (asymmetric encryption).
💡 مقارنة بين التشفير المتماثل وغير المتماثل:
وجه المقارنةSymmetric EncryptionAsymmetric Encryption
المفتاحمفتاح واحد للتشفير وفك التشفيرزوج مفاتيح: عام (public) وخاص (private)
السرعةأسرع ومناسب للبيانات الكبيرةأبطأ بسبب طول المفاتيح والحسابات المعقدة
الأمانآمن بشكل عام لكن يجب تغيير المفتاح باستمرارأكثر أمناً ويوفر عدم التنصل (non-repudiation)
متى يُستخدمالبيانات داخل حدود المؤسسة، السرعة والتكلفة أولويةمشاركة البيانات خارج المؤسسة، عدم مشاركة المفتاح، التنظيم والامتثال
مثالبروتوكول TLS لتبادل البياناتتوقيع الشهادات الرقمية
على سبيل المثال جملة بسيطة "Hello World!" قد تتحول بعد التشفير إلى نص مشفر مثل "1c28df2b595b4e30b7b07500963dc7c".
لا يمكن فك التشفير إلا باستخدام المفتاح الصحيح مما يحمي البيانات حتى لو اعترضها مهاجم.

3️⃣ Envelope Encryption — التشفير المغلف

📖 ما هو التشفير المغلف (Envelope Encryption
التشفير المغلف هو ممارسة تشفير المفتاح الذي استخدمته لتشفير بياناتك. يمكنك تشفير مفتاح تشفير البيانات تحت مفتاح تشفير آخر، ثم تشفير مفتاح التشفير ذاك تحت مفتاح تشفير آخر. للتوضيح: تشفير العنصر بمفتاح (data key)، ثم تشفير ذلك المفتاح بمفتاح آخر (key-encryption key)، وهكذا إلى العدد المطلوب من الطبقات، وتخزين مفتاح التشفير مع العنصر المشفر.
مثل وضع أغراضك الثمينة في خزنة، ثم وضع مفتاح الخزنة في صندوق أمانات في البنك، ثم وضع مفتاح صندوق الأمانات في خزنة أخرى.
كل طبقة إضافية من الأمان تقلل خطر وصول أي شخص إلى المفتاح الذي يحتاجه لفتح الخزنة الأصلية.
بروتوكول TLS (SSL) يستخدم التشفير المغلف بدمج التشفير المتماثل وغير المتماثل معاً.
على سبيل المثال تطبيق مصرفي يشفر بيانات العملاء باستخدام مفتاح بيانات (data key).
ثم يشفر مفتاح البيانات نفسه باستخدام مفتاح تشفير رئيسي (master key) في AWS KMS.
بهذا حتى لو تمكن مهاجم من الحصول على مفتاح البيانات المشفر، لا يمكنه فك تشفيره بدون المفتاح الرئيسي المحفوظ بأمان في KMS.

4️⃣ CSE vs SSE — تشفير جانب العميل مقابل تشفير جانب الخادم

📖 ما الفرق بين Client-Side Encryption (CSE) وServer-Side Encryption (SSE)؟
في CSE، يقوم التطبيق بتشفير البيانات محلياً قبل إرسالها إلى AWS وفك تشفيرها بعد استلامها من AWS. أنت تنشئ وتدير مفاتيح التشفير بنفسك. في SSE، يتم تشفير البيانات في وجهتها بواسطة الخدمة أو التطبيق الذي يستلمها. مثلاً، Amazon S3 يشفر بياناتك على مستوى الكائن عند كتابتها على الأقراص في مراكز بيانات AWS ويفك تشفيرها عند وصولك إليها. يمكن استخدام CSE وSSE معاً على نفس البيانات لتعزيز الأمان.
💡 مقارنة بين CSE و SSE:
وجه المقارنةClient-Side Encryption (CSE)Server-Side Encryption (SSE)
مكان التشفيرقبل إرسال البيانات إلى AWSعند استلام الخدمة للبيانات
من يدير المفاتيحأنت (أو تطبيقك)AWS (أو أنت عبر KMS)
الشفافيةغير شفاف — التطبيق مسؤولشفاف — يتم تلقائياً
مكتبات الدعمAWS Encryption SDK, DynamoDB Encryption Client, S3 encryption clientsمدمج في الخدمة (S3, EBS, RDS...)
على سبيل المثال مؤسسة مالية ترفع بيانات العملاء إلى Amazon S3.
مع SSE (تشفير جانب الخادم) تقوم برفع البيانات عبر HTTPS وS3 يشفرها تلقائياً قبل التخزين ويفك تشفيرها عند الوصول.
مع CSE (تشفير جانب العميل) يقوم التطبيق بتشفير البيانات في مركز بيانات المؤسسة قبل إرسالها إلى S3 الذي يخزنها كما هي دون تدخل.

5️⃣ AWS Key Management Service (AWS KMS)

📖 ما هي خدمة AWS Key Management Service (AWS KMS)؟
AWS KMS هي خدمة مُدارة تتيح إنشاء والتحكم في المفاتيح المستخدمة لتشفير بياناتك. تستخدم الخدمة وحدات أمان عتادية (Hardware Security Modules - HSMs) مُصدّقة وفق FIPS 140-2 لحماية المفاتيح. تتكامل AWS KMS مع خدمات AWS الأخرى لمساعدتك في حماية بياناتك المخزنة لديها. يمكنك تعيين سياسات استخدام على هذه المفاتيح لتحديد المستخدمين الذين يمكنهم استخدامها، وتسجل جميع طلبات استخدام المفاتيح في AWS CloudTrail.
📋 مكونات AWS KMS:
  • المفاتيح: Customer managed keys (ينشئها ويديرها العميل)، AWS managed keys (تنشئها وتديرها AWS نيابة عنك)، Data keys (مفاتيح متناظرة للاستخدام خارج KMSData key pairs (مفاتيح غير متناظرة).
  • العمليات التشفيرية: Encrypt (تشفير حتى 4096 بايت)، Decrypt (فك التشفير)، GenerateDataKey (إنشاء مفتاح بيانات متناظر)، GenerateDataKeyPair (إنشاء زوج مفاتيح بيانات غير متناظر).
  • التكامل: Amazon S3 (تشفير جانب الخادم للكائنات)، Amazon EBS (تشفير وحدات التخزين واللقطات).
🔑 هام: الخدمات المتكاملة مع AWS KMS تستخدم فقط مفاتيح التشفير المتماثلة (symmetric) لتشفير بياناتك. لا تدعم هذه الخدمات التشفير بالمفاتيح غير المتماثلة (asymmetric).
على سبيل المثال عند رفع ملف إلى S3 مع تشفير SSE-KMS:
1. تطلب رفع الملف وتخزينه ككائن مشفر في S3 bucket.
2. يطلب S3 مفتاح بيانات من KMS.
3. يُنشئ KMS مفتاح بيانات ويشفر بالمفتاح الرئيسي.
4. يُرسل KMS نسختي المفتاح (العادي والمشفر) إلى S3.
5. يشفر S3 الكائن بالمفتاح العادي ويحذفه ويحتفظ بالمفتاح المشفر في البيانات الوصفية.

6️⃣ AWS KMS with Amazon EBS — KMS مع EBS

📖 كيف يعمل تشفير Amazon EBS مع AWS KMS؟
تشفير Amazon EBS هو حل تشفير مباشر لموارد EBS المرتبطة بمثيلات EC2. يستخدم تشفير AES-256-XTS الذي يتطلب مفتاحين بطول 256 بت (يمكن اعتباره مفتاحاً واحداً بطول 512 بت). يُشفر مفتاح البيانات تحت مفتاح KMS في حسابك. البيانات المشفرة على القرص وعمليات الإدخال/الإخراج واللقطات (snapshots) كلها مشفرة. التشفير وفك التشفير شفافان تماماً ولا يتطلبان أي إجراء إضافي منك أو من تطبيقك.
📋 خطوات تشفير EBS:
  • يحصل EBS على مفتاح بيانات مشفر تحت مفتاح عميل من KMS ويخزنه مع البيانات المشفرة.
  • تسترجع الخوادم المستضيفة لمثيلات EC2 مفتاح البيانات المشفر من التخزين.
  • يُرسل طلب إلى KMS عبر TLS لفك تشفير مفتاح البيانات.
  • يُخزن مفتاح البيانات المفكوك في الذاكرة ويستخدم لتشفير وفك تشفير كل البيانات المتدفقة من وإلى وحدة EBS.
على سبيل المثال مدير نظام يريد تشفير قرص EBS مرتبط بخادم قاعدة بيانات EC2.
يختار خيار التشفير عند إنشاء وحدة EBS ويختار مفتاح KMS من حسابه.
بعد ذلك كل البيانات على القرص واللقطات وحتى الأقراص الجديدة المبنية على اللقطات تكون مشفرة تلقائياً دون أي جهد إضافي.
خلاصة: تشفير البيانات في حالة السكون
  • تشفير البيانات في حالة السكون يصعّب على المهاجمين اختراق البيانات حتى لو تمكنوا من اختراق نقطة النهاية.
  • التشفير المتماثل يستخدم مفتاحاً واحداً، وهو أسرع ومناسب للبيانات الكبيرة.
  • التشفير غير المتماثل يستخدم زوج مفاتيح (عام وخاص)، أكثر أماناً لكنه أبطأ.
  • التشفير المغلف (Envelope Encryption) هو تشفير مفتاح البيانات تحت مفتاح آخر.
  • CSE: التطبيق يشفر محلياً قبل الإرسال. SSE: الخدمة تشفر بعد الاستلام.
  • AWS KMS: خدمة مُدارة للمفاتيح مع HSMs مادي وتكامل مع خدمات AWS.

📖 جدول المصطلحات

المصطلح (English)الترجمةالمفهوم
Encryptionالتشفيرعملية تحويل البيانات المقروءة إلى بيانات غير مقروءة باستخدام خوارزم ومفتاح.
Symmetric encryptionتشفير متماثلنوع تشفير يستخدم نفس المفتاح للتشفير وفك التشفير.
Asymmetric encryptionتشفير غير متماثلنوع تشفير يستخدم زوج مفاتيح: عام للتشفير وخاص لفك التشفير.
Envelope encryptionالتشفير المغلفممارسة تشفير مفتاح البيانات تحت مفتاح تشفير آخر في طبقات.
AWS KMSخدمة إدارة المفاتيحخدمة مُدارة لإنشاء والتحكم في مفاتيح التشفير مع HSMs مادية.
CSEتشفير جانب العميلتطبيق العميل يشفر البيانات قبل إرسالها إلى AWS.
SSEتشفير جانب الخادمخدمة AWS تشفر البيانات بعد استلامها وقبل تخزينها.
HSMوحدة أمان عتاديةجهاز مادي مخصص لحماية المفاتيح التشفيرية وتنفيذ العمليات التشفيرية بأمان.

1️⃣ Defense in Depth — الدفاع في العمق

📖 ما هو نهج الدفاع في العمق (Defense in Depth
جزء أساسي من ركيزة الأمان في AWS Well-Architected Framework هو تطبيق الأمان في جميع الطبقات وتنفيذ نهج الدفاع في العمق. تقييد الوصول هو طبقة مهمة، لكن هناك طبقات إضافية تشمل منع حركة المرور غير المرغوب فيها، إضافة آليات حماية إضافية للبيانات (مثل حماية البيانات الحساسة والشخصية)، وأتمتة القدرة على كشف والاستجابة للثغرات والأحداث الأمنية.
📋 تصنيف خدمات الأمن في AWS:
  • إدارة الهوية والوصول: IAM، IAM Identity Center، Amazon Cognito، AWS Organizations.
  • الكشف والاستجابة: AWS CloudTrail، Amazon Detective، Amazon Inspector، AWS Security Hub.
  • حماية الشبكة والتطبيقات: AWS Network Firewall، AWS Shield، AWS WAF.
  • حماية البيانات: AWS KMS، AWS Secrets Manager، Amazon Macie.
  • الامتثال: AWS Artifact، AWS Audit Manager.

2️⃣ AWS WAF — جدار حماية تطبيقات الويب

📖 ما هي خدمة AWS WAF؟
AWS WAF (Web Application Firewall) هي جدار حماية لتطبيقات الويب تراقب طلبات HTTP وHTTPS الموجهة إلى موارد تطبيق الويب المحمية. يمكنك استخدام قواعد مُدارة أو قواعد مخصصة للسماح أو الحظر بناءً على عنوان IP أو بلد المنشأ أو قيم الترويسة (headers). تتضمن الخدمة AWS Shield بدون تكلفة إضافية للمساعدة في تقليل أثر هجمات رفض الخدمة الموزعة (DDoS).
📋 حالات الاستخدام:
  • حظر الطلبات التي تفتقد إلى ترويسة HTTP User-Agent.
  • كشف وإدارة محاولات إنشاء حسابات ضارة على صفحة التسجيل.
  • توفير حماية DDoS على طبقات الشبكة (layer 3, 4) وطبقة التطبيق (layer 7).
على سبيل المثال موقع تجارة إلكترونية يتعرض لهجوم DDoS بآلاف الطلبات الوهمية.
يستخدم الموقع AWS WAF مع AWS Shield لحظر الطلبات القادمة من عناوين IP المعروفة بالضارة.
كما يضيف قاعدة تمنع الطلبات التي لا تحتوي على ترويسة User-Agent لإيقاف الروبوتات الآلية.

3️⃣ Amazon Macie — أمازون ماسي

📖 ما هي خدمة Amazon Macie؟
Amazon Macie هي خدمة أمن بيانات تستخدم التعلم الآلي (machine learning) لاكتشاف وتصنيف وحماية البيانات الحساسة في AWS تلقائياً. تتعرف Macie على المعلومات الشخصية القابلة للتعريف (PII) مثل أرقام جوازات السفر وأرقام الهوية الطبية وأرقام الضرائب، وكذلك المعلومات المالية ومفاتيح التشفير وبيانات الاعتماد. حالياً تحمي Macie البيانات المخزنة في Amazon S3 فقط.
📋 المميزات:
  • اكتشاف البيانات الحساسة آلياً باستخدام التعلم الآلي ومطابقة الأنماط.
  • إنشاء وتشغيل مهام اكتشاف البيانات الحساسة.
  • استخدام معرفات بيانات مدمجة أو مخصصة (تعبيرات منتظمة regex).
  • مراجعة وتحليل وإدارة النتائج.
  • التكامل مع AWS Organizations لإدارة حتى 5,000 حساب.
على سبيل المثال مؤسسة صحية ترفع سجلات المرضى إلى Amazon S3.
تستخدم Amazon Macie لفحص buckets تلقائياً بحثاً عن أرقام التأمين الصحي (PII).
عند اكتشاف بيانات حساسة في موقع غير متوقع تُرسل الخدمة تنبيهاً للمسؤول لمراجعة الملف واتخاذ الإجراء المناسب.

4️⃣ Amazon Inspector — أمازون إنسبكتور

📖 ما هي خدمة Amazon Inspector؟
Amazon Inspector هي خدمة إدارة ثغرات (vulnerability management) تمسح أحمال عمل AWS باستمرار بحثاً عن ثغرات برمجية وتعرض شبكي غير مقصود. تكتشف وتفحص تلقائياً مثيلات Amazon EC2 وصور الحاويات في Amazon ECR ودوال AWS Lambda. عند اكتشاف ثغرة أو مشكلة شبكية، تنشئ الخدمة نتيجة (finding) تصف الثغرة وتحدد المورد المتأثر وتقيم شدتها وتقدم توجيهات للمعالجة.
📋 المميزات:
  • إدارة مركزية للبيئة عبر حساب واحد باستخدام AWS Organizations.
  • تقييم دقيق للثغرات باستخدام درجة المخاطر (Risk score).
  • تحديد النتائج عالية التأثير عبر لوحة المعلومات (dashboard).
  • نشر النتائج إلى Amazon EventBridge للتكامل مع خدمات أخرى.
على سبيل المثال فريق DevOps يريد التأكد من خلو صور AMI من الثغرات قبل نشرها.
يستخدم Amazon Inspector لفحص صور EC2 تلقائياً.
عند اكتشاف ثغرة حرجة في صورة AMI يتم إيقاف النشر تلقائياً عبر EventBridge وإبلاغ الفريق للمعالجة.

5️⃣ Amazon Detective — أمازون ديتيكتيف

📖 ما هي خدمة Amazon Detective؟
Amazon Detective تساعد في تحليل والتحقيق وتحديد السبب الجذري (root cause) للنتائج الأمنية أو الأنشطة المشبوهة بسرعة. تجمع الخدمة تلقائياً بيانات السجلات من موارد AWS وتستخدم التعلم الآلي والتحليل الإحصائي ونظرية الرسم البياني (graph theory) لتوليد تصورات تدعم تحقيقات أمنية أسرع وأكثر كفاءة. يمكنك الوصول إلى بيانات تاريخية تصل إلى عام كامل.
📋 حالات الاستخدام:
  • فرز مشكلة محتملة بإيجاد كل النشاط المتعلق بكيان IAM محدد.
  • عرض البيانات منظمة في نموذج رسم بياني مُعدّ مسبقاً مع علاقات أمنية.
  • التحقق من البيانات ومقارنتها وربطها للوصول إلى استنتاجات بسرعة.
  • استيعاب ومعالجة البيانات ذات الصلة من جميع الحسابات الممكنة تلقائياً.
على سبيل المثال محلل أمني يلاحظ نشاطاً غير معتاد في حساب AWS.
يستخدم Amazon Detective للبحث عن جميع الأنشطة المتعلقة بدور IAM معين خلال آخر 7 أيام.
يكتشف أن الدور استُخدم من عنوان IP غير معتاد في منتصف الليل مما يشير إلى اختراق محتمل.
يساعده التصور البياني للعلاقات على تتبع مسار الهجوم بسرعة.

6️⃣ AWS Security Hub — مركز الأمن

📖 ما هي خدمة AWS Security Hub؟
AWS Security Hub تجمع بيانات الأمن عبر حسابات AWS والخدمات ومنتجات الطرف الثالث المدعومة. تساعدك في تحليل اتجاهاتك الأمنية وتحديد أهم القضايا الأمنية. توفر نقاط أمان (security score) لكل معيار ممكّن ونقطة إجمالية لجميع الحسابات. تدعم معايير أمنية متعددة بما في ذلك AWS Foundational Security Best Practices (FSBP) وأطر الامتثال الخارجية.
📋 المميزات:
  • يدعم معايير أمنية متعددة بما في ذلك FSBP وأطر الامتثال الخارجية.
  • يتلقى نتائج من خدمات AWS أخرى مثل Amazon Macie وAmazon Inspector.
  • يستخدم قواعد أتمتة لتحديث النتائج الحرجة تلقائياً عند فشل فحص أمني.
  • يتكامل مع EventBridge لأتمتة سير العمل.
على سبيل المثال شركة لديها 20 حساب AWS لفِرق مختلفة.
تفعِّل AWS Security Hub لمراقبة الوضع الأمني عبر جميع الحسابات من لوحة تحكم واحدة.
يتلقى Security Hub نتائج من Amazon Inspector (ثغرات) وAmazon Macie (بيانات حساسة) ويقدم نقاط أمان شاملة.
عند اكتشاف ثغرة حرجة يُرسل إشعار إلى فريق الأمن تلقائياً عبر EventBridge.

7️⃣ AWS Trusted Advisor — مستشار AWS الموثوق

📖 ما هي خدمة AWS Trusted Advisor؟
AWS Trusted Advisor تقدم توصيات بناءً على خمس فئات من أفضل ممارسات AWS: تحسين التكلفة والأمان وتحمل الأعطال وحدود الخدمة وتحسين الأداء. تقيّم حسابك وتقترح تحسينات وتحسينات لمواردك. بعد تفعيل Security Hub لحساب AWS الخاص بك، يمكنك عرض عناصر التحكم الأمني والنتائج في وحدة تحكم Trusted Advisor.
📋 الفئات التي يغطيها Trusted Advisor:
  • تحسين التكلفة (cost optimization).
  • الأمان (security).
  • تحمل الأعطال (fault tolerance).
  • حدود الخدمة (service limits).
  • تحسين الأداء (performance improvement).
🔑 مستويات الدعم: AWS Basic Support وDeveloper Support يمكنهم الوصول إلى فحوصات الأمان الأساسية وفحوصات حدود الخدمة. Business Support وEnterprise Support يمكنهم الوصول إلى جميع الفحوصات.
على سبيل المثال مسؤول حساب AWS يريد تحسين الوضع الأمني.
يفتح Trusted Advisor ويرى توصيات مثل: مفاتيح الوصول لـ IAM غير مستخدمة منذ 90 يوماً، ومجموعات أمان EC2 تسمح بالوصول من أي عنوان IP على المنفذ 22 (SSH).
يتبع التوصيات لإزالة المفاتيح غير المستخدمة وتقييد الوصول إلى SSH مما يحسّن الوضع الأمني فوراً.
💡 مقارنة سريعة لخدمات الأمن:
الخدمةالفئةالوظيفة الرئيسية
AWS WAFحماية التطبيقاتجدار حماية لتطبيقات الويب يراقب طلبات HTTP/HTTPS
Amazon Macieحماية البياناتاكتشاف البيانات الحساسة في S3 باستخدام التعلم الآلي
Amazon Inspectorالكشفمسح مستمر للثغرات على EC2 والحاويات و Lambda
Amazon Detectiveالاستجابةتحليل وتحديد السبب الجذري للنتائج الأمنية
AWS Security Hubالتجميعتجميع النتائج الأمنية ومراقبة الوضع الأمني
AWS Trusted Advisorالتقييمتوصيات لتحسين الأمان والأداء والتكلفة
خلاصة: خدمات الأمن في AWS
  • خدمات الأمن في AWS تساعدك في تطبيق استراتيجية الدفاع في العمق على أحمال العمل.
  • AWS WAF لمراقبة طلبات الويب وحماية التطبيقات.
  • Amazon Macie لتحديد البيانات الحساسة في S3.
  • Amazon Inspector لتحديد الثغرات على EC2 والحاويات وLambda.
  • Amazon Detective لتحليل والتحقيق في الأنشطة الأمنية المشبوهة.
  • AWS Security Hub لتجميع النتائج ومراقبة الوضع الأمني.
  • AWS Trusted Advisor يُقيّم البيئة ويقدم توصيات لسد الثغرات الأمنية.

📖 جدول المصطلحات

المصطلح (English)الترجمةالمفهوم
AWS WAFجدار حماية تطبيقات الويبخدمة لمراقبة وحظر طلبات HTTP/HTTPS الضارة إلى تطبيقات الويب.
Amazon Macieأمازون ماسيخدمة تكتشف البيانات الحساسة وتصنفها في S3 باستخدام التعلم الآلي.
Amazon Inspectorأمازون إنسبكتورخدمة إدارة ثغرات تمسح أحمال العمل بحثاً عن الثغرات والتعرض الشبكي.
Amazon Detectiveأمازون ديتيكتيفخدمة تحليل وتحقيق لتحديد السبب الجذري للنتائج الأمنية.
AWS Security Hubمركز الأمنخدمة تجمع النتائج الأمنية وتراقب الوضع الأمني عبر معايير متعددة.
AWS Trusted Advisorالمستشار الموثوقخدمة توصيات لتقييم الحساب وتحسين الأمان والأداء والتكلفة.
Defense in Depthالدفاع في العمقاستراتيجية أمنية تطبق طبقات حماية متعددة عبر جميع مستويات البنية.
1. A company has 50 employees who need different levels of access to AWS resources. The company wants to assign permissions based on job functions (e.g., Developer, Admin, Auditor) and ensure permissions are consistent across all users in the same function. What is the BEST practice in AWS IAM?
✅ Correct! The IAM best practice is to use IAM groups to organize users with similar job functions and attach policies to groups, not individual users. This ensures consistent permissions across all members of the same function and simplifies management. Adding/removing users from groups automatically updates their permissions.
❌ Incorrect. The correct answer is A. IAM groups provide consistent permissions management. Attaching policies directly to users is harder to manage. Roles are for granting cross-account or service access, not for organizing users. Shared credentials violate security best practices.
2. An EC2 instance running in VPC-A needs to read data from an S3 bucket in another AWS account. What is the MOST secure way to grant access without storing long-term credentials on the instance?
✅ Correct! IAM roles with instance profiles are the secure way to grant permissions to EC2 instances. The instance assumes the role temporarily and receives temporary credentials via the instance metadata service. The target S3 account bucket policy must explicitly grant access to the IAM role from the source account. This avoids long-term credentials stored on instances.
❌ Incorrect. The correct answer is B. IAM roles for EC2 instances provide temporary credentials without storing long-term keys. Access keys on instances are a security risk. Root account credentials should never be used.
3. A company has an IAM policy that grants full access to Amazon S3. The same user has an explicit DENY for s3:DeleteObject on a specific bucket named "critical-data". The user attempts to delete an object from "critical-data". What happens?
✅ Correct! AWS IAM policy evaluation logic uses an explicit DENY override - any explicit DENY statement in any applicable policy will deny the request regardless of any Allow statements. The default is implicit deny (no explicit Allow = deny), but an explicit DENY ensures denial even if there are matching Allow policies.
❌ Incorrect. The correct answer is B. Explicit DENY always overrides any Allow. AWS policy evaluation follows this order: default implicit deny, explicit Allow, explicit DENY (final decision). MFA and policy order are irrelevant here.
4. A security administrator needs to enforce that all IAM users must use multi-factor authentication (MFA) to access the AWS Management Console. How can this be enforced?
✅ Correct! An IAM policy using the condition key "aws:MultiFactorAuthPresent": "true" can deny access when MFA is not present. This policy must be attached to all IAM users/groups. The password policy only controls password complexity, not MFA enforcement. SCPs can enforce across accounts but IAM policy enforcement is more direct for individual users.
❌ Incorrect. The correct answer is B. A condition-based IAM policy with aws:MultiFactorAuthPresent is the correct enforcement mechanism. The password policy does not enforce MFA usage. Root account MFA only protects the root user, not IAM users.
5. A company has multiple AWS accounts managed through AWS Organizations. The security team wants to prevent all accounts from disabling Amazon GuardDuty or modifying its configuration. What is the MOST effective way to enforce this?
✅ Correct! SCPs in AWS Organizations provide centralized governance over all accounts by defining maximum available permissions. An SCP denying GuardDuty modifications applies to ALL principals in affected accounts, including the account root user, making it the most effective preventive control. IAM policies, permission boundaries, and Config rules do not prevent root user actions.
❌ Incorrect. The correct answer is A. SCPs apply to all principals including root users across all accounts. IAM policies cannot restrict the root user. Config rules are detective, not preventive.
6. A developer needs temporary credentials to access an S3 bucket from a mobile application. The app users authenticate through an external identity provider (Google login). Which AWS service should be used to exchange Google credentials for temporary AWS credentials?
✅ Correct! Amazon Cognito Identity Pools (Federated Identities) allow you to exchange identity provider tokens (Google, Facebook, Amazon, or any OpenID Connect provider) for temporary AWS credentials. This is the AWS-recommended approach for mobile apps needing AWS access. Embedding long-term credentials in a mobile app is a critical security risk.
❌ Incorrect. The correct answer is B/C. Cognito Identity Pools is designed for this exact use case. Long-term credentials in mobile apps are insecure. IAM Identity Center is for workforce identity, not customer-facing mobile apps.
7. An organization wants to implement the principle of least privilege for IAM users. The security team needs to grant developers the ability to launch EC2 instances only within a specific subnet (subnet-abc123). Which IAM policy element should be used?
✅ Correct! The Condition element with the ec2:Subnet condition key allows restricting the ec2:RunInstances action to a specific subnet. Not all EC2 API actions support resource-level ARNs. For RunInstances, you need condition keys like ec2:Subnet to specify which subnet instances can be launched in. Resource-level ARNs for subnets exist but RunInstances uses the instance ARN, not the subnet ARN.
❌ Incorrect. The correct answer is B. The ec2:Subnet condition key restricts which subnet instances can be launched in. Resource-level ARNs for RunInstances would use the instance resource, not the subnet. Creating a separate VPC is overkill. Permission boundaries set limits but do not grant access.
8. A company has an IAM role that grants access to an S3 bucket. The role is assumed by a Lambda function. The S3 bucket policy also grants access to the same role. According to AWS policy evaluation logic, when does this combination allow access?
✅ Correct! AWS IAM policy evaluation uses OR logic between identity-based and resource-based policies. If either the identity-based policy (the role permissions) OR the resource-based policy (the S3 bucket policy) grants access, the request is allowed - provided there is no explicit DENY. This is different from cross-account access where both are needed.
❌ Incorrect. The correct answer is B. Identity-based and resource-based policies use OR logic - if either allows the action, access is granted (within the same account). Cross-account access requires both to allow.
9. A company uses AWS Organizations and has enabled SCPs. An administrator accidentally attached a FullAWSAccess SCP (which allows everything) and a custom SCP that denies ec2:TerminateInstances to the production OU. What is the effective permission for users in the production account?
✅ Correct! SCPs follow the same AWS policy evaluation rules: explicit DENY overrides any Allow. The FullAWSAccess SCP allows all actions, but the custom SCP explicitly denies ec2:TerminateInstances. Since an explicit DENY always overrides an Allow, instances cannot be terminated. SCPs define the maximum permissions; IAM policies within the account cannot grant what SCPs deny.
❌ Incorrect. The correct answer is B/C. Explicit DENY in an SCP overrides any Allow, including FullAWSAccess. IAM policies in the account cannot override SCP denies.
10. A company needs to grant a third-party auditor read-only access to specific S3 buckets for a compliance review. The third party has their own AWS account. What is the SECURE way to grant this access?
✅ Correct! Cross-account IAM roles are the secure way to grant external parties access to AWS resources. The company creates a role with the required permissions and configures a trust policy that allows the auditor AWS account to assume the role. The auditor assumes the role using AWS STS (AssumeRole) and receives temporary credentials. No long-term credentials are shared.
❌ Incorrect. The correct answer is B. Cross-account roles using IAM and STS are the secure standard. Sharing IAM user credentials or making buckets public violates security best practices. S3 access points do not grant cross-account access on their own.

🚀 الخاتمة

في هذه الوحدة تعلمنا كيفية تأمين وصول المستخدمين والتطبيقات والبيانات في AWS. استعرضنا إدارة الصلاحيات باستخدام IAM مع المستخدمين والمجموعات والأدوار، والفرق بين RBAC وABAC وكيف تبسّط السمات (tags) إدارة الصلاحيات على نطاق واسع. تعمقنا في دمج الهويات الخارجية عبر Identity Federation باستخدام IAM Identity Center وAWS STS وAmazon Cognito. ثم انتقلنا إلى إدارة الحسابات المتعددة عبر AWS Organizations مع SCPs وحدود الصلاحيات (Permissions Boundaries) وAWS Control Tower. تعرفنا على تشفير البيانات في حالة السكون باستخدام AWS KMS والفرق بين التشفير المتماثل وغير المتماثل وCSE مقابل SSE. وأخيراً استعرضنا خدمات الأمن المتقدمة في AWS مثل AWS WAF وAmazon Macie وAmazon Inspector وAmazon Detective وAWS Security Hub وAWS Trusted Advisor لتطبيق استراتيجية الدفاع في العمق وحماية البنية السحابية من جميع الاتجاهات.

تعليقات



حجم الخط
+
16
-
تباعد السطور
+
2
-