ApiGateway (درگاه یکپارچهٔ سرویسها)
تنها ورودی عمومی به میکروسرویسها. درخواست را احراز هویت میکند و به مقصد درست میفرستد؛ مسیرها از فهرست زنده کشف سرویس ساخته میشوند.
- حوزه
- زیرساخت پلتفرم / Edge و امنیت شبکه
- مشتریان هدف
- تیمهای فنی و امنیتی سازمان؛ شرکای یکپارچهسازی (API/کلید دسترسی محدود)؛ مدیران IT مسئول ممیزی ترافیک
- قابلیتهای اصلی
- مسیریابی پویا از Eureka، اعتبارسنجی JWT/API Key، بازسازی امن هدر کاربر، لیست سیاه توکن، Rate Limiting، پورتال مستندات متمرکز
ApiGateway تنها نقطهٔ ورودی عمومی به تمام میکروسرویسهای پلتفرم است. این سرویس بر پایهٔ YARP (Yet Another Reverse Proxy) ساخته شده و هر درخواست ورودی را احراز هویت، غنیسازی و به سرویس مقصد درست هدایت میکند. مسیرهای پشت Gateway از فهرست زندهٔ Eureka ساخته میشوند، نه از فایل تنظیمات ثابت؛ یعنی هیچ آدرس backend در appsettings نوشته نمیشود و افزودن سرویس جدید نیازی به تغییر دستی مسیرها در Gateway ندارد (هر سرویس segment مسیر خودش را در متادیتای ثبتنام Eureka منتشر میکند و Gateway ظرف حدود ۳۰ ثانیه آن را میخواند).
لایهٔ احراز هویت Gateway، توکن JWT یا کلید API را میخواند، هدرهای کاربر (User-Id، Company-Id، نقشها، شناسهٔ Tenant و ...) را از صفر بازسازی میکند (تا از جعل هدر توسط کلاینت جلوگیری شود) و به سرویس مقصد forward میکند؛ هر سرویس پاییندستی این هدرها را معتبر و آمادهٔ استفاده میبیند، بدون نیاز به اعتبارسنجی مجدد توکن. بررسی لیست سیاه توکن (logout و logout-all) و انتخاب شرکت جاری کاربر (از میان شرکتهای مجاز او) هم در همین لایه انجام میشود، نه در هر سرویس جداگانه.
Gateway همچنین پورتال مستندسازی متمرکز (Scalar/Swagger روی مسیر /docs) را میزبانی میکند که مستندات OpenAPI همهٔ سرویسها را تجمیع کرده و بر اساس دسترسی هر کاربر، فقط مستندات سرویسهای مجاز را نشان میدهد. از نگاه یک خریدار سازمانی، ApiGateway یعنی یک نقطهٔ کنترل امنیتی و عملیاتی واحد برای کل پلتفرم بهجای اینکه هر مشتری یا هر تیم مجبور باشد بهصورت جداگانه با دهها سرویس backend صحبت کند.
قابلیتها و امکانات کلیدی
مسیریابی پویا از Eureka
هیچ آدرس backend در تنظیمات ثابت نیست؛ اضافهشدن سرویس جدید در فهرست ثبتنام دیده و خودکار مسیرگذاری میشود.
اعتبارسنجی توکن و کلید API
پذیرش هم JWT (با JWKS از Identity) و هم کلید API با محدودهٔ مسیر، در یک نقطهٔ واحد.
بازسازی امن هدرهای کاربر
قبل از forward، هر هدر ورودی از کلاینت پاک و از روی claimهای معتبر توکن دوباره ساخته میشود؛ از جعل هویت جلوگیری میکند.
بررسی دوسطحی لیست سیاه توکن
چه یک توکن خاص و چه همهٔ توکنهای یک کاربر (بعد از logout-all) در همین لایه رد میشوند، پیش از رسیدن به سرویس مقصد.
انتخاب و اعتبارسنجی شرکت جاری
اگر کاربر شرکتی انتخاب نکرده باشد، اولین شرکت مجازش خودکار انتخاب میشود؛ انتخاب شرکتی خارج از فهرست مجاز کاربر رد میشود.
محدودسازی نرخ درخواست (Rate Limiting)
محافظت عمومی در برابر بار بیشازحد، بههمراه محدودیت اختصاصی برای صفحهٔ ورود پورتال مستندات.
پورتال مستندات متمرکز
تجمیع OpenAPI همهٔ سرویسها پشت یک صفحه با کنترل دسترسی بر اساس مجوز واقعی کاربر در هر سرویس.
مسیرهای عمومی مشخص و محدود
فقط فهرست کوچکی از مسیرها (مثل ورود، تصویر پروفایل، لوگوی عمومی) بدون نیاز به توکن از Gateway عبور میکنند؛ بقیه همیشه احراز هویت میشوند.
ارزش کسبوکاری
مسیریابی مبتنی بر کشف خودکار سرویس (Eureka) یعنی افزودن یا جابهجایی یک سرویس backend، بدون توقف یا بازنشر Gateway انجام میشود؛ این مستقیماً زمان راهاندازی سرویسهای جدید و هزینهٔ عملیاتی نگهداری پلتفرم را کاهش میدهد. تمرکز اعتبارسنجی توکن، بازسازی هدر و بررسی لیست سیاه در یک لایه بهجای تکرار آن در هر سرویس، هم سطح امنیت یکنواختتری ایجاد میکند و هم نگهداری آن را سادهتر میکند، چون یک تغییر سیاست امنیتی فقط در یک نقطه اعمال میشود.
سناریوهای استفاده
- توسعهٔ یک سرویس جدید توسط تیم مستقل که همان روز راهاندازی، بدون هماهنگی با تیم Gateway، پشت آدرس عمومی /api/{نام-سرویس}/ در دسترس قرار میگیرد.
- ارائهٔ دسترسی برنامهنویسی به یک شریک تجاری با کلید API محدود به فقط یک یا چند سرویس مشخص.
- بازبینی امنیتی یا ممیزی که نیاز دارد نشان دهد همهٔ ترافیک ورودی از یک نقطهٔ کنترل واحد عبور میکند.
- مسدودکردن فوری همهٔ نشستهای یک کاربر مشکوک در سطح Gateway، بدون نیاز به تغییر در هیچ سرویس backend.
این ماژول را روی دادهٔ نمایشی ببینید
در جلسهٔ معرفی، سناریوهای سازمان شما را روی نسخهٔ نمایشی دارا مرور میکنیم و به پرسشهای تیم فنی و مالی پاسخ میدهیم.