Firebase Security Rules আপনার Cloud Firestore , Realtime Database এবং Cloud Storage ডেটার জন্য শক্তিশালী ও সম্পূর্ণ কাস্টমাইজযোগ্য সুরক্ষা প্রদান করে। এই গাইডের ধাপগুলো অনুসরণ করে আপনি সহজেই Security Rules ব্যবহার শুরু করতে পারেন, যা আপনার ডেটা সুরক্ষিত করবে এবং আপনার অ্যাপকে ক্ষতিকারক ব্যবহারকারীদের থেকে রক্ষা করবে।
Firebase Security Rules ভাষা বুঝুন
নিয়ম লেখা শুরু করার আগে, আপনি যে Firebase প্রোডাক্টগুলো ব্যবহার করছেন সেগুলোর জন্য নির্দিষ্ট Firebase Security Rules ভাষা পর্যালোচনা করতে কিছুটা সময় নেওয়া উচিত। Realtime Database তার Security Rules এর জন্য JavaScript-এর মতো সিনট্যাক্স এবং JSON কাঠামো ব্যবহার করে। অন্যদিকে, Cloud Firestore এবং Cloud Storage , Common Expression Language (CEL)-এর একটি সুপারসেট ব্যবহার করে, যা match এবং allow স্টেটমেন্টের উপর নির্ভর করে একটি নির্দিষ্ট পাথে অ্যাক্সেসের জন্য শর্ত নির্ধারণ করে।
Firebase Security Rules ভাষা সম্পর্কে আরও জানুন।
Authentication সেট আপ করুন
যদি আপনি ইতিমধ্যে এটি না করে থাকেন, তাহলে Firebase Authentication ব্যবহার করে আপনার ব্যবহারকারীদের শনাক্ত করুন। Firebase Authentication অনেক প্রচলিত প্রমাণীকরণ পদ্ধতি সমর্থন করে এবং ব্যাপক যাচাইকরণ ক্ষমতা প্রদানের জন্য Firebase Security Rules সাথে সমন্বিত হয়।
আপনি আপনার অ্যাপের জন্য অতিরিক্ত ও নিজস্ব প্রমাণীকরণ তথ্য সেট করতে পারেন।
Firebase Security Rules এবং Firebase Authentication সম্পর্কে আরও জানুন।
আপনার ডেটা এবং নিয়মের কাঠামো সংজ্ঞায়িত করুন
আপনি যেভাবে আপনার ডেটা সাজান, তা আপনার নিয়মগুলোর গঠন ও প্রয়োগকে প্রভাবিত করতে পারে। আপনার ডেটার কাঠামো নির্ধারণ করার সময়, Security Rules কাঠামোর উপর সেগুলোর সম্ভাব্য প্রভাব বিবেচনা করুন।
উদাহরণস্বরূপ, Cloud Firestore , আপনি প্রতিটি ব্যবহারকারীর জন্য একটি নির্দিষ্ট ভূমিকা নির্দেশ করে এমন একটি ফিল্ড অন্তর্ভুক্ত করতে চাইতে পারেন। তারপর, আপনার নিয়মগুলো সেই ফিল্ডটি পড়তে এবং ভূমিকা-ভিত্তিক অ্যাক্সেস মঞ্জুর করতে তা ব্যবহার করতে পারে।
আপনার ডেটা এবং রুলস আর্কিটেকচার নির্ধারণ করার সময় মনে রাখবেন যে, যদি কোনো রুল একটি ডেটাসেটে অ্যাক্সেস দেয়, তাহলে Firebase Security Rules সেই ডেটাসেটে অ্যাক্সেস দেয়। অন্য কথায়, আপনি যদি আপনার ডেটা হায়ারার্কির উচ্চতর স্তরে অ্যাক্সেস দিয়ে থাকেন, তাহলে কোনো সাবপাথে অ্যাক্সেসকে আরও সূক্ষ্মভাবে নিয়ন্ত্রণ করতে পারবেন না।
আপনার নিয়মাবলী অ্যাক্সেস করুন
আপনার বিদ্যমান Security Rules দেখতে, Firebase CLI অথবা Firebase কনসোল ব্যবহার করুন। ভুলবশত আপডেট ওভাররাইট হওয়া এড়াতে, নিশ্চিত করুন যে আপনি ধারাবাহিকভাবে একই পদ্ধতি ব্যবহার করে আপনার নিয়মগুলো সম্পাদনা করছেন। আপনার স্থানীয়ভাবে সংজ্ঞায়িত নিয়মগুলো সর্বশেষ আপডেটগুলো প্রতিফলিত করছে কিনা সে বিষয়ে আপনি নিশ্চিত না হলে, Firebase কনসোল সর্বদা আপনার Firebase Security Rules সর্বশেষ ডেপ্লয় করা সংস্করণটি দেখায়।
Firebase কনসোল থেকে আপনার নিয়মগুলো অ্যাক্সেস করতে, আপনার প্রজেক্টটি নির্বাচন করুন, তারপর Realtime Database , Cloud Firestore বা Storage- এ যান। সঠিক ডেটাবেস বা স্টোরেজ বাকেটে প্রবেশ করার পর Rules-এ ক্লিক করুন।
Firebase CLI থেকে আপনার নিয়মগুলো অ্যাক্সেস করতে, আপনার firebase.json ফাইলে উল্লিখিত rules ফাইলটিতে যান।
মৌলিক নিয়ম লিখুন
আপনার অ্যাপ তৈরি করার সময় এবং Security Rules বোঝার সময়, নিম্নলিখিত ব্যবহারের ক্ষেত্রগুলো সহ কয়েকটি মৌলিক সিকিউরিটি রুলস প্রয়োগ করার চেষ্টা করুন:
- শুধুমাত্র কন্টেন্টের মালিকের জন্য: ব্যবহারকারীর দ্বারা কন্টেন্টে প্রবেশাধিকার সীমাবদ্ধ করুন।
- মিশ্র প্রবেশাধিকার: ব্যবহারকারীর জন্য লেখার প্রবেশাধিকার সীমাবদ্ধ করুন, কিন্তু সর্বসাধারণের পড়ার প্রবেশাধিকার দিন।
- অ্যাট্রিবিউট-ভিত্তিক অ্যাক্সেস: কোনো গোষ্ঠী বা ধরনের ব্যবহারকারীর জন্য অ্যাক্সেস সীমাবদ্ধ করুন।
আপনার নিয়মগুলো পরীক্ষা করুন
আপনার অ্যাপের আচরণ সম্পূর্ণরূপে যাচাই করতে এবং আপনার Firebase Security Rules যাচাই করতে
কনফিগারেশন অনুযায়ী, স্থানীয় পরিবেশে ইউনিট টেস্ট চালানো ও স্বয়ংক্রিয় করতে Firebase Emulator ব্যবহার করুন।
আপনি যদি Firebase কনসোলে আপনার Firebase Security Rules সেট আপ করেন, তাহলে এর আচরণ দ্রুত যাচাই করার জন্য আপনি Firebase Rules Simulator ব্যবহার করতে পারেন। তবে, প্রোডাকশনে আপনার পরিবর্তনগুলো ডেপ্লয় করার আগে আমরা Firebase Emulator-এর মাধ্যমে আরও পুঙ্খানুপুঙ্খভাবে পরীক্ষা করার পরামর্শ দিই।
নিয়ম স্থাপন করুন
আপনার রুলগুলো প্রোডাকশনে ডেপ্লয় করতে Firebase কনসোল অথবা Firebase CLI ব্যবহার করুন। “Manage and deploy Firebase Security Rules অংশে বর্ণিত ধাপগুলো অনুসরণ করুন।