Catch up on everthing we announced at this year's Firebase Summit. Learn more

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

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

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

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

احراز هویت

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

مجوز

شناسایی کاربر شما تنها بخشی از امنیت است. هنگامی که می دانید آنها چه کسانی هستند ، به راهی برای کنترل دسترسی آنها به فایل ها در 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/.*');
    }
  }
}

مراحل بعدی