ঐতিহ্যগতভাবে, নিরাপত্তা অ্যাপ ডেভেলপমেন্টের সবচেয়ে জটিল অংশগুলির মধ্যে একটি। বেশিরভাগ অ্যাপ্লিকেশনে, বিকাশকারীদের অবশ্যই একটি সার্ভার তৈরি এবং চালাতে হবে যা প্রমাণীকরণ (কে একজন ব্যবহারকারী) এবং অনুমোদন (একজন ব্যবহারকারী কী করতে পারে) পরিচালনা করে। প্রমাণীকরণ এবং অনুমোদন সেট আপ করা কঠিন, সঠিক হওয়া কঠিন এবং আপনার পণ্যের সাফল্যের জন্য গুরুত্বপূর্ণ।
Firebase Authentication কীভাবে আপনার ব্যবহারকারীদের প্রমাণীকরণ করা সহজ করে তোলে, একইভাবে Cloud Storage জন্য Firebase Security Rules আপনার জন্য ব্যবহারকারীদের অনুমোদন করা এবং অনুরোধগুলি যাচাই করা সহজ করে তোলে। Cloud Storage Security Rules আপনাকে পাথ ভিত্তিক অনুমতি নির্দিষ্ট করার অনুমতি দিয়ে আপনার জন্য জটিলতা পরিচালনা করে। কোডের মাত্র কয়েকটি লাইনে, আপনি অনুমোদনের নিয়ম লিখতে পারেন যা একটি নির্দিষ্ট ব্যবহারকারীর কাছে Cloud Storage অনুরোধ সীমাবদ্ধ করে বা আপলোডের আকার সীমিত করে।
Firebase Realtime Database একটি অনুরূপ বৈশিষ্ট্য রয়েছে, যাকে বলা হয় Firebase Realtime Database Security Rules
প্রমাণীকরণ
আপনার ব্যবহারকারী কারা তা জানা একটি অ্যাপ্লিকেশন তৈরির একটি গুরুত্বপূর্ণ অংশ, এবং Firebase Authentication প্রমাণীকরণের জন্য ব্যবহার করা সহজ, নিরাপদ, ক্লায়েন্ট সাইড একমাত্র সমাধান প্রদান করে। Cloud Storage জন্য Firebase Security Rules ব্যবহারকারী ভিত্তিক নিরাপত্তার জন্য Firebase Authentication সাথে সম্পর্কযুক্ত। যখন একজন ব্যবহারকারীকে Firebase Authentication মাধ্যমে প্রমাণীকরণ করা হয়, তখন Cloud Storage Security Rules request.auth
ভেরিয়েবল এমন একটি বস্তুতে পরিণত হয় যাতে ব্যবহারকারীর অনন্য আইডি ( request.auth.uid
) এবং টোকেনে থাকা অন্যান্য সমস্ত ব্যবহারকারীর তথ্য থাকে ( request.auth.token
) . যখন ব্যবহারকারী প্রমাণীকৃত না হয়, request.auth
null
হয়। এটি আপনাকে প্রতি ব্যবহারকারীর ভিত্তিতে ডেটা অ্যাক্সেসকে নিরাপদে নিয়ন্ত্রণ করতে দেয়। আপনি প্রমাণীকরণ বিভাগে আরও জানতে পারেন।
অনুমোদন
আপনার ব্যবহারকারীকে শনাক্ত করা নিরাপত্তার অংশ মাত্র। তারা কারা তা একবার জানলে, Cloud Storage ফাইলগুলিতে তাদের অ্যাক্সেস নিয়ন্ত্রণ করার জন্য আপনার একটি উপায় প্রয়োজন৷
Cloud Storage আপনাকে প্রতি ফাইল এবং প্রতি পাথ অনুমোদনের নিয়মগুলি নির্দিষ্ট করতে দেয় যা আমাদের সার্ভারে থাকে এবং আপনার অ্যাপের ফাইলগুলিতে অ্যাক্সেস নির্ধারণ করে। উদাহরণ স্বরূপ, ডিফল্ট Cloud Storage Security Rules জন্য Firebase Authentication প্রয়োজন হয় যাতে সমস্ত ফাইলে কোনো read
বা write
অপারেশন করা যায়:
service firebase.storage { match /b/{bucket}/o { match /{allPaths=**} { 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/.*'); } } }
পরবর্তী পদক্ষেপ
আপনার Cloud Storage বালতিগুলির জন্য পরিকল্পনার নিয়ম বিকাশ শুরু করুন ৷
নিরাপত্তা নিয়ম ব্যবহার করে আপনার ডেটা সুরক্ষিত করার বিষয়ে আরও জানুন।
ঐতিহ্যগতভাবে, নিরাপত্তা অ্যাপ ডেভেলপমেন্টের সবচেয়ে জটিল অংশগুলির মধ্যে একটি। বেশিরভাগ অ্যাপ্লিকেশনে, বিকাশকারীদের অবশ্যই একটি সার্ভার তৈরি এবং চালাতে হবে যা প্রমাণীকরণ (কে একজন ব্যবহারকারী) এবং অনুমোদন (একজন ব্যবহারকারী কী করতে পারে) পরিচালনা করে। প্রমাণীকরণ এবং অনুমোদন সেট আপ করা কঠিন, সঠিক হওয়া কঠিন এবং আপনার পণ্যের সাফল্যের জন্য গুরুত্বপূর্ণ।
Firebase Authentication কীভাবে আপনার ব্যবহারকারীদের প্রমাণীকরণ করা সহজ করে তোলে, একইভাবে Cloud Storage জন্য Firebase Security Rules আপনার জন্য ব্যবহারকারীদের অনুমোদন করা এবং অনুরোধগুলি যাচাই করা সহজ করে তোলে। Cloud Storage Security Rules আপনাকে পাথ ভিত্তিক অনুমতি নির্দিষ্ট করার অনুমতি দিয়ে আপনার জন্য জটিলতা পরিচালনা করে। কোডের মাত্র কয়েকটি লাইনে, আপনি অনুমোদনের নিয়ম লিখতে পারেন যা একটি নির্দিষ্ট ব্যবহারকারীর কাছে Cloud Storage অনুরোধ সীমাবদ্ধ করে বা আপলোডের আকার সীমিত করে।
Firebase Realtime Database একটি অনুরূপ বৈশিষ্ট্য রয়েছে, যাকে বলা হয় Firebase Realtime Database Security Rules
প্রমাণীকরণ
আপনার ব্যবহারকারী কারা তা জানা একটি অ্যাপ্লিকেশন তৈরির একটি গুরুত্বপূর্ণ অংশ, এবং Firebase Authentication প্রমাণীকরণের জন্য ব্যবহার করা সহজ, নিরাপদ, ক্লায়েন্ট সাইড একমাত্র সমাধান প্রদান করে। Cloud Storage জন্য Firebase Security Rules ব্যবহারকারী ভিত্তিক নিরাপত্তার জন্য Firebase Authentication সাথে সম্পর্কযুক্ত। যখন একজন ব্যবহারকারীকে Firebase Authentication মাধ্যমে প্রমাণীকরণ করা হয়, তখন Cloud Storage Security Rules request.auth
ভেরিয়েবল এমন একটি বস্তুতে পরিণত হয় যাতে ব্যবহারকারীর অনন্য আইডি ( request.auth.uid
) এবং টোকেনে থাকা অন্যান্য সমস্ত ব্যবহারকারীর তথ্য থাকে ( request.auth.token
) . যখন ব্যবহারকারী প্রমাণীকৃত না হয়, request.auth
null
হয়। এটি আপনাকে প্রতি ব্যবহারকারীর ভিত্তিতে ডেটা অ্যাক্সেসকে নিরাপদে নিয়ন্ত্রণ করতে দেয়। আপনি প্রমাণীকরণ বিভাগে আরও জানতে পারেন।
অনুমোদন
আপনার ব্যবহারকারীকে শনাক্ত করা নিরাপত্তার অংশ মাত্র। তারা কারা তা একবার জানলে, Cloud Storage ফাইলগুলিতে তাদের অ্যাক্সেস নিয়ন্ত্রণ করার জন্য আপনার একটি উপায় প্রয়োজন৷
Cloud Storage আপনাকে প্রতি ফাইল এবং প্রতি পাথ অনুমোদনের নিয়মগুলি নির্দিষ্ট করতে দেয় যা আমাদের সার্ভারে থাকে এবং আপনার অ্যাপের ফাইলগুলিতে অ্যাক্সেস নির্ধারণ করে। উদাহরণ স্বরূপ, ডিফল্ট Cloud Storage Security Rules জন্য Firebase Authentication প্রয়োজন হয় যাতে সমস্ত ফাইলে কোনো read
বা write
অপারেশন করা যায়:
service firebase.storage { match /b/{bucket}/o { match /{allPaths=**} { 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/.*'); } } }
পরবর্তী পদক্ষেপ
আপনার Cloud Storage বালতিগুলির জন্য পরিকল্পনার নিয়ম বিকাশ শুরু করুন ৷
নিরাপত্তা নিয়ম ব্যবহার করে আপনার ডেটা সুরক্ষিত করার বিষয়ে আরও জানুন।