چگونه می توانید معماری میکروسرویس ها را با استفاده از خدمات AWS ایمن کنید؟

مقدمه
امنیت در Public Cloud بسیار مهم است. از دست دادن دسترسی به وب سایت شما یا مهاجمانی که پایگاه داده شما را حذف می کنند، رویدادهای فاجعه بار شرکت هستند.
مدل مسئولیت مشترک
امنیت و انطباق یک مسئولیت مشترک بین AWS و مشتری است.
AWS مسئول این است “امنیت ابر”. AWS مسئول حفاظت از زیرساختی است که تمام خدمات ارائه شده در AWS Cloud را اجرا می کند. این زیرساخت از سخت افزار، نرم افزار، شبکه و امکاناتی تشکیل شده است که سرویس های AWS Cloud را اجرا می کنند.
مشتری مسئول است “امنیت در ابر”. مسئولیت مشتری توسط خدمات AWS Cloud که مشتری انتخاب می کند تعیین می شود. این مقدار کار پیکربندی را که مشتری باید به عنوان بخشی از مسئولیت های امنیتی خود انجام دهد تعیین می کند.
برای اطلاعات بیشتر در مورد مدل مسئولیت مشترک، به اسناد AWS مراجعه کنید.
بهترین شیوه ها
خوشبختانه، AWS مجموعه ای از خدمات امنیتی را برای بهبود وضعیت امنیتی خود از روز اول در اختیار شما قرار می دهد. توجه داشته باشید که این یک لیست جامع نیست و “بستگی دارد” به جایی که اجرا می کنید و از چه خدماتی استفاده می کنید. در اینجا برخی از مراحل ایمن سازی معماری میکروسرویس های شما در AWS آمده است:
- از AWS Shield برای محافظت از DDoS استفاده کنید
- از AWS GuardDuty برای شناسایی هوشمند تهدید استفاده کنید.
- از AWS IAM برای مدیریت هویت و دسترسی به منابع AWS استفاده کنید
- از AWS WAF برای محافظت از برنامه های وب خود در برابر سوء استفاده های رایج استفاده کنید.
- از AWS Certificates Manager برای رمزگذاری دادههای وبسایت در حال انتقال با استفاده از گواهیهای TLS/SSL استفاده کنید.
- از کلیدهای AWS KMS برای رمزگذاری تمام حجم های EBS و Aurora DB (داده ها در حالت استراحت) استفاده کنید.
- از AWS Secrets Manager برای ذخیره اسرار برنامه خود استفاده کنید.
- تمام بارهای کاری خود را در زیر شبکه های خصوصی اجرا کنید. با استفاده از گروههای امنیتی و NACL فقط ترافیک مورد نیاز را مجاز کنید.
- اگر برنامههای شما برای دانلود بهروزرسانیها به اتصال اینترنت نیاز دارند، NAT GW را در زیرشبکه عمومی پیکربندی کنید.
- همچنین می توانید از همتاسازی VPC برای جداسازی بارهای کاری خاص در یک VPC مختلف در یک حساب AWS دیگر استفاده کنید.
- از Amazon Inspector برای اسکن EC2 برای آسیبپذیریهای امنیتی استفاده کنید
- از هاب امنیتی آمازون برای خودکارسازی بررسی های امنیتی AWS و متمرکز کردن هشدارهای امنیتی استفاده کنید.
- از AWS Cognito برای احراز هویت و مجوز درخواست های API استفاده کنید.
- از CloudTrail برای ثبت حسابرسی استفاده کنید.
نتیجه گیری
هنگام ساخت و اجرای برنامه ها در AWS، امنیت نباید مورد توجه قرار گیرد. از برخی یا همه این سرویس های امنیتی AWS برای ایمن سازی معماری میکروسرویس های خود استفاده کنید.
چه چیزی را از دست داده ام؟ این پست فرض می کند که میکروسرویس ها در ماشین های مجازی EC2 اجرا می شوند. اگر میکروسرویسها در آمازون EKS اجرا میشوند، باید رویکردی کاملاً جدید و پست بسیار طولانی داشته باشیم. من به زودی در مورد امنیت EKS پست خواهم کرد.
من را در لینکدین در https://www.linkedin.com/in/vijaykodam/ دنبال کنید، جایی که مقالاتی درباره AWS، Kubernetes و به طور کلی رایانش ابری پست می کنم. من همچنین تمام مقالاتم را در وبلاگم به آدرس https://vijay.eu/posts ارسال می کنم
تصویر هدر با استفاده از DALL.E ایجاد شد. معماری Microservices ساخته شده توسط من با استفاده از draw.io