Seniorسختی 4 از ۵· در 25٪ مصاحبههای این حوزه پرسیده شده
چطور از دسترسی عمومی ناخواسته به یک سرویس داخلی روی Cloud Run جلوگیری کنیم؟
☆نشان کردنپاسخ کوتاه
با غیرفعال کردن allow-unauthenticated و استفاده از IAM Invoker Role برای ارتباط سرویسبهسرویس.
پاسخ کامل
اگر یک سرویس داخلی (مثلاً یک API که فقط باید توسط سرویسهای دیگر پروژه فراخوانی شود) با allow-unauthenticated منتشر شود، عملاً به کل اینترنت باز است. با غیرفعال کردن این گزینه و اعطای نقش Cloud Run Invoker به هویت سرویس فراخوان (Service Account)، فقط درخواستهای دارای هویت مجاز پذیرفته میشوند.
نکته مهم
منبع کامل موضوع: Authenticating service-to-service — Google Cloud Documentation.
اشتباه رایج
❌ تنظیم allow-unauthenticated روی یک سرویس داخلی بدون لایه احراز هویت دیگر.
