查看 2022 年 Google I/O 大会上介绍的 Firebase 新动态。了解详情

دسترسی پروژه را با Firebase IAM مدیریت کنید

مدیریت هویت و دسترسی (IAM) به شما امکان می‌دهد به منابع خاص Firebase و Google دسترسی دقیق بدهید و از دسترسی ناخواسته به منابع دیگر جلوگیری کنید. IAM به شما این امکان را می دهد که اصل امنیتی کمترین امتیاز را اتخاذ کنید، بنابراین فقط به منابع خود دسترسی لازم را می دهید.

برای توضیح دقیق IAM، اسناد Google Cloud IAM را بخوانید.

نمای کلی Firebase IAM

Firebase گزینه های اضافی IAM را ارائه می دهد که مختص پروژه های Firebase و اعضای پروژه شما هستند.

هنگامی که یک عضو پروژه احراز هویت شده، اقدامی را در Firebase درخواست می‌کند، IAM در مورد اینکه آیا عضو پروژه مجوز انجام عملیات درخواستی روی منبع را دارد یا خیر، تصمیم مجوز می‌گیرد. اینکه آیا عضو پروژه مجاز به انجام درخواست است یا خیر بستگی به نقش تعیین شده عضو پروژه دارد. هر نقش مجموعه‌ای از مجوزها است و وقتی نقشی را به یکی از اعضای پروژه اختصاص می‌دهید، تمام مجوزهای آن نقش را به آن عضو پروژه می‌دهید.

اعضای پروژه

با استفاده از Firebase IAM، نقش ها (و مجوزهای ذاتی آنها) را به اعضای پروژه خود اختصاص می دهید. اعضای پروژه می توانند از انواع زیر باشند:

  • حساب کاربری گوگل
  • حساب سرویس
  • گروه گوگل

نقش ها

مجوزها از طریق نقش ها به اعضای پروژه شما داده می شود. نقش مجموعه ای از مجوزها است. هنگامی که نقشی را به یک عضو پروژه اختصاص می دهید، به آن عضو پروژه تمام مجوزهایی را که نقش شامل می شود، می دهید.

Firebase IAM از انواع نقش های زیر پشتیبانی می کند:

  • نقش‌های اصلی : نقش‌های مالک اصلی، ویرایشگر و بیننده (که قبلاً نقش‌های «اولیه» نامیده می‌شدند).

  • نقش‌های از پیش تعریف‌شده: نقش‌های خاص Firebase انتخاب‌شده که کنترل دسترسی گرانول‌تری را نسبت به نقش‌های اصلی امکان‌پذیر می‌کنند. Firebase ارائه می دهد:

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

    • نقش‌های دسته‌بندی محصول : نقش‌هایی که دسترسی کامل خواندن/نوشتن یا فقط خواندنی را به گروه‌هایی از محصولات می‌دهند. آنها بر اساس گوگل آنالیتیکس و دسته بندی محصولات کلی ساخته شده اند.

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

  • نقش‌های سفارشی : نقش‌های کاملاً سفارشی‌سازی‌شده‌ای که ایجاد می‌کنید تا مجموعه‌ای از مجوزها را مطابق با الزامات خاص سازمان شما تنظیم کنید.

تأخیر تغییر نقش

اگر تخصیص نقش یکی از اعضای پروژه را تغییر دهید، ممکن است تا 5 دقیقه طول بکشد تا تغییر اعمال شود.

اعضای پروژه و نقش آنها را مدیریت کنید

مشاهده اعضای پروژه و نقش آنها

می‌توانید بسیاری از اعضای پروژه خود و نقش‌های آنها را در تب Users and Permissions > تنظیمات پروژه در کنسول Firebase مشاهده کنید. به موارد زیر توجه کنید:
  • کنسول Firebase فقط اعضای پروژه را فهرست می کند که یک نقش اصلی (مالک، ویرایشگر، نمایشگر) یا یک نقش از پیش تعریف شده Firebase به آنها اختصاص داده شده است. اعضای پروژه لیست شده در این برگه تنها اعضای پروژه هستند که به پروژه Firebase در کنسول Firebase دسترسی دارند.
  • کنسول Firebase اعضای پروژه را که حساب خدمات هستند فهرست نمی کند. این اعضای پروژه را در صفحه IAM Google Cloud Console مشاهده کنید.
از طرف دیگر، می‌توانید همه اعضای پروژه و نقش‌های آنها را در صفحه IAM کنسول ابری Google مشاهده کنید.

نقشی را به یکی از اعضای پروژه اختصاص دهید

برای مدیریت نقش(های) اختصاص داده شده به هر یک از اعضای پروژه، باید مالک پروژه Firebase باشید (یا نقشی با مجوز resourcemanager.projects.setIamPolicy به شما اختصاص داده شود).

در اینجا مکان هایی وجود دارد که می توانید نقش ها را تعیین و مدیریت کنید:

اگر مالک پروژه شما دیگر نمی تواند وظایف مالک را انجام دهد (مثلاً شخصی که شرکت شما را ترک کرده است) و پروژه شما از طریق یک سازمان Google Cloud مدیریت نمی شود (به پاراگراف بعدی مراجعه کنید)، می توانید با پشتیبانی Firebase تماس بگیرید . یک مالک موقت اختصاص داده شده است.

توجه داشته باشید که اگر پروژه Firebase بخشی از یک سازمان Google Cloud باشد، ممکن است مالک نداشته باشد. اگر نمی‌توانید مالکی برای پروژه Firebase خود پیدا کنید، با شخصی که سازمان Google Cloud شما را مدیریت می‌کند تماس بگیرید تا مالکی را برای پروژه تعیین کند.