حالا اپلیکیشنها میتونن بهجای کاربر وارد AWS بشن
خلاصهٔ کاملتر
ایدن استیل تو یادداشتش میگه سالهاست منتظر دقیقاً همین قابلیت بوده. مثال کلاسیکش یه سامانهٔ Terraform پیچیدهست که اجراش روی لپتاپ توسعهدهندهها دردسر داره، پس تصمیم میگیری یه سرویس داخلی بسازی که کار رو ساده کنه. سؤال بلافاصله این میشه: به این سرویس چه دسترسیهایی بدی؟
چون قراره همهٔ توسعهدهندهها ازش استفاده کنن، مجبوری دستکم مجموع دسترسیهای همهشون رو بهش بدی. حالا یه مشکل تازه داری: قرار نیست هر توسعهدهنده اجازهٔ ساخت و حذف هر منبع تو هر حساب رو داشته باشه، پس باید خودت منطق مجوزدهی بنویسی. نویسنده میگه بهترین حالت اینه که دقیقاً دسترسیهای IAM رو دوباره بسازی و بدترین حالت اینه که عملاً به کاربرها ترفیع دسترسی داده باشی.
راهحل جدید از نظر اصولی شبیه کاریه که خود CLI هنگام ورود انجام میده، فقط با یه اپلیکیشن تو فضای ابری بهجای لپتاپ. کاربر به هویتسنج خودش — Okta، Entra ID یا هر چیز دیگه — وارد میشه و یه توکن OIDC میگیره، اون رو به اپلیکیشن میده، و اپلیکیشن اون توکن رو با یه توکن صادرشده از Identity Center عوض میکنه.
از اون به بعد اپلیکیشن با همون توکن میتونه فهرست حسابهایی که کاربر بهشون دسترسی داره، نقشهای موجود تو اون حسابها و در نهایت اعتبارنامهٔ موقت یکی از اون نقشها رو بگیره. نکتهٔ مهم اینه که کاربر لازم نیست به خود Identity Center وارد شده باشه؛ فقط ورود به هویتسنج کافیه. نتیجهاش اینه که اپلیکیشن دقیقاً همون کاری رو میتونه بکنه که خود کاربر میتونه، نه بیشتر و نه کمتر.
بخش جالب برای تیمهای امنیت، ردپاییه که تو CloudTrail میمونه. تنها فراخوانی که به نقش خود اپلیکیشن نسبت داده میشه، همون تبادل اولیهٔ توکنه؛ از اون به بعد هویت ثبتشده در رویدادها خودِ کاربره، با یه بخش جداگانه که نشون میده عمل «از طرف» چه کاربری انجام شده و با کدوم شناسهٔ اعتبارنامه.
نویسنده میگه مستندات این قابلیت هنوز خیلی کمجونه و شکل رویدادهای CloudTrail هم جاهایی عجیبه — بعضی فراخوانیها پارامترهای درخواست غیرمنتظرهای ثبت میکنن. به همین خاطر یادداشتش رو در قالب «یادداشتهای میدانی» منتشر کرده و کنارش هم توصیههایی دربارهٔ اینکه امروز باید سراغش رفت یا نه، و فهرستی از قابلیتهایی که به نظرش هنوز کم داره.
نکات کلیدی:
- سرویسهای سمت سرور میتونن از طرف کاربرشون نقش AWS بگیرن
- جای الگوی قدیمی «دسترسی مجموع کاربران بهعلاوهٔ منطق مجوزدهی دستساز»
- کاربر فقط باید به هویتسنج وارد بشه، نه به خود Identity Center
- اپلیکیشن دقیقاً دسترسی همون کاربر رو میگیره، نه بیشتر
- در CloudTrail رویدادها به خود کاربر نسبت داده میشن، نه به نقش سرویس
- مستندات فعلاً کمجونه و بعضی پارامترهای رویداد نامعمولن




