دستورالعمل‌های امنیتی عمومی برای محیط‌های مختلف گردش کار توسعه

این صفحه مهم‌ترین روال‌های مطلوب برای امنیت در محیط‌های مختلف را شرح می‌دهد، اما برای راهنمایی دقیق‌تر و کامل‌تر درباره امنیت و Firebase، فهرست بازبینی امنیتی را مرور کنید.

امنیت برای محیط‌های پیش‌تولید

یکی‌از مزایای جدا کردن محیط‌ها در پروژه‌های Firebase مختلف این است که عامل بدخواهی که می‌تواند به محیط‌های پیش‌تولید شما دسترسی پیدا کند، نمی‌تواند به داده‌های واقعی کاربر دسترسی پیدا کند. در اینجا مهم‌ترین اقدامات احتیاطی امنیتی که باید برای محیط‌های پیش‌تولید انجام دهید آورده شده است:

  • دسترسی به محیط‌های پیش‌تولید را محدود کنید. برای برنامه‌های تلفن همراه، از App Distribution (یا چیزی مشابه) برای توزیع برنامه به مجموعه خاصی از افراد استفاده کنید. محدود کردن برنامه‌های وب دشوارتر است؛ راه‌اندازی عملکرد مسدودسازی را برای محیط‌های پیش‌تولید درنظر بگیرید که دسترسی را به کاربرانی با نشانی‌های ایمیل مختص دامنه شما محدود می‌کند. یا اگر از Firebase Hosting استفاده می‌کنید، گردش‌های کاری پیش‌تولید را برای استفاده از نشانی‌های وب پیش‌نمایش موقت راه‌اندازی کنید.

  • وقتی محیطی نیاز به ماندگاری ندارد و فقط توسط یک نفر (یا در آزمایش‌ها، توسط یک دستگاه) استفاده می‌شود، از Firebase Local Emulator Suite استفاده کنید. این شبیه‌سازها ایمن‌تر و سریع‌تر هستند زیرا می‌توانند به‌جای استفاده از منابع ابری، کاملاً روی میزبان محلی کار کنند.

  • مطمئن شوید که Firebase Security Rules را در محیط‌های پیش‌تولید راه‌اندازی کرده‌اید، درست همان‌طور که در محیط تولید انجام می‌دهید. به‌طور کلی، Security Rules باید در همه محیط‌ها یکسان باشد، با این هشدار که چون قوانین با کد تغییر می‌کنند، ممکن است قوانینی در مراحل اولیه خط لوله وجود داشته باشند که هنوز در محیط تولید وجود ندارند.

امنیت برای محیط‌های تولید

داده‌های تولید همیشه هدف هستند، حتی اگر برنامه ناشناخته باشد. دنبال کردن این رهنمودها باعث نمی‌شود که عاملان بدخواه نتوانند به داده‌هایتان دسترسی پیدا کنند، اما این کار را برای آن‌ها دشوارتر می‌کند:

  • App Check را برای همه محصولاتی که استفاده می‌کنید و از آن پشتیبانی می‌کنند فعال و اعمال کنید. App Check مطمئن می‌شود که درخواست‌های ارسال‌شده به سرویس‌های پسین شما از برنامه‌های واقعی شما ارسال شده باشند. برای استفاده از آن، باید هر نسخه از برنامه‌تان را با App Check ثبت کنید. راه‌اندازی آن قبل‌از داشتن کاربر آسان‌تر است، بنابراین آن را در اسرع وقت راه‌اندازی کنید.

  • Firebase Security Rules قوی بنویسید. Realtime Database، Cloud Firestore، و Cloud Storage همگی به Security Rules پیکربندی‌شده توسط توسعه‌دهنده متکی هستند تا اجرا کنند که چه کسی باید و چه کسی نباید بتواند به داده‌ها دسترسی داشته باشد. برای امنیت شما ضروری است که Security Rules خوبی بنویسید. اگر مطمئن نیستید چطور، با این codelab شروع کنید.

  • برای توصیه‌های بیشتر درباره امنیت محیط‌های تولید، بازبینه امنیتی را مرور کنید.

مراحل بعدی