Firebase-এর জন্য API কী ব্যবহার ও পরিচালনা সম্পর্কে জানুন
সেভ করা পৃষ্ঠা গুছিয়ে রাখতে 'সংগ্রহ' ব্যবহার করুন
আপনার পছন্দ অনুযায়ী কন্টেন্ট সেভ করুন ও সঠিক বিভাগে রাখুন।
একটি API কী একটি অনন্য স্ট্রিং যা Firebase এবং Google পরিষেবাগুলির সাথে ইন্টারঅ্যাক্ট করার সময় আপনার Firebase প্রকল্পে অনুরোধগুলিকে রুট করতে ব্যবহ���ত হয়। এই পৃষ্ঠাটি API কী সম্পর্কে প্রাথমিক তথ্যের পাশাপাশি Firebase অ্যাপগুলির সাথে API কীগুলি ব্যবহার এবং পরিচালনা করার জন্য সর্বোত্তম অনুশীলনগুলি বর্ণনা করে৷
এপিআই কী এবং ফায়ারবেস সম্পর্কে সাধারণ তথ্য
ফায়ারবেসের জন্য API কীগুলি সাধারণ API কীগুলির থেকে আলাদা
সাধারণত API কীগুলি যেভাবে ব্যবহার করা হয় তার বিপরীতে, Firebase পরিষেবাগুলির জন্য API কীগুলি ব্যাকএন্ড সংস্থানগুলিতে অ্যাক্সেস নিয়ন্ত্রণ করতে ব্যবহৃত হয় না ; এটি শুধুমাত্র Firebase Security Rules (কোন শেষ ব্যবহারকারীরা সংস্থানগুলি অ্যাক্সেস করতে পারে তা নিয়ন্ত্রণ করতে) এবং Firebase App Check (কোন অ্যাপগুলি সংস্থানগুলি অ্যাক্সেস করতে পারে তা নিয়ন্ত্রণ করতে) দিয়ে করা যেতে পারে।
সাধারণত, আপনাকে এপিআই কীগুলিকে দৃঢ়ভাবে রক্ষা করতে হবে (উদাহরণস্বরূপ, একটি ভল্ট পরিষেবা ব্যবহার করে বা পরিবেশের ভেরিয়েবল হিসাবে কীগুলি সেট করে); যাইহোক, ফায়ারবেস পরিষেবাগুলির জন্য API কীগুলি কোড বা চেক-ইন কনফিগার ফাইলগুলিতে অন্তর্ভুক্ত করার জন্য ঠিক আছে।
আপনি Google Cloud কনসোলে API এবং পরিষেবা > শংসাপত্র প্যানেলে আপনার সমস্ত প্রকল্পের API কীগুলি দেখতে এবং পরিচালনা করতে পারেন৷
এছাড়াও আপনি নিম্নলিখিত স্থানে কোন API কী স্বয়ংক্রিয়ভাবে একটি Firebase অ্যাপের সাথে মিলছে তা খুঁজে পেতে পারেন। ডিফল্টরূপে, একই প্ল্যাটফর্মের (অ্যাপল বনাম অ্যান্ড্রয়েড বনাম ওয়েব) জন্য আপনার প্রকল্পের সমস্ত ফায়ারবেস অ্যাপ একই API কী ব্যবহার করবে।
Firebase Apple Apps — Firebase কনফিগারেশন ফাইল, GoogleService-Info.plist , API_KEY ক্ষেত্রে স্বয়ংক্রিয়ভাবে মিলে যাওয়া API কী খুঁজুন।
ফায়ারবেস অ্যান্ড্রয়েড অ্যাপস — Firebase কনফিগারেশন ফাইল, google-services.json , current_key ক্ষেত্রে স্বয়ংক্রিয়ভাবে মিলে যাওয়া API কী খুঁজুন।
ফায়ারবেস ওয়েব অ্যাপস — apiKey ক্ষেত্রের মধ্যে Firebase কনফিগার অবজেক্টে স্বয়ংক্রিয়-মিলিত API কী খুঁজুন।
একটি API কী ব্যবহার করে
Firebase/Google পরিষেবাগুলির সাথে ইন্টারঅ্যাক্ট করার সময় আপনার Firebase প্রোজেক্ট সনাক্ত করতে API কীগুলি ব্যবহার করা হয়। বিশেষত, এগুলি কোটা এবং বিলিং এর জন্য আপনার প্রকল্পের সাথে API অনুরোধগুলি সংযুক্ত করতে ব্যবহৃত হয়৷ তারা পাবলিক ডেটা অ্যাক্সেস করার জন্যও দরকারী।
উদাহরণস্বরূপ, আপনি একটি এপিআই কীকে একটি ক্য��য়ারী প্যারামিটার হিসাবে একটি REST API কলে এর মান পাস করে স্পষ্টভাবে ব্যবহার করতে পারেন। এই উদাহরণটি দেখায় কিভাবে আপনি Dynamic Links লিঙ্ক শর্টনার এপিআই- তে একটি অনুরোধ করতে পারেন:
POST https://firebasedynamiclinks.googleapis.com/v1/shortLinks?key=API_KEY
আপনার অ্যাপ যখন একটি Firebase API-তে কল করে যার জন্য মোবাইল/ওয়েব ক্লায়েন্ট দ্বারা সরবরাহ করা একটি API কী প্রয়োজন, তখন আপনার অ্যাপটি স্বয়ংক্রিয়ভাবে আপনার প্রকল্পের API কী-এর জন্য Firebase কনফিগারেশন ফাইল/অবজেক্টে দেখতে পাবে। যাইহোক, আপনি পরিবেশের ভেরিয়েবল সহ একটি ভিন্ন প্রক্রিয়া ব্যবহার করে আপনার অ্যাপের জন্য API কী প্রদান করতে পারেন।
পর্যালোচনা করুন এবং API কীগুলিতে উপযুক্ত বিধিনিষেধ প্রয়োগ করুন (প্রস্তাবিত)
যদিও ফায়ারবেস পরিষেবাগুলির জন্য একটি এপিআই কীকে গোপন হিসাবে বিবেচনা করার প্রয়োজন নেই, তবে আপনার এই বিভাগে বর্ণিত বিধিনিষেধ এবং সীমাগুলি পর্যালোচনা এবং প্রয়োগ করা উচিত।
আপনার Firebase API কীগুলির জন্য অনুমোদিত তালিকায় স্বয়ংক্রিয়ভাবে যোগ করা APIগুলি পর্যালোচনা করুন
যখন Firebase আপনার প্রোজেক্টে একটি API কী তৈরি করে, তখন আমরা স্বয়ংক্রিয়ভাবে সেই কীটিতে "API সীমাবদ্ধতা" ��োগ করি। এই অনুমোদিত তালিকায় যোগ করা APIগুলি হল Firebase-সম্পর্কিত API যেগুলির জন্য ক্লায়েন্টকে কলের সাথে একটি API কী প্রদান করতে হবে। মনে রাখবেন যে ফায়ারবেস পরিষেবাগুলি ব্যবহারের জন্য প্রয়োজনীয় বেশিরভাগ APIগুলি আপনার API কীগুলির জন্য অনুমোদিত তালিকায় থাকা দরকার নেই৷
যেহেতু Firebase সমস্ত Firebase পরিষেবার জন্য প্রয়োজনীয় API যোগ করে, তাই একটি API কী-এর অনুমোদন তালিকায় আপনি ব্যবহার করেন না এমন পণ্যগুলির API অন্তর্ভুক্ত থাকতে পারে। আপনি অনুমোদিত তালিকা থেকে APIগুলি সরাতে পারেন, তবে Firebase এবং Firebase পরিষেবাগুলির জন্য প্রয়োজনীয় APIগুলি যেগুলি আপনি ব্যবহার করেন তা না সরানোর জন্য আপনাকে অবশ্যই খুব সতর্ক থাকতে হবে ( Firebase-সম্পর্কিত APIগুলির তালিকা দেখুন যা প্রতিটি পরিষেবা / পণ্যের জন্য অনুমোদিত তালিকায় থাকা প্রয়োজন)। অন্যথায়, Firebase পরিষেবাগুলিতে কল করার সময় আপনি ত্রুটি পাবেন৷
আপনি পাসওয়ার্ড-ভিত্তিক Authentication ব্যবহার করলে কোটা শক্ত করুন
আপনি যদি পাসওয়ার্ড-ভিত্তিক Firebase Authentication ব্যবহার করেন এবং কেউ আপনার API কী ধরে রাখে, তবে তারা আপনার Firebase প্রকল্পের ডেটাবেস বা Cloud Storage ডেটা অ্যাক্সেস করতে পারবে নাযতক্ষণ না এই ডেটা Firebase Security Rules দ্বারা সুরক্ষিত থাকে । তারা, যাইহোক, Firebase এর প্রমাণীকরণের শেষ পয়েন্টগুলি অ্যাক্সেস করতে এবং আপনার প্রকল্পের বিরুদ্ধে প্রমাণীকরণের অনুরো�� করতে আপনার API কী ব্যবহার করতে পারে।
এমন সম্ভাবনার বিরুদ্ধে প্রশমিত করতে যে কেউ একটি এপিআই কী অপব্যবহার করে পাশবিক শক্তি আক্রমণের চেষ্টা করতে পারে, আপনি আপনার অ্যাপের স্বাভাবিক ট্রাফিক প্রত্যাশা প্রতিফলিত করতে identitytoolkit.googleapis.com এন্ডপয়েন্টের ডিফল্ট কোটা শক্ত করতে পারেন। সচেতন থাকুন যে আপনি যদি এই কোটা শক্ত করেন এবং আপনার অ্যাপ হঠাৎ করে ব্যবহারকারী বাড়ায়, আপনি কোটা না বাড়া পর্যন্ত সাইন-ইন ত্রুটি পেতে পারেন। আপনি Google Cloud কনসোলে আপনার প্রকল্পের API কোটা পরিবর্তন করতে পারেন।
যেকোন নন-ফায়ারবেস পরিষেবার জন্য আলাদা, সীমাবদ্ধ API কী ব্যবহার করুন
যদিও ফায়ারবেস পরিষেবাগুলির জন্য ব্যবহৃত API কীগুলিকে সাধারণত গোপন হিসাবে বিবেচনা করার প্রয়োজন হয় না, তবে আপনার API কীগুলির সাথে কিছু অতিরিক্ত সতর্কতা অবলম্বন করা উচিত যা আপনি অন্যান্য Google Cloud APIগুলির সাথে ব্যবহার করেন৷
আপনি যদি এমন একটি Google Cloud API (যেকোন প্ল্যাটফর্মে) ব্যবহার করেন যা ফায়ারবেস পরিষেবা / পণ্যের জন্য নয়, আমরা দৃঢ়ভাবে সেই APIগুলির সাথে ব্যবহারের জন্য পৃথক, সীমাবদ্ধ API কী তৈরি করার পরামর্শ দিই। এটি বিশেষভাবে গুরুত্বপূর্ণ যদি API একটি বিলযোগ্য Google Cloud পরিষেবার জন্য হয়।
উদাহরণস্বরূপ, আপনি যদি iOS-এ Firebase ML এবং ক্লাউড ভিশন API ব্যবহার করেন, তাহলে আপনাকে আলাদা API কী তৈরি করতে হবে যা আপনি শুধুমাত্র ক্লাউড ভিশন API অ্যাক্সেস করার জন্য ব্যবহার করেন।
নন-ফায়ারবেস API-এর জন্য আলাদা, সীমাবদ্ধ API কী ব্যবহার করে, আপনি প্রয়োজনে কীগুলি ঘোরাতে বা প্রতিস্থাপন করতে পারেন এবং আপনার Firebase পরিষেবাগুলির ব্যবহারে ব্যাঘাত না ঘটিয়ে API কীগুলিতে অতিরিক্ত সীমাবদ্ধতা যুক্ত করতে পারেন ।
API-নির্দিষ্ট কী তৈরির জন্য নির্দেশাবলী দেখুন
এই নির্দেশাবলী বর্ণনা করে কিভাবে Super Service API নামক একটি জাল API-এর জন্য একটি পৃথক, সীমাবদ্ধ API কী তৈরি করতে হয়।
ধাপ 1: Super Service API এ অ্যাক্সেসের অনুমতি না দেওয়ার জন্য আপনার বিদ্যমান API কীগুলি কনফিগার করুন
Google Cloud কনসোলের শংসাপত্র পৃষ্ঠা খুলুন। অনুরোধ করা হলে, আপনার প্রকল্প নির্বাচন করুন.
তালিকায় বিদ্যমান প্রতিটি API কী-এর জন্য, সম্পাদনা দৃশ্য খুলুন।
এপিআই সীমাবদ্ধতা বিভাগে, সীমাবদ্ধ কী নির্বাচন করুন, তারপরে আপনি API কী-এর অ্যাক্সেস পেতে চান এমন সমস্ত API তালিকায় যোগ করুন। আপনি যে APIটির জন্য একটি পৃথক API কী তৈরি করছেন সেটিকে অন্তর্ভুক্ত না করার বিষয়টি নিশ্চিত করুন (এই উদাহরণে, Super Service API )।
আপনি যখন একটি API কী এর API সীমাবদ্ধতা কনফিগার করেন, তখন আপনি স্পষ্টভাবে সেই APIগুলি ঘোষণা করেন যেখানে কীটির অ্যাক্সেস রয়েছে৷ ডিফল্টরূপে, যখন API বিধিনিষেধ বিভাগে Don't restrict key নির্বাচন করা থাকে, তখন একটি API কী ব্যবহার করা যেতে পারে প্রজেক্টের জন্য সক্ষম করা যেকোনো API অ্যাক্সেস করতে।
এখন, আপনার বিদ্যমান API কীগুলি Super Service API তে অ্যাক্সেস মঞ্জুর করবে না, তবে প্রতিটি কী আপনার API বিধিনিষেধ তালিকায় যোগ করা যেকোনো API-এর জন্য কাজ করতে থাকবে।
ধাপ 2: Super Service API এ অ্যাক্সেসের জন্য একটি নতুন API কী তৈরি করুন এবং ব্যবহার করুন
শংসাপত্র পৃষ্ঠায় ফিরে যান। আপনার Firebase প্রকল্প এখনও নির্বাচিত হয়েছে তা নিশ্চিত করুন৷
শংসাপত্র তৈরি করুন > API কী ক্লিক করুন। নতুন API কী নোট নিন, তারপর Restrict key-এ ক্লিক করুন।
API সীমাবদ্ধতা বিভাগে, সীমাবদ্ধ কী নির্বাচন করুন, তারপর তালিকায় শুধুমাত্রSuper Service API যোগ করুন।
এই নতুন এপিআই কী শুধুমাত্র Super Service API অ্যাক্সেস দেয়।
নতুন API কী ব্যবহার করতে আপনার অ্যাপ এবং পরিষেবাগুলি কনফিগার করুন৷
পরিবেশ-নির্দিষ্ট API কী ব্যবহার করুন (প্রস্তাবিত)
আপন�� যদি বিভিন্ন পরিবেশের জন্য বিভিন্ন ফায়ারবেস প্রজেক্ট সেট আপ করেন, যেমন স্টেজিং এবং প্রোডাকশন, এটা গুরুত্বপূর্ণ যে প্রতিটি অ্যাপ ইনস্ট্যান্স তার সংশ্লিষ্ট ফায়ারবেস প্রোজেক্টের সাথে ইন্টারঅ্যাক্ট করে। উদাহরণস্বরূপ, আপনার স্টেজিং অ্যাপের উদাহরণ আপনার উত্পাদন ফায়ারবেস প্রকল্পের সাথে কথা বলা উচিত নয়। এর মানে হল যে আপনার স্টেজিং অ্যাপকে আপনার স্টেজিং ফায়ারবেস প্রোজেক্টের সাথে যুক্ত API কী ব্যবহার করতে হবে।
কোড পরিবর্তনগুলিকে উন্নয়ন থেকে স্টেজিং থেকে প্রোডাকশনে উন্নীত করার সমস্যাগুলি কমাতে, কোডে API কীগুলি অন্তর্ভুক্ত করার পরিবর্তে, হয় সেগুলিকে পরিবেশের ভেরিয়েবল হিসাবে সেট করুন বা একটি কনফিগারেশন ফাইলে অন্তর্ভুক্ত করুন৷
মনে রাখবেন যে আপনি যদি Firebase ML সাথে ডেভেলপমেন্টের জন্য Firebase Local Emulator Suite ব্যবহার করেন, তাহলে আপনাকে অবশ্যই একটি ডিবাগ-অনলি API কী তৈরি করতে হবে এবং ব্যবহার করতে হবে। এই ধরনের কী তৈরি করার নির্দেশাবলী Firebase ML ডক্সে পাওয়া যায়।
প্রায়শই জিজ্ঞাসিত প্রশ্নাবলী এবং সমস্যা সমাধান
FAQs
Firebase পরিষেবাগুলির জন্য API কীগুলি ডিফল্টরূপে সীমাবদ্ধ?
হ্যাঁ, ডিফল্টরূপে, Firebase-সম্পর্কিত API-এর সাথে ব্যবহারের জন্য Firebase-এর অটো-প্রভিশনগুলির সমস্ত API কী "API বিধিনিষেধ" স্বয়ংক্রিয়ভাবে প্রয়োগ হয়৷ এই অনুমোদিত তালিকায় থাকা Firebase-সম্পর্কিত APIগুলির তালিকা দেখুন।
এই অনুমোদিত তালিকায় যোগ করা APIগুলি হল সেই APIগুলি যা Firebase পরিষেবাগুলি দ্বারা ক্লায়েন্ট-কোড থেকে ডাকা হয় এবং আপনার Firebase প্রকল্প বা অ্যাপ সনাক্তকরণের জন্য API কীগুলির প্রয়োজন হয়৷ মনে রাখবেন যে ফায়ারবেস পরিষেবাগুলি ব্যবহারের জন্য প্রয়োজনীয় বেশিরভাগ APIগুলি আপনার API কীগুলির জন্য অনুমোদিত তালিকায় থাকা দরকার নেই৷
যেহেতু Firebase সমস্ত Firebase পরিষেবার জন্য প্রয়োজনীয় API যোগ করে, তাই একটি API কী-এর অনুমোদন তালিকায় আপনি ব্যবহার করেন না এমন পণ্যগুলির API অন্তর্ভুক্ত থাকতে পারে। আপনি অনুমোদিত তালিকা থেকে APIগুলি ��রাতে পারেন, তবে Firebase এবং Firebase পরিষেবাগুলির জন্য প্রয়োজনীয় APIগুলি যেগুলি আপনি ব্যবহার করেন তা না সরানোর জন্য আপনাকে অবশ্যই খুব সতর্ক থাকতে হবে ( Firebase-সম্পর্কিত APIগুলির তালিকা দেখুন যা প্রতিটি পরিষেবা / পণ্যের জন্য অনুমোদিত তালিকায় থাকা প্রয়োজন)। অন্যথায়, Firebase পরিষেবাগুলিতে কল করার সময় আপনি ত্রুটি পাবেন৷
আপনি Google Cloud কনসোলে API এবং পরিষেবা > শংসাপত্র প্যানেলে আপনার সমস্ত API কী এবং তাদের "API সীমাবদ্ধতা" দেখতে পারেন।
Firebase কিভাবে এই "API বিধিনিষেধগুলি" প্রয়োগ করে সে সম্পর্কে নিম্নলিখিতগুলি নোট করুন:
2024 সালের মে থেকে, Firebase-এর দ্বারা স্বয়ংক্রিয়ভাবে প্রবিধান করা সমস্ত নতুন API কীগুলি Firebase-সম্পর্কিত APIগুলির তালিকায় স্বয়ংক্রিয়ভাবে সীমাবদ্ধ।
মে 2024-এর মধ্যে, সমস্ত বিদ্যমান এবং অনিয়ন্ত্রিত API কীগুলি যেগুলি Firebase পূর্বে স্বয়ংক্রিয়-বিধান করেছিল সেগুলি Firebase-সম্পর্কিত APIএবং প্রজেক্টের বর্তমানে সক্রিয় APIগুলির তালিকার মধ্যে সীমাবদ্ধ।
Firebase পূর্বে স্বয়ংক্রিয়ভাবে প্রভিশন করা ছিল এমন কোনো বিদ্যমান এবং ইতিমধ্যে সীমাবদ্ধ API কী পরিবর্তন করা হয়নি।
Firebase দ্বারা স্বয়ংক্রিয়ভাবে প্রবিধান করা হয়নি এমন কোনো বিদ্যমান API কী পরিবর্তন করা হয়নি।
আমার ফায়ারবেস অ্যাপের সাথে কোন API কী যুক্ত তা আমি কীভাবে নির্ধারণ করতে পারি?
কোন API কী আপনার ফায়ারবেস অ্যাপের সাথে যুক্ত তা নির্ধারণ করতে আপনি নিম্নলিখিত বিকল্পগুলির মধ্যে যেকোনো একটি ব্যবহার করতে পারেন:
Firebase কনসোল
settingsপ্রজেক্ট সেটিংসে যান এবং তারপর আপনার অ্যাপস কার্ডে নিচে স্ক্রোল করুন।
আগ্রহের অ্যাপটি নির্বাচন করুন।
আগ্রহের অ্যাপের জন্য Firebase কনফিগারেশন ফাইল/অবজেক্টটি পান এবং তারপরে এর API কী খু��জুন:
Apple : GoogleService-Info.plist ডাউনলোড করুন এবং তারপর API_KEY ক্ষেত্রটি খুঁজুন
Android : google-services.json ডাউনলোড করুন, আগ্রহের অ্যাপের জন্য কনফিগার খুঁজুন (এর প্যাকেজের নাম দেখুন), এবং তারপর current_key ক্ষেত্রটি খুঁজুন
ওয়েব : কনফিগ বিকল্পটি নির্বাচন করুন এবং তারপরে apiKey ক্ষেত্রটি খুঁজুন
Firebase CLI
নিম্নলিখিত কমান্ডটি চালিয়ে আগ্রহের অ্যাপের জন্য Firebase কনফিগারেশন ফাইল/অবজেক্ট পান:
এই keyString একই মান যা অ্যাপের কনফিগারেশন আর্টিফ্যাক্টে পাওয়া যায় ( Apple | Android | Web )।
আমার Firebase কনফিগারেশন ফাইল/অবজেক্টে কি একই ফায়ারবেস অ্যাপের জন্য দুটি API কী তালিকাভুক্ত থাকতে পারে?
ফায়ারবেস অ্যাপল অ্যাপস - প্রতিটি অ্যাপের নিজস্ব কনফিগারেশন ফাইল রয়েছে এবং শুধুমাত্র একটি এপিআই কী তালিকাভুক্ত থাকতে পারে।
ফায়ারবেস অ্যান্ড্রয়েড অ্যাপস — ফায়ারবেস প্রোজেক্টের সমস্ত অ্যান্ড্রয়েড অ্যাপ একই কনফিগারেশন ফাইলে ��ালিকাভুক্ত করা হয়েছে এবং প্রতিটি অ্যাপে শুধুমাত্র একটি এপিআই কী তালিকাভুক্ত থাকতে পারে। যদিও এই কনফিগারেশন ফাইলের প্রতিটি অ্যাপে একটি ভিন্ন কী তালিকাভুক্ত থাকতে পারে।
ফায়ারবেস ওয়েব অ্যাপস - প্রতিটি অ্যাপের নিজস্ব কনফিগারেশন অবজেক্ট আছে এবং শুধুমাত্র একটি এপিআই কী তালিকাভুক্ত থাকতে পারে।
যদিও আপনি একটি অ্যাপের সাথে একাধিক API কী ব্যবহার করতে পারেন । এই অন্যান্য API কীগুলি অ্যাক্সেস করার জন্য আপনাকে অবশ্যই আপনার অ্যাপের জন্য একটি প্রক্রিয়া প্রদান করতে হবে, যেমন একটি পরিবেশ পরিবর্তনশীলের মাধ্যমে। অন্যান্য API কীগুলি অ্যাক্সেস করার পদ্ধতিটি আপনার Firebase কনফিগার ফাইল/অবজেক্টে তালিকাভুক্ত API কীগুলির উপর নির্ভর করতে পারে না।
ফায়ারবেস কিভাবে জানবে কোন এপিআই কী একটি অ্যাপের সাথে মিলবে (যেমন ফায়ারবেস কনফিগার ফাইল/অবজেক্টে)?
যদি ফায়ারবেস মেলে এমন কোনো সীমাবদ্ধ কী খুঁজে না পায়, তাহলে এটি অ্যাপল অ্যাপের জন্য iOS key , অ্যান্ড্রয়েড অ্যাপের জন্য Android key , এবং ওয়েব অ্যাপের জন্য Browser key কনফিগার ফাইল/অবজেক্টে তালিকাভুক্ত করবে (ধরে নিচ্ছে যে এই কীগুলি বিদ্যমান এবং কোনও "অ্যাপ্লিকেশন সীমাবদ্ধতা" নেই যা তাদের সেই অ্যাপের সাথে মেলে না)।
আমি কি আমার ফায়ারবেস কনফিগার ফাইল/অবজেক্ট থেকে API কী এবং ক্ষেত্র ম্যানুয়ালি মুছতে পারি?
হ্যাঁ, আপনি আপনার কনফিগার ফাইল/অবজেক্ট থেকে ম্যানুয়ালি আপনার API কী মুছে ফেলতে পারেন। যাইহোক, আপনাকে অবশ্যই একটি API কী অ্যাক্সেস করার জন্য আপনার অ্যাপের জন্য অন্য কিছু ব্যবস্থা প্রদান করতে হবে (যেমন একটি পরিবেশ পরিবর্তনশীলের মাধ্যমে)। অন্যথায়, ফায়ারবেস পরিষেবাগুলিতে যেকোনো কল ব্যর্থ হবে৷
আমি কি ভিন্ন API কী দিয়ে আমার ফায়ারবেস কনফিগারেশন ফাইল/অবজেক্ট ম্যানুয়ালি সম্পাদনা করতে পারি?
হ্যাঁ, আপনি একটি অ্যাপের সাথে একটি ভিন্ন API কী সংযুক্ত করতে একটি কনফিগার ফাইল/অবজেক্ট ম্যানুয়ালি সম্পাদনা করতে পারেন।
আমি কি একটি ফায়ারবেস প্রকল্প থেকে অন্য একটি এপিআই কী সরাতে পারি?
না, একটি API কী শুধুমাত্র একটি নির্দিষ্ট প্রকল্প সনাক্ত করে এবং অন্য প্রকল্পে স্থানান্তরিত করা যাবে না।
আমি Google Cloud কনসোলে তালিকাভুক্ত একটি API কী মুছে ফেললে কী হবে?
আপনি যদি একটি API কী মুছে ফেলেন যা একটি অ্যাপের দ্বারা ব্যবহৃত হয়, তাহলে সেই অ্যাপ থেকে API কলগুলি ব্যর্থ হবে৷ আপনি রিপোর্ট, ইমেল বা ত্রুটি পেতে পারেন যে আপনি একটি API কী ব্যবহার করার চেষ্টা করছেন যা অবৈধ।
একটি API কী মুছে ফেলা স্থায়ী এবং পূর্বাবস্থায় ফেরানো যাবে না৷
ফায়ারবেস এপিআই কী-এর জন্য "API সীমাবদ্ধতা" মঞ্জুরি তালিকায় কোন API গুলি প্রয়োজন?
একটি ফায়ারবেস এপিআই কী-এর জন্য, শুধুমাত্র এপিআইগুলি যেগুলি কী-এর "API সীমাবদ্ধতা" মঞ্জুরি তালিকায় থাকা প্রয়োজন সেগুলি হল সেই APIগুলি যেগুলির জন্য ক্লায়েন্টকে কলের সাথে একটি API কী প্রদান করতে হবে৷ মনে রাখবেন যে খুব কম ফায়ারবেস-সম্পর্কিত API-এর এই প্রয়োজনীয়তা রয়েছে। আপনার প্রোজেক্টে সক্রিয় করা বেশিরভাগ ফায়ারবেস-সম্পর্কিত API-কে কী-এর "API সীমাবদ্ধতা" মঞ্জুরি তালিকায় থাকতে হবে না।
ফায়ারবেস এপিআই কী-এর জন্য "API সীমাবদ্ধতা" মঞ্জুরি তালিকায় কোন Firebase-সম্পর্কিত APIগুলিকে অন্তর্ভুক্ত করতে হবে তা নির্ধারণ করতে নিম্নলিখিত সারণীটি ব্যবহার করুন৷ মনে রাখবেন, Firebase API কী শুধুমাত্র Firebase পরিষেবার জন্য ব্যবহার করা উচিত। নির্দিষ্ট ধরনের API-এর জন্য আলাদা, সীমাবদ্ধ API কী তৈরি করার বিষয়ে আরও জানুন।
আপনি Google Cloud কনসোলে API এবং পরিষেবা > শংসাপত্র প্যানেলে আপনার প্রকল্পের API কীগুলি দেখতে এবং পরিচালনা করতে পারেন৷
* শুধুমাত্র যদি আপনি ফায়ারবেস এপিআই কী ব্যবহার করেন তৃতীয় পক্ষের টুলের সাথে অথবা Firebase পরিষেবা/পণ্যে সরাসরি REST অ্যাক্সেস ব্যবহার করেন।
** পণ্যের SDK এর পূর্ববর্তী সংস্করণগুলির জন্য প্রয়োজনীয়৷ আপনি যদি SDK-এর লেটেস্ট ভার্সন ব্যবহার করেন, তাহলে API-কে কী-এর অনুমতি তালিকায় থাকার প্রয়োজন নেই।
সমস্যা সমাধান
আমি কীভাবে একটি API_KEY_SERVICE_BLOCKED বা নিষিদ্ধ 403 ত্রুটি ঠিক করব যা বলে যে এই API-তে অনুরোধগুলি ব্লক করা হয়েছে?
আপনি যদি একটি API_KEY_SERVICE_BLOCKED ত্রুটি বা নিম্নলিখিতগুলির মতো একটি ত্রুটি পেয়ে থাকেন তবে এই FAQ-এর নির্দেশিকা অনুসরণ করুন:
Forbidden: 403 POST https://example-service.googleapis.com/method: Requests to this API example-service.googleapis.com method google.example-service.rest.method are blocked.
API কল করার জন্য আপনার অ্যাপের দ্বারা ব্যবহৃত API কী সম্ভবত এটিতে "API বিধিনিষেধ" প্রয়োগ করা হয়েছে এবং কীটির অনুমোদিত তালিকায় সেই API অন্তর্ভুক্ত নেই।
যদি আপনি একটি নন-Firebase পরিষেবা ব্যবহার করার চেষ্টা করার সময় এই ত্রুটিটি পেয়ে থাকেন, তাহলে আমরা দৃঢ়ভাবে সেই পরিষেবা এবং API-এর জন্য একটি নতুন API কী তৈরি করার পরামর্শ দিই৷ Firebase API কী শুধুমাত্র Firebase পরিষেবা/পণ্যের জন্য ব্যবহার করা উচিত। নির্দিষ্ট ধরনের API-এর জন্য আলাদা, সীমাবদ্ধ API কী তৈরি করার বিষয়ে আরও জানুন।
আমি কিভাবে এই ত্রুটি ঠিক করব? "সার্ভার থেকে এই Firebase অ্যাপের পরিমাপ আইডি আনতে ব্যর্থ হয়েছে।"
আপনার ওয়েব অ্যাপ দ্বারা ব্যবহৃত API কী সম্ভবত এটিতে "API বিধিনিষেধ" প্রয়োগ করেছে৷ যদি এটি হয় তবে নিশ্চিত করুন যে Firebase Management API অনুমোদিত API-এর তালিকায় রয়েছে।
আমি একটি ইমেল বা ত্রুটি পেয়েছি যে আমার API কী অবৈধ। কি ঘটেছে এবং কিভাবে আমি এটি ঠিক করব?
এখানে অবৈধ API কীগুলির জন্য কয়েকটি সাধারণ কারণ রয়েছে:
এপিআই কীটিতে "এপিআই কী সীমাবদ্ধতা" প্রয়োগ করা হয়েছে যা এটিকে কী ("অ্যাপ্লিকেশন বিধিনিষেধ") ব্যবহার করার চেষ্টা করে বা API ("এপিআই বিধিনিষেধ") নামে ডাকার জন্য অব্যবহারযোগ্য করে তোলে।
Google Cloud কনসোলে প্রজেক্ট থেকে API কী মুছে ফেলা হয়েছে।
অ্যাপের Firebase কনফিগারেশন ফাইল/অবজেক্টে তালিকাভুক্ত প্রোজেক্ট আইডির জন্য API কী তৈরি করা হয়নি।
একটি API কী একটি অনন্য স্ট্রিং যা Firebase এবং Google পরিষেবাগুলির সাথে ইন্টারঅ্যাক্ট করার সময় আপনার Firebase প্রকল্পে অনুরোধগুলিকে রুট করতে ব্যবহৃত হয়। এই পৃষ্ঠাটি API কী সম্পর্কে প্রাথমিক তথ্যের পাশাপাশি Firebase অ্যাপগুলির সাথে API কীগুলি ব্যবহার এবং পরিচালনা করার জন্য সর্বোত্তম অনুশীলনগুলি বর্ণনা করে৷
এপিআই কী এবং ফায়ারবেস সম্পর্কে সাধারণ তথ্য
ফায়ারবেসের জন্য API কীগুলি সাধারণ API কীগুলির থেকে আলাদা
সাধারণত API কীগুলি যেভাবে ব্যবহার করা হয় তার বিপরীতে, Firebase পরিষেবাগুলির জন্য API কীগুলি ব্যাকএন্ড সংস্থানগুলিতে অ্যাক্সেস নিয়ন্ত্রণ করতে ব্যবহৃত হয় না ; এটি শুধুমাত্র Firebase Security Rules (কোন শেষ ব্যবহারকারীরা সংস্থানগুলি অ্যাক্সেস করতে পারে তা নিয়ন্ত্রণ করতে) এবং Firebase App Check (কোন অ্যাপগুলি সংস্থানগুলি অ্যাক্সেস করতে পারে তা নিয়ন্ত্রণ করতে) দিয়ে করা যেতে পারে।
সাধারণত, আপনাকে এপিআই কীগুলিকে দৃঢ়ভাবে রক্ষা করতে হবে (উদাহরণস্বরূপ, একটি ভ��্�� ������ষেবা ��্যবহার ��র��� ব��� পরিবেশের ভেরিয়েবল হিসাবে কীগুলি সেট করে); যাইহোক, ফায়ারবেস পরিষেবাগুলির জন্য API কীগুলি কোড বা চেক-ইন কনফিগার ফাইলগুলিতে অন্তর্ভুক্ত করার জন্য ঠিক আছে।
আপনি Google Cloud কনসোলে API এবং পরিষেবা > শংসাপত্র প্যানেলে আপনার স���স্ত প্রকল্পের API কীগুলি দেখতে এবং পরিচালনা করতে পারেন৷
এছাড়াও আপনি নিম্নলিখিত স্থানে কোন API কী স্বয়ংক্রিয়ভাবে একটি Firebase অ্যাপের সাথে মিলছে তা খুঁজে পেতে পারেন। ডিফল্টরূপে, একই প্ল্যাটফর্মের (অ্যাপল বনাম অ্যান্ড্রয়েড বনাম ওয়েব) জন্য আপনার প্রকল্পের সমস্ত ফায়ারবেস অ্যাপ একই API কী ব্যবহার করবে।
Firebase Apple Apps — Firebase কনফিগারেশন ফাইল, GoogleService-Info.plist , API_KEY ক্ষেত্রে স্বয়ংক্রিয়ভাবে মিলে যাওয়া API কী খুঁজুন।
ফায়ারবেস অ্যান্ড্রয়েড অ্যাপস — Firebase কনফিগারেশন ফাইল, google-services.json , current_key ক্ষেত্রে স্বয়ংক্রিয়ভাবে মিলে যাওয়া API কী খুঁজুন।
ফায়ারবেস ওয়েব অ্যাপস — apiKey ক্ষেত্রের মধ্যে Firebase কনফিগার অবজেক্টে স্বয়ংক্রিয়-মিলিত API কী খুঁজুন।
একটি API কী ব্যবহার করে
Firebase/Google পরিষেবাগুলির সাথে ইন্টারঅ্যাক্ট করার সময় আপনার Firebase প্রোজেক্ট সনাক্ত করতে API কীগুলি ব্যবহার করা হয়। বিশেষত, এগুলি কোটা এবং বিলিং এর জন্য আপনার প্রকল্পের সাথে API অনুরোধগুলি সংযুক্ত করতে ব্যবহৃত হয়। তারা পাবলিক ডেটা অ্যাক্সেস করার জন্যও দরকারী।
উদাহরণস্বরূপ, আপনি একটি এপিআই কীকে একটি ক্যোয়ারী প্যারামিটার হিসাবে একটি REST API কলে এর মান পাস করে স্পষ্টভাবে ব্যবহার করতে পারেন। এই উদাহরণটি দেখায় কিভাবে আপনি Dynamic Links লিঙ্ক শর্টনার এপিআই- তে একটি অনুরোধ করতে পারেন:
POST https://firebasedynamiclinks.googleapis.com/v1/shortLinks?key=API_KEY
আপনার অ্যাপ যখন একটি Firebase API-তে কল করে যার জন্য মোবাইল/ওয়েব ক্লায়েন্ট দ্বারা সরবরাহ করা একটি API কী প্রয়োজন, তখন আপনার অ্যাপটি স্বয়ংক্রিয়ভাবে আপনার প্রকল্পের API কী-এর জন্য Firebase কনফিগারেশন ফাইল/অবজেক্টে দেখতে পাবে। যাইহোক, আপনি পরিবেশের ভেরিয়েবল সহ একটি ভিন্ন প্রক্রিয়া ব্যবহার করে আপনার অ্যাপের জন্য API কী প্রদান করতে পারেন।
পর্যালোচনা করুন এবং API কীগুলিতে উপযুক্ত সীমাবদ্ধতা প্রয়োগ করুন (প্রস্তাবিত)
যদিও ফায়ারবেস পরিষেবাগুলির জন্য একটি এপিআই কীকে গোপন হিসাবে বিবেচনা করার প্রয়োজন নেই, তবে আপনার এই বিভাগে বর্ণিত বিধিনিষেধ এবং সীমাগুলি পর্যালোচনা এবং প্রয়োগ করা উচিত।
আপনার Firebase API কীগুলির জন্য অনুমোদিত তালিকায় স্বয়ংক্রিয়ভাবে যোগ করা APIগুলি পর্যালোচনা করুন
যখন Firebase আপনার প্রোজেক্টে একটি API কী তৈরি করে, তখন আমরা স্বয়ংক্রিয়ভাবে সেই কীটিতে "API সীমাবদ্ধতা" যোগ করি। এই অনুমোদিত তালিকায় যোগ করা APIগুলি হল Firebase-সম্পর্কিত API যেগুলির জন্য ক্লায়েন্টকে কলের সাথে একটি API কী প্রদান করতে হবে। মনে রাখবেন যে ফায়ারবেস পরিষেবাগুলির ব্যবহারের জন্য প্রয়োজনীয় বেশিরভাগ APIগুলিকে আপনার API কীগুলির জন্য অনুমোদিত তালিকায় থাকতে হবে না।
যেহেতু Firebase সমস্ত Firebase পরিষেবার জন্য প্রয়োজনীয় API যোগ করে, তাই একটি API কী-এর অনুমোদন তালিকায় আপনি ব্যবহার করেন না এমন পণ্যগুলির API অন্তর্ভুক্ত থাকতে পারে। আপনি অনুমোদিত তালিকা থেকে APIগুলি সরাতে পারেন, তবে Firebase এবং Firebase পরিষেবাগুলির জন্য প্রয়োজনীয় APIগুলি যেগুলি আপনি ব্যবহার করেন তা না সরানোর জন্য আপনাকে অবশ্যই খুব সতর্ক থাকতে হবে ( Firebase-সম্পর্কিত APIগুলির তালিকা দেখুন যা প্রতিটি পরিষেবা / পণ্যের জন্য অনুমোদিত তালিকায় থাকা প্রয়োজন)। অন্যথায়, Firebase পরিষেবাগুলিতে কল করার সময় আপনি ত্রুটি পাবেন৷
আপনি পাসওয়ার্ড-ভিত্তিক Authentication ব্যবহার করলে কোটা শক্ত করুন
আপনি যদি পাসওয়ার্ড-ভিত্তিক Firebase Authentication ব্যবহার করেন এবং কেউ আপনার API কী ধরে রাখে, তবে তারা আপনার Firebase প্রকল্পের ডেটাবেস বা Cloud Storage ডেটা অ্যাক্সেস করতে পারবে নাযতক্ষণ না এই ডেটা Firebase Security Rules দ্বারা সুরক্ষিত থাকে । তারা, যাইহোক, Firebase এর প্রমাণীকরণের শেষ পয়েন্টগুলি অ্যাক্সেস করতে এবং আপনার প্রকল্পের বিরুদ্ধে প্রমাণীকরণের অনুরোধ করতে আপনার API কী ব্যবহার করতে পারে।
এমন সম্ভাবনার বিরুদ্ধে প্রশমিত করতে যে কেউ একটি এপিআই কী অপব্যবহার করে পাশবিক শক্তি আক্রমণের চেষ্টা করতে পারে, আপনি আপনার অ্যাপের স্বাভাবিক ট্রাফিক প্রত্যাশা প্রতিফলিত করতে identitytoolkit.googleapis.com এন্ডপয়েন্টের ডিফল্ট কোটা শক্ত করতে পারেন। সচেতন থাকুন যে আপনি যদি এই কোটা শক্ত করেন এবং আপনার অ্যাপ হঠাৎ করে ব্যবহারকারী বাড়ায়, আপনি কোটা না বাড়া পর্যন্ত সাইন-ইন ত্রুটি পেতে পারেন। আপনি Google Cloud কনসোলে আপনার প্রকল্পের এপিআই কোটা পরিবর্তন করতে পারেন।
যে কোনও ফায়ারবেস পরিষেবার জন্য পৃথক, সীমাবদ্ধ এপিআই কীগুলি ব্যবহার করুন
যদিও ফায়ারবেস পরিষেবাগুলির জন্য ব্যবহৃত এপিআই কীগুলি সাধারণত গোপন হিসাবে বিবেচনা করার প্রয়োজন হয় না, আপনার অন্যান্য Google Cloud এপিআইগুলির সাথে আপনি যে এপিআই কীগুলি ব্যবহার করেন সেগুলি দিয়ে আপনার কিছু অতিরিক্ত সতর্কতা অবলম্বন করা উচিত।
আপনি যদি কোনও Google Cloud এপিআই (কোনও প্ল্যাটফর্মে) ব্যবহার করেন যা ফায়ারবেস পরিষেবা / পণ্যের জন্য নয়, আমরা দৃ strongly ়ভাবে সেই এপিআইগুলির সাথে ��্যবহারের জন্য পৃথক, সীমাবদ্ধ এপিআই কীগুলি তৈরি করার পরামর্শ দিই। এটি বিশেষত গুরুত্বপূর্ণ যদি এপিআই একটি বিলযোগ্য Google Cloud পরিষেব���র জন্য হয়।
উদাহরণস্বরূপ, আপনি যদি আইওএস -তে Firebase ML এবং ক্লাউড ভিশন এপিআই ব্যবহার করেন তবে আপনার পৃথক এপিআই কী তৈরি করা উচিত যা আপনি কেবল ক্লাউড ভিশন এপিআইগুলিতে অ্যাক্সেসের জন্য ব্যবহার করেন।
নন-ফায়ারবেস এপিআইগুলির জন্য পৃথক, সীমাবদ্ধ এপিআই কীগুলি ব্যবহার করে, আপনি যখন প্রয়োজন হয় তখন কীগুলি ঘোরানো বা প্রতিস্থাপন করতে পারেন এবং আপনার ফায়ারবেস পরিষেবাগুলির ব্যবহার ব্যাহত না করে এপিআই কীগুলিতে অতিরিক্ত বিধিনিষেধ যুক্ত করতে পারেন ।
এপিআই-নির্দিষ্ট কী তৈরির জন্য নির্দেশাবলী দেখুন
এই নির্দেশাবলীগুলি Super Service API নামক একটি জাল এপিআইয়ের জন্য কীভাবে একটি পৃথক, সীমাবদ্ধ এপিআই কী তৈরি করতে পারে তা বর্ণনা করে।
পদক্ষেপ 1: Super Service API অ্যাক্সেস অস্বীকার করতে আপনার বিদ্যমান এপিআই কীগুলি কনফিগার করুন
Google Cloud কনসোলের শংসাপত্র পৃষ্ঠা খুলুন। যখন অনুরোধ করা হয়, আপনার প্রকল্পটি নির্বাচন করুন।
তালিকার প্রতিটি বিদ্যমান এপিআই কীটির জন্য, সম্পাদনা দৃশ্যটি খুলুন।
এপিআই বিধিনিষেধ বিভাগে, সীমাবদ্ধ কী নির্বাচন করুন, তারপরে আপনি এপিআই কীটি অ্যাক্সেস করতে চান এমন সমস্ত এপিআই তালিকায় যুক্ত করুন। আপনি একটি পৃথক এপিআই কী তৈরি করছেন এমন API অন্তর্ভুক্ত না করার বিষয়টি নিশ্চিত করুন (এই উদাহরণে, Super Service API )।
আপনি যখন কোনও এপিআই কী এর এপিআই বিধিনিষেধগুলি কনফিগার করেন, আপনি স্পষ্টভাবে এপিআইগুলি ঘোষণা করছেন যেখানে কীটিতে অ্যাক্সেস রয়েছে। ডিফল্টরূপে, যখন এপিআই বিধিনিষেধ বিভাগটি নির্বাচিত কীকে সীমাবদ্ধ করে না , তখন একটি এপিআই কী প্রকল্পের জন্য সক্ষম যে কোনও এপিআই অ্যাক্সেস করতে ব্যবহার করা যেতে পারে।
এখন, আপনার বিদ্যমান এপিআই কীগুলি Super Service API অ্যাক্সেস দেবে না, তবে প্রতিটি কী আপনি এর এপিআই বিধিনিষেধ তালিকায় যুক্ত করেছেন এমন কোনও এপিআইয়ের জন্য কাজ করতে থাকবে।
পদক্ষেপ 2: Super Service API অ্যাক্সেসের জন্য একটি নতুন এপিআই কী তৈরি করুন এবং ব্যবহার করুন
শংসাপত্র পৃষ্ঠায় ফিরে আসুন। নিশ্চিত হয়ে নিন যে আপনার ফায়ারবেস প্রকল্পটি এখনও নির্বাচন করা হয়েছে।
শংসাপত্র তৈরি করুন> এপিআই কী ক্লিক করুন। নতুন এপিআই কীটি নোট করুন, তারপরে সীমাবদ্ধ কীটি ক্লিক করুন।
এপিআই বিধিনিষেধ বিভাগে, সীমাবদ্ধ কী নির্বাচন করুন, তারপরে কেবলমাত্রSuper Service API তালিকায় যুক্ত করুন।
এই নতুন এপিআই কীটি কেবল Super Service API অ্যাক্সেস দেয়।
নতুন এপিআই কীটি ব্যবহার করতে আপনার অ্যাপ্লিকেশন এবং পরিষেবাগুলি কনফিগার করুন।
পরিবেশ-নির্দিষ্ট এপিআই কীগুলি ব্যবহার করুন (প্রস্তাবিত)
আপনি যদি বিভিন্ন পরিবেশের জন্য বিভিন্ন ফায়ারবেস প্রকল্পগুলি যেমন মঞ্চায়ন এবং উত্পাদনের জন্য সেট আপ করেন তবে প্রতিটি অ্যাপ্লিকেশন উদাহরণটি এর সাথে সম্পর্কিত ফায়ারবেস প্রকল্পের সাথে যোগাযোগ করে এটি গুরুত্বপূর্ণ। উদাহরণস্বরূপ, আপনার স্টেজিং অ্যাপ্লিকেশন উদাহরণটি কখনই আপনার প্রোডাকশন ফায়ারবেস প্রকল্পের সাথে কথা বলা উচিত নয়। এর অর্থ হ'ল আপনার স্টেজিং অ্যাপটিতে আপনার স্টেজিং ফায়ারবেস প্রকল্পের সাথে সম্পর্কিত এপিআই কীগুলি ব্যবহার করা দরকার।
কোড পরিবর্তন থেকে স্টেজিংয়ে কোড পরিবর্তনগুলি প্রচার করতে সমস্যাগুলি হ্রাস করতে, কোডটিতে নিজেই এপিআই কীগুলি অন্তর্ভুক্ত করার পরিবর্তে, হয় এগুলি পরিবেশের ভেরিয়েবল হিসাবে সেট করুন বা তাদের একটি কনফিগারেশন ফাইলে অন্তর্ভুক্ত করুন।
মনে রাখবেন যে আপনি যদি Firebase ML সহ বিকাশের জন্য Firebase Local Emulator Suite ব্যবহার করছেন তবে আপনাকে অবশ্যই একটি ডিবাগ-কেবল এপিআই কী তৈরি করতে হবে এবং ব্যবহার করতে হবে। এই ধরণের কী তৈরির জন্য নির্দেশাবলী Firebase ML ডক্সে পাওয়া যায়।
প্রায়শই জিজ্ঞাসিত প্রশ্নাবলী এবং সমস্যা সমাধান
FAQs
ফায়ারবেস পরিষেবাদির জন্য এপিআই কীগুলি কি ডিফল্টরূপে সীমাবদ্ধ?
হ্যাঁ, ডিফল্টরূপে, ফায়ারবেস সম্পর্কিত এপিআইগুলির সাথে ব্যবহারের জন্য ফায়ারবেস অটো-বিধানগুলির সমস্ত এপিআই কীগুলি স্বয়ংক্রিয়ভাবে প্রয়োগ করা হয় "এপিআই বিধিনিষেধ" । এই অনুমতিপত্রের উপর থাকা ফায়ারবেস সম্পর্কিত এপিআইগুলির তালিকা দেখুন।
এপিআইগুলি এই অনুমতিপত্রের সাথে যুক্ত করা হয়েছে সেগুলি হ'ল ক্লায়েন্ট-কোড থেকে ফায়ারবেস পরিষেবাগুলি দ্বারা ডাকা এপিআই এবং আপনার ফায়ারবেস প্রকল্প বা অ্যাপ্লিকেশন সনাক্তকরণের জন্য এপিআই কীগুলির প্রয়োজন। মনে রাখবেন যে ফায়ারবেস পরিষেবাগুলি ব্যবহারের জন্য প্রয়োজনীয় বেশিরভাগ এপিআইগুলি আসলে আপনার এপিআই কীগুলির জন্য অনুমতিপত্রের প্রয়োজন হয় না।
যেহেতু ফায়ারবেস সমস্ত ফায়ারবেস পরিষেবার জন্য প্রয়োজনীয় এপিআই যুক্ত করে, তাই কোনও এপিআই কীটির জন্য অনুমতিপত্রের মধ্যে আপনি ব্যবহার করেন না এমন পণ্যগুলির জন্য এপিআই অন্তর্ভুক্ত থাকতে পারে। আপনি এএলজিআইএলিস্ট থেকে এপিআইগুলি সরিয়ে ফেলতে পারেন, তবে ফায়ারবেস এবং আপনি যে ফায়ারবেস পরিষেবাগুলি ব্যবহার করেন তার জন্য প্রয়োজনীয় এপিআইগুলি অপসারণ না করার জন্য আপনাকে অবশ্যই খুব সাবধানতা অবলম্বন করতে হবে (প্রতিটি পরিষেবা / পণ্যের জন্য অনুমতি তালিকাটিতে থাকা ফায়ারবেস সম্পর্কিত এপিআইগুলির তালিকা দেখুন)। অন্যথায়, ফায়ারবেস পরিষেবাগুলিতে কল করার সময় আপনি ত্রুটিগুলি পাবেন।
2024 সালের মে মাসের মধ্যে, ফায়ারবেস পূর্বে স্বতঃ-বিধানযুক্ত সমস্ত বিদ্যমান এবং সীমাহীন এপিআই কীগুলি ফায়ারবেস সম্পর্কিত এপিআইএবং প্রকল্পের বর্তমানে সক্ষম এপিআইগুলির যে কোনও একটি তালিকার মধ্যে সীমাবদ্ধ।
ফায়ারবেস পূর্বে অটো-বিধানযুক্ত যে কোনও বিদ্যমান এবং ইতিমধ্যে সীমাবদ্ধ এপিআই কীগুলি পরিবর্তন করা হয়নি।
ফায়ারবেস দ্বারা স্বতঃ-বিধান করা হয়নি এমন কোনও বিদ্যমান এপিআই কীগুলি পরিবর্তন করা হয়নি।
আমার ফায়ারবেস অ্যাপের সাথে কোন এপিআই কী যুক্ত তা আমি কীভাবে নির্ধারণ করতে পারি?
কোন এপিআই কীটি আপনার ফায়ারবেস অ্যাপের সাথে সম্পর্কিত তা নির্ধারণ করতে আপনি নিম্নলিখিত যে কোনও বিকল্প ব্যবহার করতে পারেন:
Firebase কনসোল
settingsপ্রকল্প সেটিংসে যান এবং তারপরে আপনার অ্যাপ্লিকেশন কার্ডে স্ক্রোল করুন।
আগ্রহের অ্যাপটি নির্বাচন করুন।
আগ্রহের অ্যাপের জন্য ফায়ারবেস কনফিগার ফাইল/অবজেক্টটি পান এবং তারপরে এর এপিআই কীটি সন্ধান করুন:
এই keyString একই মান যা অ্যাপের কনফিগারেশন আর্টিফ্যাক্টে পাওয়া যায় ( অ্যাপল | অ্যান্ড্রয়েড | ওয়েব )।
আমার ফায়ারবেস কনফিগার ফাইল/অবজেক্টে একই ফায়ারবেস অ্যাপের জন্য আমার দুটি এপিআই কী তালিকাভুক্ত থাকতে পারে?
ফায়ারবেস অ্যাপল অ্যাপস - প্রতিটি অ্যাপ্লিকেশনটির নিজস্ব কনফিগারেশন ফাইল রয়েছে এবং এতে কেবল একটি এপিআই কী তালিকাভুক্ত থাকতে পারে।
ফায়ারবেস অ্যান্ড্রয়েড অ্যাপ্লিকেশন - ফায়ারবেস প্রকল্পের সমস্ত অ্যান্ড্রয়েড অ্যাপ্লিকেশনগুলি একই কনফিগারেশন ফাইলে তালিকাভুক্ত করা হয়েছে এবং প্রতিটি অ্যাপ্লিকেশনটিতে কেবল একটি এপিআই কী তালিকাভুক্ত থাকতে পারে। যদিও এই কনফিগারেশন ফাইলের প্রতিটি অ্যাপ্লিকেশনটিতে আলাদা কী তালিকাভুক্ত থাকতে পারে।
ফায়ারবেস ওয়েব অ্যাপস - প্রতিটি অ্যাপ্লিকেশনটির নিজস্ব কনফিগারেশন অবজেক্ট রয়েছে এবং এতে কেবল একটি এপিআই কী তালিকাভুক্ত থাকতে পারে।
যদিও আপনি একটি অ্যাপ্লিকেশন সহ একাধিক এপিআই কী ব্যবহার করতে পারেন । পরিবেশের ভেরিয়েবলের মাধ্যমে যেমন এই অন্যান্য এপিআই কীগুলি অ্যাক্সেস করার জন্য আপনাকে অবশ্যই আপনার অ্যাপ্লিকেশনটির জন্য একটি প্রক্রিয়া সরবরাহ করতে হবে। অন্যান্য এপিআই কীগুলি অ্যাক্সেস করার প্রক্রিয়াটি কেবল আপনার ফায়ারবেস কনফিগার ফাইল/অবজেক্টে তালিকাভুক্ত সেই API কীগুলির উপর নির্ভর করতে পারে না।
ফায়ারবেস কীভাবে জানতে পারে যে কোনও অ্যাপের সাথে কোনও অ্যাপ্লিকেশনটির সাথে মেলে (যেমন ফায়ারবেস কনফিগার ফাইল/অবজেক্টের মতো)?
যদি ফায়ারবেস মেলে এমন কোনও সীমাবদ্ধ কীগুলি খুঁজে না পায়, তবে এটি কনফিগারেশন ফাইল/আপেল অ্যাপ্লিকেশনগুলির জন্য iOS key , অ্যান্ড্রয়েড অ্যাপ্লিকেশনগুলির জন্য Android key এবং ওয়েব অ্যাপ্লিকেশনগুলির জন্য Browser key তালিকাভুক্ত করবে (ধরে নিই যে এই কীগুলি বিদ্যমান এবং কোনও "অ্যাপ্লিকেশন বিধিনিষেধ" নেই যা তাদের অ্যাপ্লিকেশনটির সাথে মিলে যায় না)।
আমি কি আমার ফায়ারবেস কনফিগার ফাইল/অবজেক্ট থেকে এপিআই কী এবং ক্ষেত্রটি ম্যানুয়ালি মুছতে পারি?
হ্যাঁ, আপনি নিজের কনফিগার ফাইল/অবজেক্ট থেকে ম্যানুয়ালি আপনার এপিআই কী মুছতে পারেন। তবে, আপনার অ্যাপ্লিকেশনটির জন্য কোনও এপিআই কী অ্যাক্সেস করার জন্য আপনাকে অবশ্যই কিছু অন্যান্য প্রক্রিয়া সরবরাহ করতে হবে (যেমন পরিবেশের ভেরিয়েবলের মাধ্যমে)। অন্যথায়, ফায়ারবেস পরিষেবাগুলিতে যে কোনও কল ব্যর্থ হবে।
আমি কি ম্যানুয়ালি আমার ফায়ারবেস কনফিগার ফাইল/অবজেক্টটি বিভিন্ন এপিআই কী দিয়ে সম্পাদনা করতে পারি?
হ্যাঁ, আপনি কোনও অ্যাপের সাথে আলাদা এপিআই কী যুক্ত করতে ম্যানুয়ালি একটি কনফিগার ফাইল/অবজেক্ট সম্পাদনা করতে পারেন।
আমি কি একটি এপিআই কীটি একটি ফায়ারবেস প্রকল্প থেকে অন্যটিতে স্থানান্তর করতে পারি?
না, একটি এপিআই কী কেবল একটি নির্দিষ্ট প্রকল্প চিহ্নিত করে এবং অন্য কোনও প্রকল্পে স্থানান্তরিত হতে পারে না।
আমি Google Cloud কনসোলে তালিকাভুক্ত একটি এপিআই কী মুছলে কী হবে?
আপনি যদি কোনও অ্যাপ্লিকেশন দ্বারা ব্যবহৃত কোনও এপিআই কী মুছুন, তবে সেই অ্যাপ্লিকেশন থেকে এপিআই কলগুলি ব্যর্থ হবে। আপনি প্রতিবেদন, ইমেল বা ত্রুটিগুলি পেতে পারেন যা আপনি কোনও এপিআই কী ব্যবহার করার চেষ্টা করছেন যা অবৈধ।
একটি এপিআই কী মুছে ফেলা স্থায়ী এবং পূর্বাবস্থায় ফিরে যেতে পারে না।
ফায়ারবেস এপিআই কীটির জন্য "এপিআই বিধিনিষেধগুলি" অনুমতি দেয় এমন কোন এপিআইগুলির প্রয়োজন?
ফায়ারবেস এপিআই কীগুলির জন্য, কীটির "এপিআই বিধিনিষেধ" এলেলিস্টে থাকা একমাত্র এপিআইগুলি হ'ল এপিআই যা ক্লায়েন্টকে কল সহ একটি এপিআই কী সরবরাহ করতে হবে। নোট করুন যে খুব কম ফায়ারবেস সম্পর্কিত এপিআইগুলির এই প্রয়োজনীয়তা রয়েছে। আপনার প্রকল্পে সক্ষম করা বেশিরভাগ ফায়ারবেস সম্পর্কিত এপিআই কী এর "এপিআই বিধিনিষেধ" অনুমতিপত্রের জন্য থাকার দরকার নেই।
কোন ফায়ারবেস সম্পর্কিত এপিআইগুলিকে ফায়ারবেস এপিআই কীটির জন্য "এপিআই বিধিনিষেধ" মঞ্জুর��র মধ্যে অন্তর্ভুক্ত করা দরকার তা নির্ধারণ করতে নিম্নলিখিত টেবিলটি ব্যবহার করুন। মনে রাখবেন, ফায়ারবেস এপিআই কীগুলি কেবল ফায়ারবেস পরিষেবাগুলির জন্য ব্যবহার করা উচিত। নির্দিষ্ট ধরণের এপিআইগুলির জন্য পৃথক, সীমাবদ্ধ এপিআই কীগুলি তৈরি করার বিষয়ে আরও জানুন।
* আপনি যদি তৃতীয় পক্ষের সরঞ্জামগুলি বা ফায়ারবেস পরিষেবা / পণ্যটিতে সরাসরি বিশ্রাম অ্যাক্সেস সহ ফায়ারবেস এপিআই কী ব্যবহার করছেন তবেই প্রয়োজনীয়।
** পণ্যের এসডিকে পূর্ববর্তী সংস্করণগুলির জন্য প্রয়োজনীয়। আপনি যদি এসডিকে সর্বশেষতম সংস্করণটি ব্যবহার করছেন তবে এপিআইয়ের কীটির অনুমতিপত্রে থাকার দরকার নেই।
সমস্যা সমাধান
আমি কীভাবে একটি API_KEY_SERVICE_BLOCKED বা নিষিদ্ধ 403 ত্রুটিটি ঠিক করব যা বলে যে এই এপিআইয়ের অনুরোধগুলি অবরুদ্ধ করা হয়েছে?
আপনি যদি API_KEY_SERVICE_BLOCKED ত্রুটি বা নিম্নলিখিতগুলির মতো দেখতে কোনও ত্রুটি পেয়ে থাকেন তবে এই FAQ এ গাইডেন্সটি অনুসরণ করুন:
Forbidden: 403 POST https://example-service.googleapis.com/method: Requests to this API example-service.googleapis.com method google.example-service.rest.method are blocked.
আপনার অ্যাপ্লিকেশন দ্বারা ব্যবহৃত এপিআই কীটি এপিআইকে কল করতে সম্ভবত এটিতে প্রয়োগ করা "এপিআই বিধিনিষেধ" রয়েছে এবং কীটির অনুমতিপত্রটি সেই এপিআই অন্তর্ভুক্ত করে না।
আপনি যদি নন-ফায়ারবেস পরিষেবা ব্যবহার করার চেষ্টা করার সময় এই ত্রুটিটি পেয়ে থাকেন তবে আমরা দৃ strongly ়ভাবে সেই পরিষেবা এবং এপিআইয়ের জন্য বিশেষত একটি নতুন এপিআই কী তৈরি করার পরামর্শ দিই। ফায়ারবেস এপিআই কীগুলি কেবল ফায়ারবেস পরিষেবা / পণ্যগুলির জন্য ব্যবহার করা উচিত। নির্দিষ্ট ধরণের এপিআইগুলির জন্য পৃথক, সীমাবদ্ধ এপিআই কীগুলি তৈরি করার বিষয়ে আরও জানুন।
আমি কিভাবে এই ত্রুটি ঠিক করব? "সার্ভার থেকে এই ফায়ারবেস অ্যাপের পরিমাপ আইডি আনতে ব্যর্থ" "
আপনার ওয়েব অ্যাপ্লিকেশন দ্বারা ব্যবহৃত এপিআই কীটিতে সম্ভবত এটিতে প্রয়োগ করা "এপিআই বিধিনিষেধ" রয়েছে। যদি এটি হয় তবে নিশ্চিত হয়ে নিন যে ফায়ারবেস ম্যানেজমেন্ট এপিআই অনুমোদিত এপিআইগুলির তালিকায় রয়েছে।
আমি একটি ইমেল বা ত্রুটি পেয়েছি যে আমার এপিআই কীটি অবৈধ। কি ঘটেছে এবং কিভাবে আমি এটি ঠিক করব?
অবৈধ এপিআই কীগুলির জন্য এখানে কয়েকটি সাধারণ কারণ রয়েছে:
এপিআই কীটিতে "এপিআই কী বিধিনিষেধগুলি" প্রয়োগ করা হয়েছে যা অ্যাপ্লিকেশনটিকে কী ("অ্যাপ্লিকেশন বিধিনিষেধ") ব্যবহার করার চেষ্টা করে বা এপিআইকে বলা হচ্ছে ("এপিআই বিধিনিষেধ") ব্যবহার করার চেষ্টা করে তা এটি অতুলনীয় করে তোলে।
Google Cloud কনসোলে প্রকল্প থেকে এপিআই কীটি মুছে ফেলা হয়েছিল।
অ্যাপ্লিকেশনটির ফায়ারবেস কনফিগারেশন ফাইল/অবজেক্টে তালিকাভুক্ত প্রকল্প আইডির জন্য এপিআই কী তৈরি করা হয়নি।
[[["সহজে বোঝা যায়","easyToUnderstand","thumb-up"],["আমার সমস্যার সমাধান হয়েছে","solvedMyProblem","thumb-up"],["অন্যান্য","otherUp","thumb-up"]],[["এতে আমার প্রয়োজনীয় তথ্য নেই","missingTheInformationINeed","thumb-down"],["খুব জটিল / অনেক ধাপ","tooComplicatedTooManySteps","thumb-down"],["পুরনো","outOfDate","thumb-down"],["অনুবাদ সংক্রান্ত সমস্যা","translationIssue","thumb-down"],["নমুনা / কোড সংক্রান্ত সমস্যা","samplesCodeIssue","thumb-down"],["অন্যান্য","otherDown","thumb-down"]],["2025-05-29 UTC-তে শেষবার আপডেট করা হয়েছে।"],[],[]]