AI প্রম্পট: Firebase Security Rules লেখো

এই প্রম্পট আপনার AI অ্যাসিস্ট্যান্টকে (যেমন Google Antigravity) আপনার অ্যাপের জন্য Firebase Security Rules তৈরি ও রিফাইন করতে সাহায্য করতে পারে। আপনি প্রম্পটটি ব্যবহার করে সাধারণ ব্যবহারের ক্ষেত্রে Security Rules ড্রাফ্ট করতে পারেন, যেমন ব্যবহারকারী-নির্দিষ্ট অ্যাক্সেস প্রদান করা, ভূমিকা-ভিত্তিক অনুমতি প্রয়োগ করা এবং ডেটা যাচাই করা।

এই প্রম্পট Security Rules তৈরি করার উপর ফোকাস করে:

  • Cloud Firestore: আপনার অ্যাপের লজিকের উপর ভিত্তি করে কালেকশন ও ডকুমেন্ট সুরক্ষিত করুন।
  • Cloud Storage for Firebase: আপনার সেভ করা ফাইল অ্যাক্সেস করার অনুমতি যাচাই করুন।

এই প্রম্পট ব্যবহার করলে আপনি শক্তিশালী নিরাপত্তা ব্যবস্থা নিয়ে কাজ শুরু করতে পারবেন, তবে প্রোডাকশনে ডেপ্লয় করার আগে আপনাকে সবসময় Security Rules ভালোভাবে পরীক্ষা করে নিতে হবে। Security Rules পরীক্ষা করা সম্পর্কে আরও তথ্য পেতে, Firebase Security Rules ব্যবহার শুরু করুন: আপনার Security Rules পরীক্ষা করুন।

পূর্বশর্ত

  • Firebase Security Rules পেশাদার পদ্ধতি সম্পর্কে ভালো করে জেনে নিন।
  • Firebase Security Rules-এর জন্য ইউনিট টেস্ট রান করাতে এবং Firebase Local Emulator Suite ব্যবহার করতে, Node.js ইনস্টল করুন এবং Firebase CLI ব্যবহার করুন। সম্পূর্ণ নির্দেশাবলীর জন্য, Firebase Local Emulator Suite ইনস্টল, কনফিগার ও ইন্টিগ্রেট করুন দেখুন।
  • সাজেস্ট করা হয়েছে: আপনি আগে থেকে না করে থাকলে, Antigravity ইনস্টল করুন। Security Rules জেনারেট করার জন্য Firebase এজেন্ট সংক্রান্ত দক্ষতা ও MCP সার্ভার কীভাবে চালু ও ব্যবহার করতে হয় তা নিম্নলিখিত নির্দেশাবলীতে ব্যাখ্যা করা হয়েছে। আপনি অন্য কোনও AI কোডিং এজেন্ট ব্যবহার করতে চাইলে, firebase-tools রিপোজিটরি থেকে Cloud Firestore বা Cloud Storage for Firebase-এর জন্য প্রম্পট কপি করে আপনার বেছে নেওয়া AI কোডিং এজেন্টে পেস্ট করতে পারেন।
  • Firebase এজেন্ট সংক্রান্ত দক্ষতা এবং MCP সার্ভার একসাথে কাজ করে এমন প্রম্পট অ্যাক্সেস করে যা Firebase Security Rules জেনারেট ও যাচাই করে এবং Security Rules-এর টেস্টিং ও ডেপ্লয়মেন্টে সাহায্য করে। Firebase Security Rules জেনারেট করার জন্য এইসব টুল ব্যবহার করার আগে Firebase MCP সার্ভার ইনস্টল করুন।

সীমাবদ্ধতা

