ফায়ারবেস নিরাপত্তা নিয়ম

ক্লাউড ফায়ারস্টোর, ফায়ারবেস রিয়েলটাইম ডেটাবেস এবং ক্লাউড স্টোরেজে আপনার ডেটা সুরক্ষিত করতে আমাদের নমনীয়, এক্সটেনসিবল ফায়ারবেস সুরক্ষা নিয়মগুলি ব্যবহার করুন৷

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

আপনার ব্যবহারকারীরা রিয়েলটাইম ডেটাবেস, ক্লাউড ফায়ারস্টোর এবং ক্লাউড স্টোরেজের জন্য কোন ডেটা অ্যাক্সেস করতে পারে তা নির্ধারণ করতে ফায়ারবেস সুরক্ষা নিয়মগুলি এক্সটেনসিবল, নমনীয় কনফিগারেশন ভাষাগুলিকে লিভারেজ করে৷ ফায়ারবেস রিয়েলটাইম ডেটাবেস নিয়মগুলি JSONকে নিয়মের সংজ্ঞায় লিভার করে, যখন ক্লাউড ফায়ারস্টোর সুরক্ষা নিয়ম এবং ক্লাউড স্টোরেজের জন্য ফায়ারবেস সুরক্ষা নিয়মগুলি আরও জটিল নিয়ম-নির্দিষ্ট কাঠামোগুলিকে মিটমাট করার জন্য নির্মিত একটি অনন্য ভাষাকে লিভার করে।

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

মূল ক্ষমতা

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

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

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

ক্লাউড ফায়ারস্টোর এবং ক্লাউড স্টোরেজের জন্য, নিয়মগুলি নিম্নলিখিত সিনট্যাক্স ব্যবহার করে:

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

রিয়েলটাইম ডেটাবেসের জন্য, JSON-ভিত্তিক নিয়মগুলি নিম্নলিখিত সিনট্যাক্স ব্যবহার করে:

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

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

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

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

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

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

,

ফায়ারবেস নিরাপত্তা নিয়ম

ক্লাউড ফায়ারস্টোর, ফায়ারবেস রিয়েলটাইম ডেটাবেস এবং ক্লাউড স্টোরেজে আপনার ডেটা সুরক্ষিত করতে আমাদের নমনীয়, এক্সটেনসিবল ফায়ারবেস সুরক্ষা নিয়মগুলি ব্যবহার করুন৷

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

আপনার ব্যবহারকারীরা রিয়েলটাইম ডেটাবেস, ক্লাউড ফায়ারস্টোর এবং ক্লাউড স্টোরেজের জন্য কোন ডেটা অ্যাক্সেস করতে পারে তা নির্ধারণ করতে ফায়ারবেস সুরক্ষা নিয়মগুলি এক্সটেনসিবল, নমনীয় কনফিগারেশন ভাষাগুলিকে লিভারেজ করে৷ ফায়ারবেস রিয়েলটাইম ডেটাবেস নিয়মগুলি JSONকে নিয়মের সংজ্ঞায় লিভার করে, যখন ক্লাউড ফায়ারস্টোর সুরক্ষা নিয়ম এবং ক্লাউড স্টোরেজের জন্য ফায়ারবেস সুরক্ষা নিয়মগুলি আরও জটিল নিয়ম-নির্দিষ্ট কাঠামোগুলিকে মিটমাট করার জন্য নির্মিত একটি অনন্য ভাষাকে লিভার করে।

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

মূল ক্ষমতা

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

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

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

ক্লাউড ফায়ারস্টোর এবং ক্লাউড স্টোরেজের জন্য, নিয়মগুলি নিম্নলিখিত সিনট্যাক্স ব্যবহার করে:

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

রিয়েলটাইম ডেটাবেসের জন্য, JSON-ভিত্তিক নিয়মগুলি নিম্নলিখিত সিনট্যাক্স ব্যবহার করে:

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

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

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

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

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

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