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

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

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

ফায়ারবেস রিয়েলটাইম ডেটাবেসের একটি অনুরূপ বৈশিষ্ট্য রয়েছে, যাকে বলা হয় ফায়ারবেস রিয়েলটাইম ডেটাবেস নিয়ম

প্রমাণীকরণ

আপনার ব্যবহারকারী কারা তা জানা একটি অ্যাপ্লিকেশন তৈরির একটি গুরুত্বপূর্ণ অংশ, এবং ফায়ারবেস প্রমাণীকরণ প্রমাণীকরণের জন্য ব্যবহার করা সহজ, নিরাপদ, ক্লায়েন্ট সাইড একমাত্র সমাধান প্রদান করে। ক্লাউড স্টোরেজের জন্য ফায়ারবেস নিরাপত্তা নিয়ম ব্যবহারকারী ভিত্তিক নিরাপত্তার জন্য ফায়ারবেস প্রমাণীকরণের সাথে সম্পর্কযুক্ত। যখন একজন ব্যবহারকারীকে ফায়ারবেস প্রমাণীকরণের মাধ্যমে প্রমাণীকরণ করা হয়, তখন ক্লাউড স্টোরেজ নিরাপত্তা নিয়মে request.auth ভেরিয়েবল একটি বস্তুতে পরিণত হয় যাতে ব্যবহারকারীর অনন্য আইডি ( request.auth.uid ) এবং টোকেনে থাকা অন্যান্য সমস্ত ব্যবহারকারীর তথ্য থাকে ( request.auth.token ) . যখন ব্যবহারকারী প্রমাণীকৃত না হয়, request.auth null হয়। এটি আপনাকে প্রতি ব্যবহারকারীর ভিত্তিতে ডেটা অ্যাক্সেসকে নিরাপদে নিয়ন্ত্রণ করতে দেয়। আপনি প্রমাণীকরণ বিভাগে আরও জানতে পারেন।

অনুমোদন

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

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

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

আপনি Firebase কনসোলে একটি Firebase অ্যাপ নির্বাচন করে এবং স্টোরেজ বিভাগের 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/.*');
    }
  }
}

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