আমরা এই অভিজ্ঞতা উন্নত করার জন্য সক্রিয়ভাবে কাজ করছি, তাই সীমাবদ্ধতার এই তালিকা পরিবর্তিত হতে পারে। আপডেটের জন্য মাঝে মধ্যেই আবার চেক করুন।

  • প্রম্পটটি Cloud Firestore এবং Cloud Storage for Firebase-এর জন্য Firebase Security Rules জেনারেট করার জন্য ডিজাইন করা হয়েছে। এটি এখনও Firebase Realtime Database-এর জন্য Security Rules তৈরি করতে পারে না।

  • Firebase Security Rules আপনার ডেটাবেস বা কোনও সার্ভার বা অন্যান্য ব্যাকএন্ড এনভায়রনমেন্ট থেকে অ্যাক্সেস করার সময় কল করা হয় না, যেমন Firebase Admin SDK ব্যবহার করার সময়। আপনি Admin SDK ব্যবহার করলে, আপনার ব্যাকএন্ড কোডে অনুমোদন ও ডেটা যাচাইকরণ ম্যানেজ করার দায়িত্ব আপনার।

  • Firebase-এর মধ্যে থাকা Firebase Gemini এই প্রম্পট ব্যবহার করা সত্ত্বেও Firebase Security Rules জেনারেট করতে পারছে না। পরিবর্তে, আপনার কোডবেসে অ্যাক্সেস আছে এমন একটি বিকল্প AI অ্যাসিস্ট্যান্ট ব্যবহার করুন, যেমন Antigravity (যা এই পৃষ্ঠায় বর্ণনা করা হয়েছে)।

প্রম্পট ব্যবহার করুন

এই ক্ষমতাটি উপলভ্য হয় যখন আপনি Firebase MCP সার্ভার এবং Firebase এজেন্ট সংক্রান্ত দক্ষতা ব্যবহার করেন, যা একটি মানানসই AI অ্যাসিস্ট্যান্টের (যেমন Antigravity) সাথে কাজ করে আপনার Security Rules এবং টেস্ট তৈরি করতে সাহায্য করে। এইসব টুল Cloud Firestore ও Cloud Storage-এর জন্য ডেটা স্কিমা ও অ্যাক্সেস প্যাটার্ন শনাক্ত করতে আপনার সোর্স কোড বিশ্লেষণ করে। এগুলি সবচেয়ে কম সুবিধা সংক্রান্ত নীতি মেনে Security Rules ড্রাফ্ট করার জন্য ডিজাইন করা হয়েছে এবং বারবার "অ্যাটাক" সিমুলেশনের মাধ্যমে দুর্বলতা খুঁজে বের করার চেষ্টা করে। ফাইনাল যাচাইকরণে সহায়তা করতে, তারা @firebase/rules-unit-testing ব্যবহার করে একটি প্রাথমিক ইউনিট টেস্ট স্যুট প্রদান করে, যা আপনাকে Firebase Local Emulator Suite ব্যবহার করে লোকালি আপনার নিরাপত্তা লজিক যাচাই করতে দেয়।

এইসব টুল ব্যবহার করতে তিনটি ধাপ অনুসরণ করতে হয়, যা এই বিভাগে বর্ণনা করা হয়েছে:

  1. আপনার Security Rules ও টেস্ট জেনারেট করুন।

  2. Security Rules যাচাইকরণ ও পরীক্ষার ফলাফল পর্যালোচনা করুন।

  3. আপনার Firebase প্রোজেক্টে Security Rules ডিপ্লয় করুন।

ধাপ ১: Security Rules তৈরি ও পরীক্ষা করা

