একটি Firebase Extension তার নির্দিষ্ট ক্রিয়া সম্পাদনের জন্য, Firebase একটি ইনস্টল করা এক্সটেনশনের প্রতিটি উদাহরণকে একটি পরিষেবা অ্যাকাউন্টের মাধ্যমে আপনার প্রকল্প এবং ডেটাতে সীমিত অ্যাক্সেস দেয়৷
একটি পরিষেবা অ্যাকাউন্ট কি?
একটি পরিষেবা অ্যাকাউন্ট হল একটি বিশেষ ধরনের Google ব্যবহারকারী অ্যাকাউন্ট। এটি একটি অ-মানব ব্যবহারকারীকে প্রতিনিধিত্ব করে যা Google API ব্যবহার করে ডেটা অ্যাক্সেস করার জন্য অনুমোদিত৷
একটি এক্সটেনশন ইনস্টল করার সময়, Firebase আপনার প্রকল্পে একটি পরিষেবা অ্যাকাউন্ট তৈরি করে। একটি এক্সটেনশনের প্রতিটি ইনস্টল করা উদাহরণের নিজস্ব পরিষেবা অ্যাকাউন্ট রয়েছে৷
ফায়ারবেস একটি এক্সটেনশনের পরিষেবা অ্যাকাউন্ট নির্দিষ্ট ভূমিকা (অনুমতির বান্ডিল) বরাদ্দ করে আপনার প্রকল্প এবং ডেটাতে অ্যাক্সেস সীমিত করে। এক্সটেনশন ডেভেলপমেন্টের সময় ফায়ারবেস দ্বারা এক্সটেনশন পরিচালনার জন্য প্রয়োজনীয় ভূমিকাগুলি নির্ধারণ করা হয়। ইনস্টলেশনের সময়, ফায়ারবেস এই ভূমিকাগুলি একটি এক্সটেনশনের পরিষেবা অ্যাকাউন্টে বরাদ্দ করে, এবং আপনার এই বরাদ্দকৃত ভূমিকাগুলির মধ্যে কোনও পরিবর্তন, যোগ বা মুছে ফেলা উচিত নয় (অন্যথায় আপনার ইনস্টল করা এক্সটেনশনটি প্রত্যাশা অনুযায়ী কাজ করবে না)৷ আপনি, যদিও, এক্সটেনশন আনইনস্টল করতে পারেন, যা পরিষেবা অ্যাকাউন্ট (এবং এর অ্যাক্সেস) সম্পূর্ণরূপে মুছে দেয়৷
এক্সটেনশনগুলির জন্য তৈরি পরিষেবা অ্যাকাউন্টগুলি ফর্ম্যাটে রয়েছে:ext- extension-instance-id @ project-id .iam.gserviceaccount.com
।
আপনি আপনার ফায়ারবেস প্রকল্পের সাথে সম্পর্কিত সমস্ত পরিষেবা অ্যাকাউন্ট দেখতে পারেন আপনার পরিষেবা অ্যাকাউন্ট ট্যাবে
অনুমতি এবং ভূমিকা
একটি এক্সটেনশনের বিকাশের সময়, ফায়ারবেস একটি এক্সটেনশন পরিচালনা করার জন্য প্রয়োজনীয় অ্যাক্সেসের স্তর নির্ধারণ করে।
Firebase এক্সটেনশনের ইনস্টলেশনের সময় এক্সটেনশনের পরিষেবা অ্যাকাউন্টে Firebase যে ভূমিকাগুলি বরাদ্দ করবে তা স্পষ্টভাবে তালিকাভুক্ত করার মাধ্যমে অ্যাক্সেসের এই স্তরটিকে সংজ্ঞায়িত করে৷
প্রতিটি ভূমিকা (এবং এর অন্তর্নিহিত অনুমতি) একটি নির্দিষ্ট পণ্য বা পরিষেবার উপর ভিত্তি করে। ভূমিকার উদাহরণ হল firebasehosting.admin
, bigquery.dataEditor
, এবং firebasedatabase.admin
। Firebase এক্সটেনশনের স্পেসিফিকেশন ফাইলে ( extension.yaml
ফাইল ) একটি এক্সটেনশনের জন্য প্রয়োজনীয় ভূমিকা তালিকাভুক্ত করে।
অফিসিয়াল Firebase এক্সটেনশনের জন্য, ফায়ারবেস ভূমিকার এই তালিকাটি পুঙ্খানুপুঙ্খভাবে পর্যালোচনা করে নিশ্চিত করে যে একটি এক্সটেনশনের অ্যাক্সেস কঠোরভাবে এক্সটেনশনের কাজের সুযোগের মধ্যে সীমাবদ্ধ। এছাড়াও আপনি Firebase Extensions ড্যাশবোর্ডে এক্সটেনশনের বিশদ পৃষ্ঠাটি দেখে বা এর README
ফাইলটি দেখে এক্সটেনশনে অনুমোদিত অ্যাক্সেস পর্যালোচনা এবং নিশ্চিত করতে পারেন।
Learn about the permissions included in each role:
What happens when I uninstall an extension?
আপনি যখন আপনার প্রোজেক্ট থেকে একটি এক্সটেনশন আনইনস্টল করেন , তখন Firebase সেই এক্সটেনশনের উদাহরণের জন্য তৈরি করা পরিষেবা অ্যাকাউন্ট মুছে দেয়। After this deletion of the service account, the extension cannot run in your project because it no longer has any access rights to your project or data.