Firebase Security Rules

Cloud Firestore , Firebase Realtime Database এবং Cloud Storage আপনার ডেটা সুরক্ষিত করতে আমাদের নমনীয়, এক্সটেনসিবল ফায়ারবেস সুরক্ষা নিয়ম ব্যবহার করুন।

Firebase Security Rules আপনার ডেটা এবং ক্ষতিকারক ব্যবহারকারীদের মধ্যে দাঁড়িয়ে থাকে। আপনি এমন সহজ বা জটিল নিয়ম লিখতে পারেন যা আপনার অ্যাপের ডেটা আপনার নির্দিষ্ট অ্যাপের প্রয়োজনীয় গ্রানুলারিটির স্তরে সুরক্ষিত রাখে।

Firebase Security Rules Realtime Database , Cloud Firestore এবং Cloud Storage জন্য আপনার ব্যবহারকারীরা কোন ডেটা অ্যাক্সেস করতে পারবেন তা নির্ধারণ করার জন্য এক্সটেনসিবল, নমনীয় কনফিগারেশন ভাষা ব্যবহার করে। Firebase Realtime Database Security Rules নিয়ম সংজ্ঞায় JSON ব্যবহার করে, যেখানে Cloud Firestore Security Rules এবং Cloud Storage জন্য Firebase Security Rules আরও জটিল নিয়ম-নির্দিষ্ট কাঠামোর জন্য তৈরি একটি অনন্য ভাষা ব্যবহার করে।

আপনার অ্যাপে ব্যবহৃত নির্দিষ্ট Firebase পণ্যগুলির জন্য কীভাবে Rules সেট আপ করবেন এবং Firebase পণ্যগুলিতে Rules আচরণ কীভাবে আলাদা হয় সে সম্পর্কে আরও জানুন।

শুরু করুন

মূল ক্ষমতা

নমনীয়তা আপনার অ্যাপের গঠন এবং আচরণের জন্য উপযুক্ত কাস্টম নিয়ম লিখুন। Rules এমন ভাষা ব্যবহার করে যা আপনাকে অ্যাক্সেস অনুমোদনের জন্য আপনার নিজস্ব ডেটা ব্যবহার করতে দেয়।
গ্রানুলারিটি তোমার নিয়মগুলো তোমার প্রয়োজন অনুযায়ী বিস্তৃত বা সংকীর্ণ হতে পারে।
স্বাধীন নিরাপত্তা যেহেতু Rules আপনার অ্যাপের বাইরে ( Firebase কনসোল বা Firebase CLI-তে) সংজ্ঞায়িত করা হয়, তাই ক্লায়েন্টরা সুরক্ষা প্রয়োগের জন্য দায়ী নয়, বাগগুলি ডেটার সাথে আপস করে না এবং আপনার ডেটা সর্বদা সুরক্ষিত থাকে।

তারা কিভাবে কাজ করে?

Firebase Security Rules ডাটাবেস পাথের সাথে একটি প্যাটার্ন মেলানোর মাধ্যমে কাজ করে এবং তারপর সেই পাথগুলিতে ডেটা অ্যাক্সেসের অনুমতি দেওয়ার জন্য কাস্টম শর্ত প্রয়োগ করে। ফায়ারবেস পণ্য জুড়ে সমস্ত Rules একটি পাথ-ম্যাচিং কম্পোনেন্ট এবং একটি শর্তসাপেক্ষ বিবৃতি থাকে যা পঠন বা লেখার অ্যাক্সেসের অনুমতি দেয়। আপনার অ্যাপে ব্যবহৃত প্রতিটি ফায়ারবেস পণ্যের জন্য আপনাকে অবশ্যই Rules নির্ধারণ করতে হবে।

Cloud Firestore এবং Cloud Storage জন্য, Rules নিম্নলিখিত বাক্য গঠন ব্যবহার করে:

service <<name>> {
  // Match the resource path.
  match <<path>> {
    // Allow the request if the following conditions are true.
    allow <<methods>> : if <<condition>>
  }
}

Realtime Database জন্য, JSON-ভিত্তিক Rules নিম্নলিখিত সিনট্যাক্স ব্যবহার করে:

{
  "rules": {
    "<<path>>": {
    // Allow the request if the condition for each method is true.
      ".read": <<condition>>,
      ".write": <<condition>>
    }
  }
}

Rules OR বিবৃতি হিসাবে প্রয়োগ করা হয়, AND বিবৃতি হিসাবে নয়। ফলস্বরূপ, যদি একাধিক নিয়ম একটি পথের সাথে মিলে যায় এবং যেকোনো মিলিত শর্ত অ্যাক্সেস মঞ্জুর করে, তাহলে Rules সেই পথের ডেটাতে অ্যাক্সেস মঞ্জুর করে। অতএব, যদি একটি বিস্তৃত নিয়ম ডেটাতে অ্যাক্সেস মঞ্জুর করে, তাহলে আপনি আরও নির্দিষ্ট নিয়ম দিয়ে সীমাবদ্ধ করতে পারবেন না। তবে, আপনার Rules খুব বেশি ওভারল্যাপ না করে তা নিশ্চিত করে আপনি এই সমস্যাটি এড়াতে পারেন। Firebase Security Rules আপনার মিলিত পাথগুলিতে কম্পাইলার সতর্কতা হিসাবে ওভারল্যাপগুলিকে চিহ্নিত করে।

Firebase Security Rules ব্যবহারকারী-ভিত্তিক অনুমতি প্রদানের জন্য Authentication ব্যবহার করতে পারে, এবং আপনার সেট করা শর্তগুলি খুব মৌলিক বা অবিশ্বাস্যভাবে জটিল হতে পারে। Rules লেখা শুরু করার আগে Rules ভাষা এবং আচরণ সম্পর্কে আরও জানুন।

বাস্তবায়নের পথ

পণ্য SDK গুলিকে একীভূত করুন আপনার অ্যাপের জন্য Cloud Firestore , Cloud Storage , অথবা Realtime Database সেট আপ করুন।
আপনার Firebase Security Rules লিখুন Rules কীভাবে কাজ করে সে সম্পর্কে আরও জানুন এবং কিছু মৌলিক Rules সেট করুন
আপনার Firebase Security Rules পরীক্ষা করুন আপনার অ্যাপের আচরণ পরীক্ষা করতে Realtime Database এবং Cloud Firestore এমুলেটর ব্যবহার করুন এবং প্রোডাকশনে স্থাপন করার আগে আপনার নিয়মগুলি যাচাই করুন।
আপনার Firebase Security Rules স্থাপন করুন আপনার নিয়মগুলি উৎপাদনে স্থাপন করতে Firebase কনসোল অথবা Firebase CLI ব্যবহার করুন।

পরবর্তী পদক্ষেপ