টুল সেট-আপ ও রান করা:

  1. Firebase এজেন্ট সংক্রান্ত দক্ষতা চালু করুন:

    • Google Antigravity: Antigravity মার্কেটপ্লেস থেকে Firebase প্লাগ-ইন ইনস্টল করতে সেট-আপ সংক্রান্ত নির্দেশাবলী দেখুন। এছাড়াও, আপনি প্রোজেক্ট লেভেলে স্কিল ইনস্টল করতে পারেন, এটি রান করে:

      npx skills add firebase/agent-skills --agent=antigravity
    • অন্যান্য AI কোডিং এজেন্ট: এজেন্ট স্কিল এবং MCP সার্ভার-এর জন্য নির্দেশাবলী অনুসরণ করুন।

  2. আপনার AI অ্যাসিস্ট্যান্ট চালু করুন (যেমন, CLI-এর জন্য আপনার টার্মিনালে agy রান করুন অথবা ডেস্কটপ অ্যাপ্লিকেশন খুলুন)।

  3. আপনার প্রোজেক্টের রুট থেকে, AI কোডিং এজেন্ট কীভাবে MCP প্রম্পটের সাথে ইন্টার‍্যাক্ট করে তার উপর ভিত্তি করে Cloud Firestore বা Cloud Storage-এর জন্য Security Rules জেনারেট করতে এজেন্টকে বলুন:

    • ন্যাচারাল ল্যাঙ্গুয়েজ (যেমন Antigravity) ব্যবহার করে এমন কোডিং এজেন্টের জন্য, ন্যাচারাল ল্যাঙ্গুয়েজ ব্যবহার করে এজেন্টকে প্রম্পট করুন।

      • Cloud Firestore-এর জন্য Security Rules জেনারেট করো:

        Generate Firestore security rules for this project, then run the unit tests.
        

        পেরেন্ট ডিরেক্টরিতে, এজেন্ট একটি firestore.rules ফাইল এবং একটি নতুন security_rules_test_firestore ডিরেক্টরি তৈরি করে যাতে জেনারেট করা Security Rules-এর জন্য ইউনিট টেস্ট সহ একটি Node.js প্রোজেক্ট থাকে।

      • Cloud Storage for Firebase-এর জন্য Security Rules জেনারেট করুন:

        Generate Cloud Storage security rules for this project, then run the unit tests.
        

        পেরেন্ট ডিরেক্টরিতে, এজেন্ট একটি storage.rules ফাইল এবং একটি নতুন security_rules_test_storage ডিরেক্টরি তৈরি করে যাতে জেনারেট করা Security Rules-এর জন্য ইউনিট টেস্ট সহ একটি Node.js প্রোজেক্ট থাকে।

    • স্ল্যাশ কমান্ড (যেমন Claude Code) সাপোর্ট করে এমন কোডিং এজেন্টের জন্য, নিম্নলিখিত কমান্ড ব্যবহার করুন।

      • Cloud Firestore-এর জন্য Security Rules জেনারেট করুন:

        /firestore:generate_security_rules
        
      • Cloud Storage for Firebase-এর জন্য Security Rules জেনারেট করুন:

        /storage:generate_security_rules
        
    • যেসব কোডিং এজেন্ট MCP প্রম্পট ইন্টিগ্রেশন সাপোর্ট করে না, সেগুলির জন্য আপনি firebase-tools রিপোজিটরি থেকে র প্রম্পট টেমপ্লেট কপি করে এজেন্টের চ্যাটে পেস্ট করতে পারেন।

      • Cloud Firestore-এর জন্য Security Rules জেনারেট করুন: Cloud Firestore থেকে প্রম্পট কপি করুন।
      • Cloud Storage for Firebase-এর জন্য Security Rules জেনারেট করুন: Cloud Storage for Firebase থেকে প্রম্পট কপি করুন।

ধাপ ২: Security Rules যাচাইকরণ ও পরীক্ষার ফলাফল পর্যালোচনা করুন

  1. নিচে উল্লেখ করা কাজগুলি আপনার AI কোডিং এজেন্ট করেছে কিনা তা নিশ্চিত করুন। টুল রান করার পরে আপনি একটি জেনারেট করা সারসংক্ষেপ পাবেন।

    • সিনট্যাক্স যাচাইকরণ: Security Rules জেনারেট করার পরে, আপনার AI কোডিং এজেন্ট Firebase MCP সার্ভার থেকে firebase_validate_security_rules কমান্ড ব্যবহার করে অটোমেটিক সিনট্যাক্স যাচাই করে।

    • ইউনিট টেস্ট: সিনট্যাক্স যাচাই করার পরে, আপনার AI কোডিং এজেন্ট Firebase Local Emulator Suite ব্যবহার করে জেনারেট করা ইউনিট টেস্ট রান করার চেষ্টা করে।

  2. টেস্ট অটোমেটিক রান না করলে, আলাদা টার্মিনালে Firebase Local Emulator Suite শুরু করুন, তারপর টেস্ট রান করার জন্য নিম্নলিখিত বিকল্পগুলির মধ্যে একটি ব্যবহার করুন:

    • বিকল্প ১: AI অ্যাসিস্ট্যান্টকে টেস্ট চালানোর নির্দেশ দিন:

      Firebase Emulator Suite is running in a separate terminal. Please execute the tests.
      
    • বিকল্প ২: rules_test বা storage_rules_test ডিরেক্টরিতে README.md ফাইলে দেওয়া নির্দেশাবলী অনুসরণ করে ম্যানুয়ালি টেস্ট রান করুন।

ধাপ ৩: আপনার Firebase প্রোজেক্টে Security Rules ডেপ্লয় করুন

জেনারেট করা Security Rules-এর ফলাফলে আপনি সন্তুষ্ট হলে, আপনার Firebase প্রোজেক্টে Security Rules ডিপ্লয় করতে নিম্নলিখিত Firebase CLI কমান্ড ব্যবহার করুন:

  • Cloud Firestore

    firebase deploy --only firestore:rules
  • Cloud Storage for Firebase

    firebase deploy --only storage