قوانین امنیتی Firebase را برای ذخیره سازی ابر درک کنید

به طور سنتی ، امنیت یکی از پیچیده ترین قسمت های توسعه برنامه بوده است. در بیشتر برنامه ها ، توسعه دهندگان باید یک سرور بسازند و احراز هویت (کاربر شخصی است) و مجوز (کاری که کاربر می تواند انجام دهد) را مدیریت کند. احراز هویت و مجوز سخت است ، درست تر دشوار است و برای موفقیت محصول شما حیاتی است.

مشابه نحوه احراز هویت Firebase برای شما احراز هویت کاربران خود را آسان می کند ، قوانین امنیتی Firebase برای ذخیره سازی ابری امکان دسترسی به کاربران و تأیید درخواست ها را برای شما آسان می کند. قوانین امنیتی Cloud Storage با اجازه دادن به شما برای تعیین مجوزهای مبتنی بر مسیر ، پیچیدگی را برای شما مدیریت می کنند. فقط در چند خط کد ، می توانید قوانین مجوز را بنویسید که درخواست Cloud Storage را به کاربر خاصی محدود کرده یا اندازه بارگذاری را محدود کند.

پایگاه داده فایربیس بیدرنگ دارای یک ویژگی مشابه، به نام فایربیس بیدرنگ قوانین پایگاه

احراز هویت

دانستن اینکه کاربران شما چه کسی هستند ، بخش مهمی در ساخت یک برنامه است و تأیید اعتبار Firebase یک راه حل آسان برای استفاده ، ایمن و فقط از طرف مشتری برای تأیید اعتبار فراهم می کند. قوانین امنیتی Firebase برای Cloud Storage با امنیت Firebase برای امنیت مبتنی بر کاربر ارتباط برقرار می کند. هنگامی که یک کاربر با Firebase احراز هویت، احراز هویت request.auth متغیر در ابر ذخیره سازی قوانین امنیتی یک شی است که شامل شناسه کاربر منحصر به فرد (می شود request.auth.uid ) و تمام اطلاعات کاربر دیگری را در علامت ( request.auth.token ) . هنگامی که کاربر اعتبار سنجی نشده است، request.auth است null . این به شما امکان می دهد دسترسی ایمن به داده ها را براساس هر کاربر کنترل کنید. شما می توانید در یاد احراز هویت بخش.

مجوز

شناسایی کاربر شما تنها بخشی از امنیت است. هنگامی که آنها را شناختید ، به روشی برای کنترل دسترسی آنها به پرونده ها در Cloud Storage نیاز دارید.

Cloud Storage به شما امکان می دهد قوانین مربوط به مجوزهای موجود در سرورهای ما را برای هر پرونده و مسیر مشخص کنید و دسترسی به پرونده های برنامه خود را تعیین کنید. به عنوان مثال، به طور پیش فرض ذخیره سازی ابر قوانین امنیتی نیاز فایربیس احراز هویت به منظور انجام هر read و یا write عملیات بر روی تمام فایل های:

service firebase.storage {
  match /b/{bucket}/o {
    match /{allPaths=**} {
      allow read, write: if request.auth != null;
    }
  }
}

شما می توانید این قوانین با انتخاب یک برنامه فایربیس در ویرایش فایربیس کنسول و مشاهده Rules تب از بخش ذخیره سازی.

اعتبار سنجی داده ها

فایربیس قوانین امنیتی برای ابر ذخیره سازی نیز می توان برای اعتبار سنجی داده ها از جمله اعتبار نام فایل و مسیر و همچنین خواص فایل ابرداده مانند استفاده می شود، contentType و size .

service firebase.storage {
  match /b/{bucket}/o {
    match /images/{imageId} {
      // Only allow uploads of any image file that's less than 5MB
      allow write: if request.resource.size < 5 * 1024 * 1024
                   && request.resource.contentType.matches('image/.*');
    }
  }
}

مراحل بعدی