ক্লাউড স্টোরেজের জন্য ফায়ারবেস সুরক্ষা নিয়মগুলি বুঝুন৷

ঐতিহ্যগতভাবে, অ্যাপ ডেভেলপমেন্টের সবচেয়ে জটিল অংশগুলির মধ্যে একটি হল নিরাপত্তা। বেশিরভাগ অ্যাপ্লিকেশনে, ডেভেলপারদের এমন একটি সার্ভার তৈরি এবং চালাতে হয় যা প্রমাণীকরণ (ব্যবহারকারী কে) এবং অনুমোদন (ব্যবহারকারী কী করতে পারে) পরিচালনা করে। প্রমাণীকরণ এবং অনুমোদন সেট আপ করা কঠিন, সঠিক করা কঠিন এবং আপনার পণ্যের সাফল্যের জন্য গুরুত্বপূর্ণ।

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

Firebase Realtime Database একটি অনুরূপ বৈশিষ্ট্য রয়েছে, যার নাম Firebase Realtime Database Security Rules

প্রমাণীকরণ

আপনার ব্যবহারকারীদের জানা একটি অ্যাপ্লিকেশন তৈরির একটি গুরুত্বপূর্ণ অংশ, এবং Firebase Authentication ব্যবহারে সহজ, নিরাপদ, ক্লায়েন্ট-পার্শ্বে প্রমাণীকরণের জন্য শুধুমাত্র সমাধান প্রদান করে। Firebase Security Rules for Cloud Storage ব্যবহারকারী-ভিত্তিক নিরাপত্তার জন্য Firebase Authentication সাথে সম্পর্কিত। যখন একজন ব্যবহারকারী Firebase Authentication দিয়ে প্রমাণীকরণ করা হয়, তখন Cloud Storage Security Rules এর request.auth ভেরিয়েবলটি এমন একটি বস্তুতে পরিণত হয় যাতে ব্যবহারকারীর অনন্য ID ( request.auth.uid ) এবং টোকেনে থাকা অন্যান্য সমস্ত ব্যবহারকারীর তথ্য ( request.auth.token ) থাকে। যখন ব্যবহারকারী প্রমাণীকরণ করা হয় না, তখন request.auth null থাকে। এটি আপনাকে প্রতি-ব্যবহারকারীর ভিত্তিতে নিরাপদে ডেটা অ্যাক্সেস নিয়ন্ত্রণ করতে দেয়। আপনি Authentication বিভাগে আরও জানতে পারেন।

অনুমোদন

আপনার ব্যবহারকারীকে শনাক্ত করা নিরাপত্তার অংশ মাত্র। একবার আপনি যখন তাদের পরিচয় জানতে পারবেন, তখন Cloud Storage তাদের ফাইল অ্যাক্সেস নিয়ন্ত্রণ করার একটি উপায় আপনার প্রয়োজন।

Cloud Storage আপনাকে আমাদের সার্ভারে থাকা প্রতিটি ফাইল এবং প্রতিটি পাথের অনুমোদনের নিয়ম নির্দিষ্ট করতে দেয় এবং আপনার অ্যাপের ফাইলগুলিতে অ্যাক্সেস নির্ধারণ করতে দেয়। উদাহরণস্বরূপ, ডিফল্ট Cloud Storage Security Rules সমস্ত ফাইলে যেকোনো read বা write ক্রিয়াকলাপ সম্পাদন করার জন্য Firebase Authentication প্রয়োজন হয়:

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

আপনি Firebase কনসোলে একটি Firebase অ্যাপ নির্বাচন করে এবং স্টোরেজ বিভাগের Rules ট্যাবটি দেখে এই নিয়মগুলি সম্পাদনা করতে পারেন।

ডেটা যাচাইকরণ

Cloud Storage জন্য Firebase Security 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/.*');
    }
  }
}

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