چگونه مدیریت چند حساب AWS را با Terraform و GitOps ساده کنیم
در گذشته، در دنیای شلوغ محاسبات ابری، سفر یک شرکت اغلب با یک حساب AWS آغاز میشد. در این فضای یکپارچه، محیط های توسعه و آزمایش با هم وجود داشتند، در حالی که محیط تولید در یک حساب جداگانه قرار داشت.
این ترتیب در روزهای اولیه به خوبی کار میکرد، اما با رشد شرکتها و تخصصیتر شدن نیازهایشان، سادگی یک حساب کاربری شروع به نشان دادن محدودیتهای خود کرد. تقاضا برای محیطهای اختصاصی افزایش یافت و به زودی، شرکتها متوجه شدند که حسابهای AWS جدیدی برای عملکردهای خاصی مانند امنیت، DevOps و صورتحساب ایجاد میکنند.
با هر حساب جدید، پیچیدگی مدیریت سیاستهای امنیتی و ورود به سیستم در کل زیرساخت بهطور تصاعدی افزایش مییابد. معماران ابری این شرکتها متوجه شدند که برای مدیریت این حضور دیجیتالی در حال گسترش به رویکردی متمرکزتر و سادهتر نیاز دارند.
سازمانهای AWS سرویسی است که برای سادهسازی مدیریت حساب AWS طراحی شده است. این ابزار قدرتمند به هر شرکت اجازه می دهد تا چندین حساب AWS را زیر یک چتر واحد گروه بندی کند. با سازمانهای AWS، میتوانید به راحتی واحدهای سازمانی ایجاد کنید، سیاستهای کنترل سرویس را اعمال کنید و مجوزها را در همه حسابها مدیریت کنید. این نه تنها فرآیند را ساده کرد، بلکه امنیت و انطباق را نیز افزایش داد.
با این حال، مزایای در آن نقطه متوقف نشد. فرآیندهای صورتحساب سازمانهای AWS از طریق متمرکز کردن پرداختها و تولید گزارشهای هزینه جامع برای هر حساب بهینه شده است. وضوح افزایش یافته در مدیریت مالی، توانایی شرکت را برای تخصیص منابع به شیوه ای کارآمدتر و استراتژی برای توسعه آینده تسهیل می کند.
پذیرش سازمانهای AWS عصر طلایی تمرکز را به همراه داشت. خطمشیهای امنیتی بهطور مداوم اجرا میشدند، ورود به سیستم در همه حسابها فعال میشد، و وظایف اداری سادهسازی میشد. زیرساخت ابری تبدیل به یک ماشین خوب سازمانیافته، ایمن و کارآمد شد که آماده پشتیبانی از جاهطلبیهای یک شرکت برای سالهای آینده بود.
ابتدا، اجازه دهید نگاهی دقیق به اجزای مختلفی که یک استراتژی چند حسابی AWS را تشکیل میدهند، بیاندازیم.
اجزای راه اندازی چند حساب
برج کنترل AWS
منطقه فرود
AWS OU
AWS SSO
کنترل برج کنترل
سیاست های کنترل خدمات (SCP)
برج کنترل AWS چیست؟
AWS Control Tower یک سرویس جامع است که شما را قادر می سازد یک محیط AWS چند حسابی را به طور موثر راه اندازی و مدیریت کنید. این بر اساس بهترین شیوه های کارشناسان AWS طراحی شده است و به استانداردها و الزامات صنعت پایبند است. با استفاده از برج کنترل AWS، می توانید اطمینان حاصل کنید که محیط AWS شما ایمن، سازگار و به خوبی سازماندهی شده است و مدیریت و مقیاس پذیری آسان تر را تسهیل می کند.
ویژگی های برج کنترل AWS
Cloud IT این اطمینان را دارد که میداند همه حسابها مطابق با مقررات شرکت هستند و تیمهای توزیعشده ممکن است به سرعت حسابهای جدید AWS ایجاد کنند.
بهترین شیوه ها، استانداردها و الزامات قانونی را با کنترل های از پیش تنظیم شده اجرا کنید.
اتوماسیون راهاندازی محیط AWS شما را میتوان با طرحهای اولیه بهترین شیوه انجام داد. این طرحها جنبههای مختلفی مانند ساختار چند حساب، مدیریت هویت و دسترسی و همچنین گردش کار تهیه حساب را پوشش میدهند.
بر پیکربندیهای حساب جدید یا موجود نظارت کنید، وضعیت انطباق را مشاهده کنید و کنترلها را در مقیاس اجرا کنید.
منطقه فرود در AWS چیست؟
یک منطقه فرود، راه اندازی سریع یک محیط ابری را از طریق استفاده از اتوماسیون، از جمله تنظیمات از پیش پیکربندی شده که از بهترین شیوه های صنعت برای اطمینان از امنیت حساب های AWS شما پیروی می کند، تسهیل می کند. نقطه شروع ارائه شده به عنوان پایه ای برای شرکت شما عمل می کند تا به طور کارآمد بارها و برنامه های کاربردی را شروع و پیاده سازی کند و از یک محیط زیرساخت ایمن و قابل اطمینان اطمینان حاصل کند.
دو انتخاب برای ایجاد منطقه فرود وجود دارد. می توان از داشبورد برج کنترل AWS استفاده کرد. از طرف دیگر، کاربران این گزینه را دارند که یک منطقه فرود سفارشی بسازند. اگر با AWS تازه کار هستید، توصیه می شود از برج کنترل AWS برای ایجاد منطقه فرود استفاده کنید.
اگر ایجاد یک منطقه فرود را از طریق داشبورد برج کنترل انتخاب کنید، موارد زیر در منطقه فرود شما اجرا می شود:
یک محیط چند حساب با سازمان های AWS.
مدیریت هویت از طریق دایرکتوری پیش فرض در AWS IAM Identity Center.
دسترسی فدرال به حساب ها با استفاده از IAM Identity Center.
ثبت متمرکز از AWS CloudTrail و AWS Config ذخیره شده در سرویس ذخیره سازی ساده آمازون (Amazon S3).
ممیزی های امنیتی بین حساب ها را با استفاده از مرکز هویت IAM فعال کرد.
واحد سازمانی AWS چیست؟
استفاده از چندین حساب به شما امکان می دهد تا از اهداف امنیتی و عملیات شرکت خود بهتر پشتیبانی کنید. AWS Organizations مدیریت مبتنی بر سیاست چندین حساب AWS را امکان پذیر می کند. وقتی حسابهای جدیدی ایجاد میکنید، میتوانید آنها را در واحدهای سازمانی (OUs) مرتب کنید، که گروهبندی حسابهایی هستند که همان برنامه یا خدمات را ارائه میکنند.
مزیت استفاده از OU
حساب ها واحدهای حفاظت از امنیت هستند. خطرات بالقوه و تهدیدهای امنیتی را می توان در یک حساب بدون تأثیرگذاری بر سایرین مهار کرد.
تیم ها وظایف و نیازهای منابع متفاوتی دارند. راهاندازی حسابهای مختلف از تداخل تیمها با یکدیگر جلوگیری میکند، زیرا ممکن است اگر از یک حساب استفاده کنند.
جداسازی فروشگاههای داده در یک حساب، تعداد افرادی را که به ذخیرهگاه داده دسترسی دارند و میتوانند مدیریت کنند، کاهش میدهد.
مفهوم چند حساب به شما امکان می دهد اقلام قابل پرداخت جداگانه برای بخش های تجاری، تیم های عملکردی یا کاربران فردی ایجاد کنید.
سهمیه های AWS برای هر حساب تنظیم می شود. تفکیک بارهای کاری به حساب های مختلف به هر حساب سهمیه فردی می دهد.
مرکز هویت AWS IAM چیست؟
مرکز هویت AWS IAM یک راه حل متمرکز برای مدیریت دسترسی به چندین حساب AWS و برنامه های تجاری ارائه می دهد.
این روش یک ویژگی ورود به سیستم را ارائه می دهد که به کارمندان اجازه می دهد از طریق یک اعتبار به همه حساب ها و برنامه های اختصاص داده شده دسترسی داشته باشند.
پورتال کاربر وب شخصی سازی شده یک نمای متمرکز از نقش های اختصاص داده شده کاربر در حساب های AWS ارائه می دهد.
برای یک تجربه احراز هویت یکنواخت، کاربران می توانند با استفاده از رابط خط فرمان AWS، AWS SDK یا برنامه موبایل کنسول AWS با اعتبار دایرکتوری خود وارد سیستم شوند.
میتوانید شناسههای کاربر را در فروشگاه هویت IAM Identity Center تنظیم و نظارت کنید، یا میتوانید به ارائهدهنده هویت موجود خود مانند Microsoft Active Directory، Okta و غیره متصل شوید.
کنترل برج کنترل (گاردریل)
کنترلها قوانین حاکمیتی از پیش تعریفشده برای امنیت، عملیات و انطباق هستند که میتوانند در کل سازمان یا گروههای خاصی از حسابها انتخاب و اعمال شوند.
کنترل ها می توانند کارآگاهی، پیشگیرانه یا پیشگیرانه باشند و می توانند اجباری یا اختیاری باشند.
کنترل های کارآگاهی (به عنوان مثال، تشخیص اینکه آیا دسترسی خواندن عمومی به سطل های آمازون S3 مجاز است یا خیر).
کنترلهای پیشگیرانه هدف را ایجاد میکنند و از استقرار منابعی که با خطمشیهای شما مطابقت ندارند، جلوگیری میکند (به عنوان مثال، فعال کردن AWS CloudTrail در همه حسابها).
قابلیتهای کنترل پیشگیرانه از AWS CloudFormation Hooks استفاده میکنند تا بهطور فعال، استقرار CloudFormation منابعی را که با کنترلهایی که شما فعال کردهاید مطابقت ندارند، شناسایی و مسدود کند. به عنوان مثال، توسعهدهندگان نمیتوانند سطلهای S3 ایجاد کنند که قادر به ذخیره دادهها در حالت بدون رمز در حالت استراحت باشند.
سیاست های کنترل خدمات (SCP)
SCP یکی از ویژگی های سازمان است که به شما امکان می دهد حداکثر مجوزها را برای حساب های عضو در سازمان تنظیم کنید.
اگر SCP اقدامی را در یک حساب رد کند، هیچ نهادی در حساب نمیتواند آن عمل را انجام دهد، حتی اگر مجوزهای IAM آن اجازه دهد.
از توقف یا حذف گزارش CloudTrail جلوگیری کنید.
جلوگیری از حذف گزارش های جریان VPC.
حساب های AWS را از خروج از سازمان منع کنید.
از تغییرات AWS GuardDuty جلوگیری کنید.
از اشتراکگذاری منابع با استفاده از AWS Resource Access Manager (RAM) به صورت خارجی یا بین محیطها جلوگیری کنید.
از غیرفعال کردن رمزگذاری پیشفرض آمازون EBS جلوگیری کنید.
از آپلود اشیاء رمزگذاری نشده Amazon S3 جلوگیری کنید.
اگر درخواست شامل برچسبهای مشخصشده نباشد، SCP از ایجاد انواع منابع خاص توسط کاربران و نقشهای IAM در حسابهای آسیبدیده جلوگیری میکند.
خودکارسازی استراتژی چند حساب
ما در مورد مفاهیم کلیدی یک استراتژی چند حساب در AWS بحث کردیم. من در این مقاله بیشتر به عناصر عملی می پردازم و بر چگونگی راه اندازی برج کنترل AWS، ایجاد منطقه فرود و ایجاد واحدهای سازمانی خودکار (OU) تأکید می کنم. همچنین نحوه پیکربندی کنترلهای برج کنترل - که اغلب به عنوان نردههای محافظ شناخته میشوند - برای حفظ امنیت، انطباق و حاکمیت بر روی محیط AWS شما توضیح خواهم داد.
پس از اتمام این استقرار، راه حلی خواهیم داشت که شامل اجزای زیر است:
یک AWS Organizations OU با نام Security در ساختار ریشه سازمانی ایجاد می کند.
دو حساب مشترک را ایجاد و به امنیت OU اضافه می کند: حساب Log Archive و حساب Audit.
یک دایرکتوری بومی ابری در IAM Identity Center، با گروههای آماده و دسترسی تک ورود ایجاد میکند.
تمام کنترل های پیشگیرانه مورد نیاز را برای اجرای سیاست ها اعمال می کند.
کنترلهای کارآگاهی مورد نیاز را برای شناسایی نقضهای پیکربندی اعمال میکند.
ساختار سازمانی AWS
ما ساختار سازمانی زیر را ایجاد و اجرا خواهیم کرد. شما می توانید OU را بر اساس نیاز خود اضافه یا تغییر دهید.
معماری استقرار
من از Terraform Cloud و GitHub Actions برای خودکار کردن کل فرآیند استفاده خواهم کرد. این معماری برای هر سه مؤلفه، از جمله حسابهای اصلی، منطقه فرود، و ایجاد و کنترلهای واحد سازمانی (OU) اعمال میشود.
مهندس DevOps مسئول نوشتن کد Terraform است.
سپس، یک درخواست کشش ایجاد کنید.
من چندین تست برای کد Terraform خود در فایل terraform-plan.yml
اضافه کرده ام.
terraform-plan.yml
فقط در شاخه ویژگی اجرا می شود:
بررسی متغیرهای محیط : اطمینان حاصل می کند که همه متغیرهای محیط مورد نیاز تنظیم شده اند.
کد تسویه حساب : برای تحلیل مخزن از actions/checkout
استفاده می کند.
تأیید پرداخت : تأیید می کند که پرداخت با موفقیت انجام شده است.
اعتبار سنجی : کد Terraform را برای هر گونه خطای نحوی تأیید می کند.
درخواستهای کششی حاوی تغییرات پیشنهادی در کد هستند که به اعضای تیم اجازه میدهد آنها را تحلیل و در شاخه اصلی ادغام کنند.
هنگامی که درخواستهای کشش با شاخه اصلی ادغام شدند، همه موارد تست مجددا اجرا میشوند و منطقه فرود از طریق Terraform Cloud ایجاد میشود.
تحلیل اجمالی اجزای CI/CD
اقدامات GitHub
GitHub Actions یک پلت فرم CI/CD است که به شما امکان می دهد خط لوله ساخت، آزمایش و استقرار خود را خودکار کنید. میتوانید گردشهای کاری ایجاد کنید که بهطور خودکار هر درخواست کششی را به مخزن شما بسازد و آزمایش کند و مطمئن شود که تغییرات کد قبل از ادغام تأیید میشوند. GitHub Actions همچنین به شما امکان میدهد درخواستهای کشش ادغامشده را در تولید مستقر کنید، فرآیند انتشار را سادهتر کرده و خطاها را کاهش دهید. استفاده از GitHub Actions گردش کار توسعه شما را بهبود می بخشد، کیفیت کد را بهبود می بخشد، و تحویل ویژگی ها و به روز رسانی های جدید را سرعت می بخشد.
Terraform Cloud
Terraform Cloud پلتفرمی توسط HashiCorp برای مدیریت و اجرای کد Terraform شما است. این ابزارها و ویژگی هایی را ارائه می دهد که همکاری بین توسعه دهندگان و مهندسان DevOps را افزایش می دهد و کار گروهی را کارآمدتر می کند. با Terraform Cloud، میتوانید گردش کار خود را ساده و ساده کنید و انجام وظایف زیرساختی پیچیده و استقرار را آسانتر کنید. این پلتفرم همچنین ویژگی های امنیتی قوی را برای محافظت از کد و زیرساخت شما ارائه می دهد و محصول شما را در طول چرخه عمر خود ایمن نگه می دارد.
آنچه باید قبل از راه اندازی برج کنترل بدانید
قبل از شروع فرآیند راه اندازی AWS Control Tower، مهم است که درک روشنی از محدودیت های مربوط به برج کنترل داشته باشید و برخی از نکات کلیدی را در نظر بگیرید.
هنگام تنظیم منطقه فرود، مهم است که منطقه خانه خود را انتخاب کنید. پس از انتخاب، امکان تغییر منطقه خانه شما وجود ندارد.
اگر قصد دارید یک برج کنترل در حساب AWS موجود ایجاد کنید که قبلاً بخشی از یک واحد سازمانی موجود (OU) است، امکان استفاده از آن وجود ندارد. برای ادامه، لازم است یک حساب AWS جدید ایجاد کنید که با هیچ واحد سازمانی (OU) مرتبط نباشد.
به عنوان بخشی از فرآیند ایجاد برج کنترل، ایجاد حساب های اجباری مانند حساب بایگانی گزارش و حساب های حسابرسی ضروری است. ایمیل های مخصوص حساب مورد نیاز است.
به منظور راهاندازی منطقه فرود در حساب مدیریت، ضروری است اطمینان حاصل شود که مشترک خدمات زیر در حساب مدیریت شدهاید:
S3، EC2، SNS، VPC، CloudFormation، CloudTrail، CloudWatch، AWS Config، IAM، AWS Lambda
خط پایه برج کنترل AWS تنها چند سرویس را با گزینههای سفارشیسازی محدود پوشش میدهد: IAM Identity Center، CloudTrail، Config، برخی قوانین پیکربندی، و برخی SCPها در سازمانهای AWS.
پیاده سازی IAM Identity Center به حساب مدیریت یک سازمان محدود می شود.
برج کنترل AWS محدودیتهای همزمانی را پیادهسازی میکند و اجازه میدهد تنها یک عملیات در یک زمان انجام شود.
لازم به ذکر است که برخی از مناطق AWS از عملکرد برخی از کنترل ها در برج کنترل AWS پشتیبانی نمی کنند. دلیل این محدودیت این است که مناطق مشخص شده فاقد عملکرد اساسی لازم برای پشتیبانی از عملیات مورد نیاز هستند.
نحوه ایجاد یک برج کنترل
ایجاد برج کنترل به معنای ایجاد منطقه فرود است. منطقه فرود AWS نیاز به ایجاد دو حساب عضو جدید دارد: حساب حسابرسی و حساب بایگانی گزارش. برای این حساب ها به دو آدرس ایمیل منحصر به فرد نیاز دارید. ما این فرآیند را با استفاده از ماژول های Terraform مدیریت خواهیم کرد. برای اینکه همه چیز ساده و واضح باشد، پروژه را به چندین ماژول تقسیم می کنیم. یک ماژول دو حساب اصلی را ایجاد می کند. ماژول دیگری تنظیم منطقه فرود را انجام می دهد. ماژول نهایی واحدهای سازمانی (OU) را ایجاد می کند و کنترل های برج کنترل را برای اطمینان از حاکمیت و انطباق اعمال می کند.
نحوه خودکارسازی ایجاد منطقه فرود
من هر دو ماژول ایجاد حساب اصلی و ایجاد منطقه فرود را در یک فایل main.tf
وارد کرده ام. این امر ضروری است زیرا ایجاد منطقه فرود به ماژول حساب اصلی بستگی دارد. گنجاندن آنها در کنار هم تضمین می کند که همه وابستگی ها به درستی مدیریت می شوند و فرآیند استقرار کارآمد است. این روش همچنین ساختار پروژه را ساده می کند و به جلوگیری از مشکلات احتمالی از مدیریت جداگانه این اجزا کمک می کند.
API CreateLandingZone
برج کنترل AWS به یک نسخه منطقه فرود و یک فایل مانیفست به عنوان پارامترهای ورودی نیاز دارد. در زیر نمونه ای از مانیفست LandingZoneManifest.json آورده شده است.
{ "governedRegions" : [ "us-west-2" , "us-west-1" ], "organizationStructure" : { "security" : { "name" : "CORE" }, "sandbox" : { "name" : "Sandbox" } }, "centralizedLogging" : { "accountId" : "222222222222" , "configurations" : { "loggingBucket" : { "retentionDays" : 60 }, "accessLoggingBucket" : { "retentionDays" : 60 }, "kmsKeyArn" : "arn:aws:kms:us-west-1:123456789123:key/e84XXXXX-6bXX-49XX-9eXX-ecfXXXXXXXXX" }, "enabled" : true }, "securityRoles" : { "accountId" : "333333333333" }, "accessManagement" : { "enabled" : true } }
کد Terraform در زیر توضیح داده شده است
این ماژول منطقه فرود AWS را با استفاده از landingzone_manifest_template
تنظیم می کند. نسخه منطقه فرود و شناسه حساب مدیریت از طریق متغیرها ارائه می شود. این ماژول همچنین چندین نقش IAM مورد نیاز برای تنظیم منطقه فرود ایجاد می کند.
من یک متغیر محلی landingzone_manifest_template
تعریف کردم که یک الگوی JSON برای تنظیم منطقه فرود است. این قالب JSON چندین تنظیمات مهم دارد:
provider "aws" { region = var.region } locals { landingzone_manifest_template = <<EOF { "governedRegions": $ { jsonencode(var.governed_regions) }, "organizationStructure": { "security": { "name": "Core" } }, "centralizedLogging": { "accountId": "${module.aws_core_accounts.log_account_id}" , "configurations": { "loggingBucket": { "retentionDays": $ { var.retention_days } }, "accessLoggingBucket": { "retentionDays": $ { var.retention_days } } }, "enabled": true }, "securityRoles": { "accountId": "${module.aws_core_accounts.security_account_id}" }, "accessManagement": { "enabled": true } } EOF } module "aws_core_accounts" { source = "https://github.com/nitheeshp-irl/terraform_modules/aws_core_accounts_module" logging_account_email = var.logging_account_email logging_account_name = var.logging_account_name security_account_email = var.security_account_email security_account_name = var.security_account_name } module "aws_landingzone" { source = "https://github.com/nitheeshp-irl/blog_terraform_modules/aws_landingzone_module" manifest_json = local.landingzone_manifest_template landingzone_version = var.landingzone_version administrator_account_id = var.administrator_account_id }
مناطق تحت حاکمیت : مناطق تحت کنترل منطقه فرود را مشخص می کند.
ساختار سازمانی : ساختار امنیتی را با یک حساب امنیتی اختصاصی تعریف می کند.
ثبت مرکزی : ثبتنام را پیکربندی میکند، شناسه حساب و سیاستهای حفظ گزارشها را مشخص میکند.
نقش های امنیتی : شناسه حساب را برای نقش های امنیتی مشخص می کند.
مدیریت دسترسی : مدیریت دسترسی را فعال می کند.
حسابهای اصلی : کد حسابهای اصلی، که در همان فایل نیز تعریف شده است، همان چیزی است که حسابهای ضروری AWS را برای ورود به سیستم و امنیت تنظیم میکند.
در اینجا می توانید به کد نگاه کنید:
https://github.com/nitheeshp-irl/landing_zone
https://github.com/nitheeshp-irl/blog_terraform_modules/tree/main/aws_landingzone_module
ایجاد واحد سازمانی
هنگامی که راه اندازی منطقه فرود به پایان رسید، می توانیم یک OU مطابق با نیازهای تجاری خود ایجاد کنیم. این نام OU را از فایل متغیر گرفته و OU را ایجاد می کند.
aws_region = "us-east-2" organizational_units = [ { unit_name = "apps" }, { unit_name = "infra" }, { unit_name = "stagingpolicy" }, { unit_name = "sandbox" }, { unit_name = "security" } ]
کد را می توانید اینجا ببینید:
https://github.com/nitheeshp-irl/blog_terraform_modules/tree/main/aws_landingzone_module
https://github.com/nitheeshp-irl/blog_terraform_modules/tree/main/aws_org_module
نحوه خودکار کردن اتصال کنترل برج کنترل به OU
پس از ایجاد اشیاء مورد نیاز، در صورت نیاز، کنترل هایی را به OU متصل کنید. این فایل main.tf
است:
provider "aws" { region = var.region } module "aws_controls" { source = "https://github.com/nitheeshp-irl/blog_terraform_modules/awscontroltower-controls_module" aws_region = var.aws_region controls = var.controls }
ما از ماژول های Terraform برای ایجاد منابع AWS استفاده کردیم.
در اینجا متغیرهای کنترل هستند:
aws_region = "us-east-2" controls = [ { control_names = [ "AWS-GR_ENCRYPTED_VOLUMES" , "AWS-GR_EBS_OPTIMIZED_INSTANCE" , "AWS-GR_EC2_VOLUME_INUSE_CHECK" , "AWS-GR_RDS_INSTANCE_PUBLIC_ACCESS_CHECK" , "AWS-GR_RDS_SNAPSHOTS_PUBLIC_PROHIBITED" , "AWS-GR_RDS_STORAGE_ENCRYPTED" , "AWS-GR_RESTRICTED_COMMON_PORTS" , "AWS-GR_RESTRICTED_SSH" , "AWS-GR_RESTRICT_ROOT_USER" , "AWS-GR_RESTRICT_ROOT_USER_ACCESS_KEYS" , "AWS-GR_ROOT_ACCOUNT_MFA_ENABLED" , "AWS-GR_S3_BUCKET_PUBLIC_READ_PROHIBITED" , "AWS-GR_S3_BUCKET_PUBLIC_WRITE_PROHIBITED" , ], organizational_unit_names = [ "infra" , "apps" ] } ]
مخازن Git
منطقه فرود
https://github.com/nitheeshp-irl/landing_zone
https://github.com/nitheeshp-irl/blog_terraform_modules/tree/main/aws_landingzone_module
ارگان_واحدها
https://github.com/nitheeshp-irl/org_units
https://github.com/nitheeshp-irl/blog_terraform_modules/tree/main/aws_org_module
controltower_controls
https://github.com/nitheeshp-irl/controltower_controls
https://github.com/nitheeshp-irl/blog_terraform_modules/tree/main/awscontrotower-controls_module
نتیجه گیری
پیمایش یک استراتژی چند حساب در AWS می تواند چالش برانگیز باشد، اما با برج کنترل AWS و یک رویکرد ساختاریافته، قابل مدیریت می شود. با استفاده از برج کنترل AWS، شرکت ها می توانند اطمینان حاصل کنند که محیط های AWS آنها ایمن، سازگار و به خوبی سازماندهی شده است. راه اندازی خودکار، حاکمیت در مقیاس، و مدیریت متمرکز از طریق سازمان های AWS، پایه ای قوی برای زیرساخت های ابری فراهم می کند.
اجرای یک منطقه فرود از طریق برج کنترل AWS یک نقطه شروع امن و استاندارد را ارائه می دهد که امکان استقرار سریعتر و حکمرانی بهتر را فراهم می کند. با استفاده از واحدهای سازمانی (OU) حساب ها را بر اساس نیازهای تجاری تفکیک می کند، امنیت و کارایی عملیاتی را بهبود می بخشد. AWS IAM Identity Center مدیریت دسترسی را ساده می کند و تجربه احراز هویت یکپارچه را در چندین حساب و برنامه ارائه می دهد.
سیاستهای کنترل سرویس (SCP) با اطمینان از اینکه همه منابع از قوانین سازمان پیروی میکنند، به حفظ امنیت و انطباق چیزها کمک میکند. Terraform Cloud و GitHub Actions استقرار منابع را آسانتر میکنند و یک خط لوله CI/CD صاف برای مدیریت تغییرات زیرساخت ارائه میدهند.
ارسال نظر