Firebase Security Rules

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

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

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

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

শুরু করুন

মূল ক্ষমতা

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

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

Firebase Security Rules ডাটাবেস পাথগুলির সাথে একটি প্যাটার্ন মেলে এবং তারপর সেই পাথে ডেটা অ্যাক্সেসের অনুমতি দেওয়ার জন্য কাস্টম শর্ত প্রয়োগ করে কাজ করে৷ ফায়ারবেস পণ্য জুড়ে সমস্ত Rules একটি পাথ-ম্যাচিং উপাদান এবং একটি শর্তসাপেক্ষ বিবৃতি রয়েছে যা পড়ার বা লেখার অ্যাক্সেসের অনুমতি দেয়। আপনি আপনার অ্যাপে ব্যবহার করেন এমন প্রতিটি Firebase পণ্যের জন্য আপনাকে অবশ্যই 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 ব্যবহার করুন৷

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