একটি API কী একটি অনন্য স্ট্রিং যা Firebase এবং Google পরিষেবাগুলির সাথে ইন্টারঅ্যাক্ট করার সময় আপনার Firebase প্রকল্পে অনুরোধগুলিকে রুট করতে ব্যবহৃত হয়। এই পৃষ্ঠাটি API কী সম্পর্কে প্রাথমিক তথ্যের পাশাপাশি Firebase অ্যাপগুলির সাথে API কীগুলি ব্যবহার এবং পরিচালনা করার জন্য সর্বোত্তম অনুশীলনগুলি বর্ণনা করে৷
এপিআই কী এবং ফায়ারবেস সম্পর্কে সাধারণ তথ্য
ফায়ারবেসের জন্য API কীগুলি সাধারণ API কীগুলির থেকে আলাদা
সাধারণত API কীগুলি যেভাবে ব্যবহার করা হয় তার বিপরীতে, Firebase পরিষেবাগুলির জন্য API কীগুলি ব্যাকএন্ড সংস্থানগুলিতে অ্যাক্সেস নিয়ন্ত্রণ করতে ব্যবহৃত হয় না ; এটি শুধুমাত্র Firebase Security Rules (কোন শেষ ব্যবহারকারীরা সংস্থানগুলি অ্যাক্সেস করতে পারে তা নিয়ন্ত্রণ করতে) এবং Firebase App Check (কোন অ্যাপগুলি সংস্থানগুলি অ্যাক্সেস করতে পারে তা নিয়ন্ত্রণ করতে) দিয়ে করা যেতে পারে।
সাধারণত, আপনাকে এপিআই কীগুলিকে দৃঢ়ভাবে রক্ষা করতে হবে (উদাহরণস্বরূপ, একটি ভল্ট পরিষেবা ব্যবহার করে বা পরিবেশের ভেরিয়েবল হিসাবে কীগুলি সেট করে); যাইহোক, ফায়ারবেস পরিষেবাগুলির জন্য API কীগুলি কোড বা চেক-ইন কনফিগার ফাইলগুলিতে অন্তর্ভুক্ত করার জন্য ঠিক আছে।
যদিও Firebase পরিষেবাগুলির জন্য API কীগুলি কোডে অন্তর্ভুক্ত করা নিরাপদ, আপনার উচিত পর্যালোচনা করা এবং উপযুক্ত বিধিনিষেধ এবং সীমাগুলি প্রয়োগ করা ।
API কী তৈরি করা হচ্ছে
একটি ফায়ারবেস প্রকল্পে অনেকগুলি API কী থাকতে পারে, তবে প্রতিটি API কী শুধুমাত্র একটি একক Firebase প্রকল্পের সাথে যুক্ত হতে পারে।
Firebase স্বয়ংক্রিয়ভাবে আপনার প্রজেক্টের জন্য API কী তৈরি করে যখন আপনি নিম্নলিখিতগুলির মধ্যে যেকোনো একটি করেন:
- একটি ফায়ারবেস প্রকল্প তৈরি করুন >
Browser key
স্বয়ংক্রিয়ভাবে তৈরি - একটি Firebase Apple App তৈরি করুন >
iOS key
স্বয়ংক্রিয়ভাবে তৈরি - একটি Firebase Android অ্যাপ তৈরি করুন >
Android key
স্বয়ংক্রিয়ভাবে তৈরি
আপনি Google Cloud কনসোলে আপনার নিজস্ব API কী তৈরি করতে পারেন, উদাহরণস্বরূপ ডেভেলপমেন্ট বা ডিবাগিংয়ের জন্য । এই পৃষ্ঠায় পরে এটি কখন সুপারিশ করা হতে পারে সে সম্পর্কে আরও জানুন।
আপনার 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 কীগুলিতে অতিরিক্ত সীমাবদ্ধতা যুক্ত করতে পারেন ।
এই নির্দেশাবলী বর্ণনা করে কিভাবে 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 কী "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 কী আপনার ফায়ারবেস অ্যাপের সাথে যুক্ত তা নির্ধারণ করতে আপনি নিম্নলিখিত বিকল্পগুলির মধ্যে যেকোনো একটি ব্যবহার করতে পারেন:
Firebase কনসোল
প্রজেক্ট সেটিংসে যান এবং তারপর আপনার অ্যাপস কার্ডে নিচে স্ক্রোল করুন।
আগ্রহের অ্যাপটি নির্বাচন করুন।
আগ্রহের অ্যাপের জন্য Firebase কনফিগারেশন ফাইল/অবজেক্টটি পান এবং তারপরে এর API কী খুঁজুন:
Apple :
GoogleService-Info.plist
ডাউনলোড করুন এবং তারপরAPI_KEY
ক্ষেত্রটি খুঁজুনAndroid :
google-services.json
ডাউনলোড করুন, আগ্রহের অ্যাপের জন্য কনফিগার খুঁজুন (এর প্যাকেজের নাম দেখুন), এবং তারপরcurrent_key
ক্ষেত্রটি খুঁজুনওয়েব : কনফিগ বিকল্পটি নির্বাচন করুন এবং তারপরে
apiKey
ক্ষেত্রটি খুঁজুন
Firebase CLI
নিম্নলিখিত কমান্ডটি চালিয়ে আগ্রহের অ্যাপের জন্য Firebase কনফিগারেশন ফাইল/অবজেক্ট পান:
firebase apps:sdkconfig PLATFORM FIREBASE_APP_ID
- PLATFORM (একটি):
IOS
|ANDROID
|WEB
- FIREBASE_APP_ID : আপনার Firebase অ্যাপের জন্য Firebase-অর্পিত অনন্য শনাক্তকারী ( আপনার অ্যাপ আইডি খুঁজুন )
- PLATFORM (একটি):
অ্যাপের মুদ্রিত ফায়ারবেস কনফিগারেশনে, এর API কী খুঁজুন:
Apple :
API_KEY
ক্ষেত্র খুঁজুনঅ্যান্ড্রয়েড : আগ্রহের অ্যাপের জন্য কনফিগার খুঁজুন (এর প্যাকেজের নাম খুঁজুন), এবং তারপর
current_key
ক্ষেত্রটি খুঁজুনওয়েব :
apiKey
ক্ষেত্র খুঁজুন
REST API
আগ্রহের অ্যাপের জন্য প্রযোজ্য এন্ডপয়েন্টে কল করে এবং তারপরে পরবর্তী ধাপে
apiKeyId
মান পাস করে API কী-এরapiKeyId
(UID) পান।- অ্যাপল :
projects.iosApps.get
কল করুন - Android :
projects.androidApps.get
কল করুন - ওয়েব :
projects.webApps.get
কল করুন
- অ্যাপল :
projects.locations.keys.getKeyString
কল করে API কী স্ট্রিং পান।এই
keyString
একই মান যা অ্যাপের কনফিগারেশন আর্টিফ্যাক্টে পাওয়া যায় ( Apple | Android | Web )।
ফায়ারবেস অ্যাপল অ্যাপস - প্রতিটি অ্যাপের নিজস্ব কনফিগারেশন ফাইল রয়েছে এবং শুধুমাত্র একটি এপিআই কী তালিকাভুক্ত থাকতে পারে।
ফায়ারবেস অ্যান্ড্রয়েড অ্যাপস — ফায়ারবেস প্রোজেক্টের সমস্ত অ্যান্ড্রয়েড অ্যাপ একই কনফিগারেশন ফাইলে তালিকাভুক্ত করা হয়েছে এবং প্রতিটি অ্যাপে শুধুমাত্র একটি এপিআই কী তালিকাভুক্ত থাকতে পারে। যদিও এই কনফিগারেশন ফাইলের প্রতিটি অ্যাপে একটি ভিন্ন কী তালিকাভুক্ত থাকতে পারে।
ফায়ারবেস ওয়েব অ্যাপস - প্রতিটি অ্যাপের নিজস্ব কনফিগারেশন অবজেক্ট আছে এবং শুধুমাত্র একটি এপিআই কী তালিকাভুক্ত থাকতে পারে।
যদিও আপনি একটি অ্যাপের সাথে একাধিক API কী ব্যবহার করতে পারেন । এই অন্যান্য API কীগুলি অ্যাক্সেস করার জন্য আপনাকে অবশ্যই আপনার অ্যাপের জন্য একটি প্রক্রিয়া প্রদান করতে হবে, যেমন একটি পরিবেশ পরিবর্তনশীলের মাধ্যমে। অন্যান্য API কীগুলি অ্যাক্সেস করার পদ্ধতিটি আপনার Firebase কনফিগার ফাইল/অবজেক্টে তালিকাভুক্ত API কীগুলির উপর নির্ভর করতে পারে না।
আপনি যখন প্রথমবার আপনার অ্যাপের Firebase কনফিগারেশন ফাইল/অবজেক্ট পান , তখন Firebase পরীক্ষা করে যে আপনার প্রোজেক্টে "অ্যাপ্লিকেশন সীমাবদ্ধতা" আছে যা অ্যাপের সাথে মেলে (উদাহরণস্বরূপ, অ্যাপল অ্যাপের জন্য একটি ম্যাচিং বান্ডেল আইডি) আছে কিনা।
যদি ফায়ারবেস মেলে এমন কোনো সীমাবদ্ধ কী খুঁজে না পায়, তাহলে এটি অ্যাপল অ্যাপের জন্য iOS key
, অ্যান্ড্রয়েড অ্যাপের জন্য Android key
, এবং ওয়েব অ্যাপের জন্য Browser key
কনফিগার ফাইল/অবজেক্টে তালিকাভুক্ত করবে (ধরে নিচ্ছে যে এই কীগুলি বিদ্যমান এবং কোনও "অ্যাপ্লিকেশন সীমাবদ্ধতা" নেই যা তাদের সেই অ্যাপের সাথে মেলে না)।
হ্যাঁ, আপনি আপনার কনফিগার ফাইল/অবজেক্ট থেকে ম্যানুয়ালি আপনার API কী মুছে ফেলতে পারেন। যাইহোক, আপনাকে অবশ্যই একটি API কী অ্যাক্সেস করার জন্য আপনার অ্যাপের জন্য অন্য কিছু ব্যবস্থা প্রদান করতে হবে (যেমন একটি পরিবেশ পরিবর্তনশীলের মাধ্যমে)। অন্যথায়, ফায়ারবেস পরিষেবাগুলিতে যেকোনো কল ব্যর্থ হবে৷
হ্যাঁ, আপনি একটি অ্যাপের সাথে একটি ভিন্ন API কী সংযুক্ত করতে একটি কনফিগার ফাইল/অবজেক্ট ম্যানুয়ালি সম্পাদনা করতে পারেন।
মনে রাখবেন যে আপনি যদি কনসোল থেকে আপনার অ্যাপের কনফিগারেশন ফাইল/অবজেক্ট পুনরায় প্রাপ্ত করেন তবে এটি সর্বদা সেই API কীগুলি তালিকাভুক্ত করবে যা Firebase স্বয়ংক্রিয়ভাবে সেই অ্যাপের সাথে মেলে । সুতরাং, প্রয়োজন অনুসারে আপনাকে আপনার ম্যানুয়াল সম্পাদনাগুলি পুনরাবৃত্তি করতে হবে।
না, একটি API কী শুধুমাত্র একটি নির্দিষ্ট প্রকল্প সনাক্ত করে এবং অন্য প্রকল্পে স্থানান্তরিত করা যাবে না।
আপনি যদি একটি API কী মুছে ফেলেন যা একটি অ্যাপের দ্বারা ব্যবহৃত হয়, তাহলে সেই অ্যাপ থেকে API কলগুলি ব্যর্থ হবে৷ আপনি রিপোর্ট, ইমেল বা ত্রুটি পেতে পারেন যে আপনি একটি API কী ব্যবহার করার চেষ্টা করছেন যা অবৈধ।
একটি API কী মুছে ফেলা স্থায়ী এবং পূর্বাবস্থায় ফেরানো যাবে না৷
একটি ফায়ারবেস এপিআই কী-এর জন্য, শুধুমাত্র এপিআইগুলি যেগুলি কী-এর "API সীমাবদ্ধতা" মঞ্জুরি তালিকায় থাকা প্রয়োজন সেগুলি হল সেই APIগুলি যেগুলির জন্য ক্লায়েন্টকে কলের সাথে একটি API কী প্রদান করতে হবে৷ মনে রাখবেন যে খুব কম ফায়ারবেস-সম্পর্কিত API-এর এই প্রয়োজনীয়তা রয়েছে। আপনার প্রোজেক্টে সক্রিয় করা বেশিরভাগ ফায়ারবেস-সম্পর্কিত API-কে কী-এর "API সীমাবদ্ধতা" মঞ্জুরি তালিকায় থাকতে হবে না।
ফায়ারবেস এপিআই কী-এর জন্য "API সীমাবদ্ধতা" মঞ্জুরি তালিকায় কোন Firebase-সম্পর্কিত APIগুলিকে অন্তর্ভুক্ত করতে হবে তা নির্ধারণ করতে নিম্নলিখিত সারণীটি ব্যবহার করুন৷ মনে রাখবেন, Firebase API কী শুধুমাত্র Firebase পরিষেবার জন্য ব্যবহার করা উচিত। নির্দিষ্ট ধরনের API-এর জন্য আলাদা, সীমাবদ্ধ API কী তৈরি করার বিষয়ে আরও জানুন।
আপনি Google Cloud কনসোলে API এবং পরিষেবা > শংসাপত্র প্যানেলে আপনার প্রকল্পের API কীগুলি দেখতে এবং পরিচালনা করতে পারেন৷
API নাম (পরিষেবার নাম) | API প্রদর্শনের নাম | সংশ্লিষ্ট ফায়ারবেস পরিষেবা / পণ্য |
---|---|---|
firebase.googleapis.com | ফায়ারবেস ম্যানেজমেন্ট এপিআই | সব পণ্য |
logging.googleapis.com | ক্লাউড লগিং API | সব পণ্য |
firebaseinstallations.googleapis.com | ফায়ারবেস ইনস্টলেশন API | Cloud Messaging , Crashlytics , In-App Messaging , Performance Monitoring , Remote Config , Firebase ML |
firebaseappcheck.googleapis.com | ফায়ারবেস অ্যাপ চেক API | App Check |
firebaseappdistribution.googleapis.com | ফায়ারবেস অ্যাপ ডিস্ট্রিবিউশন API | App Distribution |
firebaseapptesters.googleapis.com | ফায়ারবেস অ্যাপ টেস্টার এপিআই | App Distribution |
identitytoolkit.googleapis.com | আইডেন্টিটি টুলকিট API | Authentication |
সিকিউরেটোকেন.গোগলিপিস.কম | টোকেন পরিষেবা API | Authentication |
firebaserules.googleapis.com * | ফায়ারবেস নিয়ম API | Cloud Firestore , Cloud Storage , Realtime Database |
datastore.googleapis.com | ক্লাউড ডেটাস্টোর API | Cloud Firestore |
firestore.googleapis.com | গুগল ক্লাউড ফায়ারস্টোর এপিআই | Cloud Firestore |
fcmregistrations.googleapis.com | FCM রেজিস্ট্রেশন API | Cloud Messaging |
firebasestorage.googleapis.com | Firebase API-এর জন্য ক্লাউড স্টোরেজ | Cloud Storage |
firebasedynamiclinks.googleapis.com | ফায়ারবেস ডায়নামিক লিঙ্ক এপিআই | Dynamic Links |
firebasehosting.googleapis.com * | ফায়ারবেস হোস্টিং API | Hosting |
firebaseinappmessaging.googleapis.com | ফায়ারবেস ইন-অ্যাপ মেসেজিং API | In-App Messaging |
firebaseml.googleapis.com | Firebase ML API | Firebase ML |
mlkit.googleapis.com ** | এমএল কিট এপিআই | Firebase ML |
mobilecrashreporting.googleapis.com | মোবাইল ক্র্যাশ রিপোর্টিং API | Performance Monitoring |
play.googleapis.com | গুগল প্লে অ্যান্ড্রয়েড ডেভেলপার এপিআই | Performance Monitoring |
firebaseremoteconfig.googleapis.com | ফায়ারবেস রিমোট কনফিগ API | Performance Monitoring , Remote Config |
firebaseremoteconfigrealtime.googleapis.com | ফায়ারবেস রিমোট কনফিগ রিয়েলটাইম API | Performance Monitoring , Remote Config |
cloudconfig.googleapis.com ** | N/A | Remote Config |
firebasedatabase.googleapis.com * | ফায়ারবেস রিয়েলটাইম ডেটাবেস API | Realtime Database |
firebasevertexai.googleapis.com | ফায়ারবেস এআই লজিক এপিআই | Firebase AI লজিক ক্লায়েন্ট SDKs |
* শুধুমাত্র যদি আপনি ফায়ারবেস এপিআই কী ব্যবহার করেন তৃতীয় পক্ষের টুলের সাথে অথবা Firebase পরিষেবা/পণ্যে সরাসরি REST অ্যাক্সেস ব্যবহার করেন।
** পণ্যের SDK এর পূর্ববর্তী সংস্করণগুলির জন্য প্রয়োজনীয়৷ আপনি যদি SDK-এর লেটেস্ট ভার্সন ব্যবহার করেন, তাহলে 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 অন্তর্ভুক্ত নেই।
আপনি যদি ফায়ারবেস-সম্পর্কিত পরিষেবা/পণ্য ব্যবহার করার চেষ্টা করার সময় এই ত্রুটিটি পেয়ে থাকেন, তাহলে নিশ্চিত করুন যে আপনি যে API কীটি ব্যবহার করছেন তাতে কীটির "API সীমাবদ্ধতা" অনুমোদিত তালিকায় অন্তর্ভুক্ত সমস্ত প্রয়োজনীয় API রয়েছে।
যদি আপনি একটি নন-Firebase পরিষেবা ব্যবহার করার চেষ্টা করার সময় এই ত্রুটিটি পেয়ে থাকেন, তাহলে আমরা দৃঢ়ভাবে সেই পরিষেবা এবং API-এর জন্য একটি নতুন API কী তৈরি করার পরামর্শ দিই৷ Firebase API কী শুধুমাত্র Firebase পরিষেবা/পণ্যের জন্য ব্যবহার করা উচিত। নির্দিষ্ট ধরনের API-এর জন্য আলাদা, সীমাবদ্ধ API কী তৈরি করার বিষয়ে আরও জানুন।
আপনার ওয়েব অ্যাপ দ্বারা ব্যবহৃত API কী সম্ভবত এটিতে "API বিধিনিষেধ" প্রয়োগ করেছে৷ যদি এটি হয় তবে নিশ্চিত করুন যে Firebase Management API অনুমোদিত API-এর তালিকায় রয়েছে।
এখানে অবৈধ API কীগুলির জন্য কয়েকটি সাধারণ কারণ রয়েছে:
এপিআই কীটিতে "এপিআই কী সীমাবদ্ধতা" প্রয়োগ করা হয়েছে যা এটিকে কী ("অ্যাপ্লিকেশন বিধিনিষেধ") ব্যবহার করার চেষ্টা করে বা API ("এপিআই বিধিনিষেধ") নামে ডাকার জন্য অব্যবহারযোগ্য করে তোলে।
Google Cloud কনসোলে প্রজেক্ট থেকে API কী মুছে ফেলা হয়েছে।
অ্যাপের Firebase কনফিগারেশন ফাইল/অবজেক্টে তালিকাভুক্ত প্রোজেক্ট আইডির জন্য API কী তৈরি করা হয়নি।
এই সমস্যাটি সমাধান করার একটি উপায় হল আপনার অ্যাপের Firebase কনফিগারেশন ফাইল/অবজেক্টের আপডেট করা সংস্করণ প্রাপ্ত করা , তারপরে আপনার পুরানো কনফিগার ফাইল/অবজেক্টকে নতুন আপডেট করা ফাইল/অবজেক্ট দিয়ে প্রতিস্থাপন করুন । কনসোলে একটি কনফিগার অবজেক্ট ডাউনলোড বা প্রদর্শনের জন্য একটি কনফিগার ফাইল পাঠানোর আগে, Firebase চেক করে যে তালিকাভুক্ত API কী(গুলি) অ্যাপ(গুলি) এর সাথে মেলে ৷
,একটি API কী একটি অনন্য স্ট্রিং যা Firebase এবং Google পরিষেবাগুলির সাথে ইন্টারঅ্যাক্ট করার সময় আপনার Firebase প্রকল্পে অনুরোধগুলিকে রুট করতে ব্যবহৃত হয়। এই পৃষ্ঠাটি API কী সম্পর্কে প্রাথমিক তথ্যের পাশাপাশি Firebase অ্যাপগুলির সাথে API কীগুলি ব্যবহার এবং পরিচালনা করার জন্য সর্বোত্তম অনুশীলনগুলি বর্ণনা করে৷
এপিআই কী এবং ফায়ারবেস সম্পর্কে সাধারণ তথ্য
ফায়ারবেসের জন্য API কীগুলি সাধারণ API কীগুলির থেকে আলাদা
সাধারণত API কীগুলি যেভাবে ব্যবহার করা হয় তার বিপরীতে, Firebase পরিষেবাগুলির জন্য API কীগুলি ব্যাকএন্ড সংস্থানগুলিতে অ্যাক্সেস নিয়ন্ত্রণ করতে ব্যবহৃত হয় না ; এটি শুধুমাত্র Firebase Security Rules (কোন শেষ ব্যবহারকারীরা সংস্থানগুলি অ্যাক্সেস করতে পারে তা নিয়ন্ত্রণ করতে) এবং Firebase App Check (কোন অ্যাপগুলি সংস্থানগুলি অ্যাক্সেস করতে পারে তা নিয়ন্ত্রণ করতে) দিয়ে করা যেতে পারে।
সাধারণত, আপনাকে এপিআই কীগুলিকে দৃঢ়ভাবে রক্ষা করতে হবে (উদাহরণস্বরূপ, একটি ভল্ট পরিষেবা ব্যবহার করে বা পরিবেশের ভেরিয়েবল হিসাবে কীগুলি সেট করে); যাইহোক, ফায়ারবেস পরিষেবাগুলির জন্য API কীগুলি কোড বা চেক-ইন কনফিগার ফাইলগুলিতে অন্তর্ভুক্ত করার জন্য ঠিক আছে।
যদিও Firebase পরিষেবাগুলির জন্য API কীগুলি কোডে অন্তর্ভুক্ত করা নিরাপদ, আপনার উচিত পর্যালোচনা করা এবং উপযুক্ত বিধিনিষেধ এবং সীমাগুলি প্রয়োগ করা ।
API কী তৈরি করা হচ্ছে
একটি ফায়ারবেস প্রকল্পে অনেকগুলি API কী থাকতে পারে, তবে প্রতিটি API কী শুধুমাত্র একটি একক Firebase প্রকল্পের সাথে যুক্ত হতে পারে।
Firebase স্বয়ংক্রিয়ভাবে আপনার প্রজেক্টের জন্য API কী তৈরি করে যখন আপনি নিম্নলিখিতগুলির মধ্যে যেকোনো একটি করেন:
- একটি ফায়ারবেস প্রকল্প তৈরি করুন >
Browser key
স্বয়ংক্রিয়ভাবে তৈরি - একটি Firebase Apple App তৈরি করুন >
iOS key
স্বয়ংক্রিয়ভাবে তৈরি - একটি Firebase Android অ্যাপ তৈরি করুন >
Android key
স্বয়ংক্রিয়ভাবে তৈরি
আপনি Google Cloud কনসোলে আপনার নিজস্ব API কী তৈরি করতে পারেন, উদাহরণস্বরূপ ডেভেলপমেন্ট বা ডিবাগিংয়ের জন্য । এই পৃষ্ঠায় পরে এটি কখন সুপারিশ করা হতে পারে সে সম্পর্কে আরও জানুন।
আপনার 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
হ্যাঁ, ডিফল্টরূপে, ফায়ারবেস সম্পর্কিত এপিআইগুলির সাথে ব্যবহারের জন্য ফায়ারবেস অটো-বিধানগুলির সমস্ত এপিআই কীগুলি স্বয়ংক্রিয়ভাবে প্রয়োগ করা হয় "এপিআই বিধিনিষেধ" । এই অনুমতিপত্রের উপর থাকা ফায়ারবেস সম্পর্কিত এপিআইগুলির তালিকা দেখুন।
এপিআইগুলি এই অনুমতিপত্রের সাথে যুক্ত করা হয়েছে সেগুলি হ'ল ক্লায়েন্ট-কোড থেকে ফায়ারবেস পরিষেবাগুলি দ্বারা ডাকা এপিআই এবং আপনার ফায়ারবেস প্রকল্প বা অ্যাপ্লিকেশন সনাক্তকরণের জন্য এপিআই কীগুলির প্রয়োজন। মনে রাখবেন যে ফায়ারবেস পরিষেবাগুলি ব্যবহারের জন্য প্রয়োজনীয় বেশিরভাগ এপিআইগুলি আসলে আপনার এপিআই কীগুলির জন্য অনুমতিপত্রের প্রয়োজন হয় না।
যেহেতু ফায়ারবেস সমস্ত ফায়ারবেস পরিষেবার জন্য প্রয়োজনীয় এপিআই যুক্ত করে, তাই কোনও এপিআই কীটির জন্য অনুমতিপত্রের মধ্যে আপনি ব্যবহার করেন না এমন পণ্যগুলির জন্য এপিআই অন্তর্ভুক্ত থাকতে পারে। আপনি এএলজিআইএলিস্ট থেকে এপিআইগুলি সরিয়ে ফেলতে পারেন, তবে ফায়ারবেস এবং আপনি যে ফায়ারবেস পরিষেবাগুলি ব্যবহার করেন তার জন্য প্রয়োজনীয় এপিআইগুলি অপসারণ না করার জন্য আপনাকে অবশ্যই খুব সাবধানতা অবলম্বন করতে হবে (প্রতিটি পরিষেবা / পণ্যের জন্য অনুমতি তালিকাটিতে থাকা ফায়ারবেস সম্পর্কিত এপিআইগুলির তালিকা দেখুন)। অন্যথায়, ফায়ারবেস পরিষেবাগুলিতে কল করার সময় আপনি ত্রুটিগুলি পাবেন।
আপনি Google Cloud কনসোলে আপনার সমস্ত এপিআই কী এবং তাদের "এপিআই বিধিনিষেধ" এপিআইএস এবং পরিষেবাদি > শংসাপত্র প্যানেলে দেখতে পারেন।
ফায়ারবেস কীভাবে এই "এপিআই বিধিনিষেধগুলি" প্রয়োগ করে সে সম্পর্কে নিম্নলিখিতটি নোট করুন:
2024 সালের মে মাসে শুরু করে, ফায়ারবেস দ্বারা স্বতঃ-সরবরাহিত সমস্ত নতুন এপিআই কীগুলি স্বয়ংক্রিয়ভাবে ফায়ারবেস সম্পর্কিত এপিআইগুলির তালিকায় সীমাবদ্ধ।
2024 সালের মে মাসের মধ্যে, ফায়ারবেস পূর্বে স্বতঃ-বিধানযুক্ত সমস্ত বিদ্যমান এবং সীমাহীন এপিআই কীগুলি ফায়ারবেস সম্পর্কিত এপিআই এবং প্রকল্পের বর্তমানে সক্ষম এপিআইগুলির যে কোনও একটি তালিকার মধ্যে সীমাবদ্ধ।
ফায়ারবেস পূর্বে অটো-বিধানযুক্ত যে কোনও বিদ্যমান এবং ইতিমধ্যে সীমাবদ্ধ এপিআই কীগুলি পরিবর্তন করা হয়নি।
ফায়ারবেস দ্বারা স্বতঃ-বিধান করা হয়নি এমন কোনও বিদ্যমান এপিআই কীগুলি পরিবর্তন করা হয়নি।
কোন এপিআই কীটি আপনার ফায়ারবেস অ্যাপের সাথে সম্পর্কিত তা নির্ধারণ করতে আপনি নিম্নলিখিত যে কোনও বিকল্প ব্যবহার করতে পারেন:
Firebase কনসোল
প্রকল্প সেটিংসে যান এবং তারপরে আপনার অ্যাপ্লিকেশন কার্ডে স্ক্রোল করুন।
আগ্রহের অ্যাপটি নির্বাচন করুন।
আগ্রহের অ্যাপের জন্য ফায়ারবেস কনফিগার ফাইল/অবজেক্টটি পান এবং তারপরে এর এপিআই কীটি সন্ধান করুন:
অ্যাপল :
GoogleService-Info.plist
ডাউনলোড করুন এবং তারপরেAPI_KEY
ক্ষেত্রটি সন্ধান করুনঅ্যান্ড্রয়েড :
google-services.json
ডাউনলোড করুন, আগ্রহের অ্যাপ্লিকেশনটির জন্য কনফিগারটি সন্ধান করুন (এর প্যাকেজের নামটি সন্ধান করুন) এবং তারপরেcurrent_key
ক্ষেত্রটি সন্ধান করুনওয়েব : কনফিগার বিকল্পটি নির্বাচন করুন এবং তারপরে
apiKey
ক্ষেত্রটি সন্ধান করুন
Firebase সিডি
নিম্নলিখিত কমান্ডটি চালিয়ে আগ্রহের অ্যাপের জন্য ফায়ারবেস কনফিগার ফাইল/অবজেক্টটি পান:
firebase apps:sdkconfig PLATFORM FIREBASE_APP_ID
- PLATFORM (একটি):
IOS
|ANDROID
|WEB
- FIREBASE_APP_ID : আপনার ফায়ারবেস অ্যাপ্লিকেশনটির জন্য ফায়ারবেস-নির্ধারিত অনন্য শনাক্তকারী ( আপনার অ্যাপ্লিকেশন আইডি সন্ধান করুন )
- PLATFORM (একটি):
অ্যাপ্লিকেশনটির মুদ্রিত ফায়ারবেস কনফিগারেশনে, এর এপিআই কীটি সন্ধান করুন:
অ্যাপল :
API_KEY
ক্ষেত্রটি সন্ধান করুনঅ্যান্ড্রয়েড : আগ্রহের অ্যাপ্লিকেশনটির জন্য কনফিগারটি সন্ধান করুন (এর প্যাকেজের নামটি সন্ধান করুন) এবং তারপরে
current_key
ক্ষেত্রটি সন্ধান করুনওয়েব :
apiKey
ক্ষেত্রটি সন্ধান করুন
REST API
আগ্রহের অ্যাপ্লিকেশনটির জন্য প্রযোজ্য শেষ পয়েন্টটি কল করে এবং তারপরে
apiKeyId
মানটি পরবর্তী পদক্ষেপে পাস করে এপিআই কীটিরapiKeyId
(ইউআইডি) পান।- অ্যাপল : কল
projects.iosApps.get
- অ্যান্ড্রয়েড : কল
projects.androidApps.get
- ওয়েব : কল
projects.webApps.get
- অ্যাপল : কল
projects.locations.keys.getKeyString
কল করে এপিআই কী স্ট্রিংটি পান।এই
keyString
একই মান যা অ্যাপের কনফিগারেশন আর্টিফ্যাক্টে পাওয়া যায় ( অ্যাপল | অ্যান্ড্রয়েড | ওয়েব )।
ফায়ারবেস অ্যাপল অ্যাপস - প্রতিটি অ্যাপ্লিকেশনটির নিজস্ব কনফিগারেশন ফাইল রয়েছে এবং এতে কেবল একটি এপিআই কী তালিকাভুক্ত থাকতে পারে।
ফায়ারবেস অ্যান্ড্রয়েড অ্যাপ্লিকেশন - ফায়ারবেস প্রকল্পের সমস্ত অ্যান্ড্রয়েড অ্যাপ্লিকেশনগুলি একই কনফিগারেশন ফাইলে তালিকাভুক্ত করা হয়েছে এবং প্রতিটি অ্যাপ্লিকেশনটিতে কেবল একটি এপিআই কী তালিকাভুক্ত থাকতে পারে। যদিও এই কনফিগারেশন ফাইলের প্রতিটি অ্যাপ্লিকেশনটিতে আলাদা কী তালিকাভুক্ত থাকতে পারে।
ফায়ারবেস ওয়েব অ্যাপস - প্রতিটি অ্যাপ্লিকেশনটির নিজস্ব কনফিগারেশন অবজেক্ট রয়েছে এবং এতে কেবল একটি এপিআই কী তালিকাভুক্ত থাকতে পারে।
যদিও আপনি একটি অ্যাপ্লিকেশন সহ একাধিক এপিআই কী ব্যবহার করতে পারেন । পরিবেশের ভেরিয়েবলের মাধ্যমে যেমন এই অন্যান্য এপিআই কীগুলি অ্যাক্সেস করার জন্য আপনাকে অবশ্যই আপনার অ্যাপ্লিকেশনটির জন্য একটি প্রক্রিয়া সরবরাহ করতে হবে। অন্যান্য এপিআই কীগুলি অ্যাক্সেস করার প্রক্রিয়াটি কেবল আপনার ফায়ারবেস কনফিগার ফাইল/অবজেক্টে তালিকাভুক্ত সেই API কীগুলির উপর নির্ভর করতে পারে না।
আপনি যখন প্রথম আপনার অ্যাপ্লিকেশনটির ফায়ারবেস কনফিগার ফাইল/অবজেক্টটি পান , ফায়ারবেস আপনার প্রকল্পে এমন কোনও বিদ্যমান এপিআই কী রয়েছে যা অ্যাপ্লিকেশনটির সাথে মেলে "অ্যাপ্লিকেশন সীমাবদ্ধতা" রয়েছে কিনা তা পরীক্ষা করে (উদাহরণস্বরূপ, অ্যাপল অ্যাপের জন্য একটি ম্যাচিং বান্ডেল আইডি)।
যদি ফায়ারবেস মেলে এমন কোনও সীমাবদ্ধ কীগুলি খুঁজে না পায়, তবে এটি কনফিগারেশন ফাইল/আপেল অ্যাপ্লিকেশনগুলির জন্য iOS key
, অ্যান্ড্রয়েড অ্যাপ্লিকেশনগুলির জন্য Android key
এবং ওয়েব অ্যাপ্লিকেশনগুলির জন্য Browser key
তালিকাভুক্ত করবে (ধরে নিই যে এই কীগুলি বিদ্যমান এবং কোনও "অ্যাপ্লিকেশন বিধিনিষেধ" নেই যা তাদের অ্যাপ্লিকেশনটির সাথে মিলে যায় না)।
হ্যাঁ, আপনি নিজের কনফিগার ফাইল/অবজেক্ট থেকে ম্যানুয়ালি আপনার এপিআই কী মুছতে পারেন। তবে, আপনার অ্যাপ্লিকেশনটির জন্য কোনও এপিআই কী অ্যাক্সেস করার জন্য আপনাকে অবশ্যই কিছু অন্যান্য প্রক্রিয়া সরবরাহ করতে হবে (যেমন পরিবেশের ভেরিয়েবলের মাধ্যমে)। অন্যথায়, ফায়ারবেস পরিষেবাগুলিতে যে কোনও কল ব্যর্থ হবে।
হ্যাঁ, আপনি কোনও অ্যাপের সাথে আলাদা এপিআই কী যুক্ত করতে ম্যানুয়ালি একটি কনফিগার ফাইল/অবজেক্ট সম্পাদনা করতে পারেন।
মনে রাখবেন যে আপনি যদি কনসোল থেকে আপনার অ্যাপ্লিকেশনটির কনফিগারেশন ফাইল/অবজেক্টটি পুনরায় অবলম্বন করেন তবে এটি সর্বদা এপিআই কীগুলি তালিকাভুক্ত করবে যা ফায়ারবেস স্বয়ংক্রিয়ভাবে সেই অ্যাপ্লিকেশনটির সাথে মেলে । সুতরাং, আপনার প্রয়োজন অনুসারে আপনার ম্যানুয়াল সম্পাদনাগুলি পুনরাবৃত্তি করতে হবে।
না, একটি এপিআই কী কেবল একটি নির্দিষ্ট প্রকল্প চিহ্নিত করে এবং অন্য কোনও প্রকল্পে স্থানান্তরিত হতে পারে না।
আপনি যদি কোনও অ্যাপ্লিকেশন দ্বারা ব্যবহৃত কোনও এপিআই কী মুছুন, তবে সেই অ্যাপ্লিকেশন থেকে এপিআই কলগুলি ব্যর্থ হবে। আপনি প্রতিবেদন, ইমেল বা ত্রুটিগুলি পেতে পারেন যা আপনি কোনও এপিআই কী ব্যবহার করার চেষ্টা করছেন যা অবৈধ।
একটি এপিআই কী মুছে ফেলা স্থায়ী এবং পূর্বাবস্থায় ফিরে যেতে পারে না।
ফায়ারবেস এপিআই কীগুলির জন্য, কীটির "এপিআই বিধিনিষেধ" এলেলিস্টে থাকা একমাত্র এপিআইগুলি হ'ল এপিআই যা ক্লায়েন্টকে কল সহ একটি এপিআই কী সরবরাহ করতে হবে। নোট করুন যে খুব কম ফায়ারবেস সম্পর্কিত এপিআইগুলির এই প্রয়োজনীয়তা রয়েছে। আপনার প্রকল্পে সক্ষম করা বেশিরভাগ ফায়ারবেস সম্পর্কিত এপিআই কী এর "এপিআই বিধিনিষেধ" অনুমতিপত্রের জন্য থাকার দরকার নেই।
কোন ফায়ারবেস সম্পর্কিত এপিআইগুলিকে ফায়ারবেস এপিআই কীটির জন্য "এপিআই বিধিনিষেধ" মঞ্জুরির মধ্যে অন্তর্ভুক্ত করা দরকার তা নির্ধারণ করতে নিম্নলিখিত টেবিলটি ব্যবহার করুন। মনে রাখবেন, ফায়ারবেস এপিআই কীগুলি কেবল ফায়ারবেস পরিষেবাগুলির জন্য ব্যবহার করা উচিত। নির্দিষ্ট ধরণের এপিআইগুলির জন্য পৃথক, সীমাবদ্ধ এপিআই কীগুলি তৈরি করার বিষয়ে আরও জানুন।
আপনি Google Cloud কনসোলে এপিআইএস এবং পরিষেবাদি > শংসাপত্র প্যানেলে আপনার প্রকল্পের এপিআই কীগুলি দেখতে এবং পরিচালনা করতে পারেন।
এপিআই নাম (পরিষেবা নাম) | এপিআই প্রদর্শনের নাম | সম্পর্কিত ফায়ারবেস পরিষেবা / পণ্য |
---|---|---|
ফায়ারবেস.গোগলিপিস.কম | ফায়ারবেস ম্যানেজমেন্ট এপিআই | সব পণ্য |
লগিং.গোগলিপিস.কম | ক্লাউড লগিং এপিআই | সব পণ্য |
ফায়ারবেসআইএনস্টালেশনস.গুগলিপিস.কম | ফায়ারবেস ইনস্টলেশন এপিআই | Cloud Messaging , Crashlytics , In-App Messaging , Performance Monitoring , Remote Config , Firebase ML |
ফায়ারবাসএপচেক.গোগলিপিস.কম | ফায়ারবেস অ্যাপ চেক এপিআই | App Check |
ফায়ারব্যাসএপ্পিডিস্ট্রিবিউশন.গোগলিপিস.কম | ফায়ারবেস অ্যাপ বিতরণ এপিআই | App Distribution |
ফায়ারব্যাসএপ্পেস্টারস.গোগলিপিস.কম | ফায়ারবেস অ্যাপ পরীক্ষক এপিআই | App Distribution |
আইডেন্টিটিটুলকিট.গোগলিপিস.কম | পরিচয় সরঞ্জামকিট এপিআই | Authentication |
সিকিউরেটোকেন.গোগলিপিস.কম | টোকেন পরিষেবা এপিআই | Authentication |
ফায়ারব্যাসেরুলস.গোগলিপিস.কম * | ফায়ারবেস নিয়ম API | Cloud Firestore , Cloud Storage , Realtime Database |
ডেটাস্টোর.গোগলিপিস.কম | ক্লাউড ডেটাস্টোর এপিআই | Cloud Firestore |
ফায়ারস্টোর.গোগলিপিস.কম | গুগল ক্লাউড ফায়ারস্টোর এপিআই | Cloud Firestore |
fcmmegistrations.googleapis.com | এফসিএম নিবন্ধকরণ এপিআই | Cloud Messaging |
ফায়ারবেসস্টোরেজ.গোগলিপিস.কম | ফায়ারবেস এপিআইয়ের জন্য ক্লাউড স্টোরেজ | Cloud Storage |
ফায়ারবেসডাইনামিক্লিংকস.গুগলিপিস.কম | ফায়ারবেস গতিশীল লিঙ্কগুলি এপিআই | Dynamic Links |
ফায়ারবেসহোস্টিং.গোগলিপিস.কম * | ফায়ারবেস হোস্টিং এপিআই | Hosting |
ফায়ারবেসাইন অ্যাপমেসেজিং.গোগলিপিস.কম | ফায়ারবেস ইন-অ্যাপ মেসেজিং এপিআই | In-App Messaging |
ফায়ারবেসেমল.গোগলিপিস.কম | ফায়ারবেস এমএল এপিআই | Firebase ML |
mlkit.googleapis.com ** | এমএল কিট এপিআই | Firebase ML |
Mobilecrashreporting.googleapis.com | মোবাইল ক্র্যাশ রিপোর্টিং এপিআই | Performance Monitoring |
প্লে.গোগলিপিস.কম | গুগল প্লে অ্যান্ড্রয়েড বিকাশকারী এপিআই | Performance Monitoring |
ফায়ারব্যাসেরেমোটেকনফিগ.গোগলিপিস.কম | ফায়ারবেস রিমোট কনফিগারেশন এপিআই | Performance Monitoring , Remote Config |
ফায়ারব্যাসেরেমোটেকনফাইগ্রিয়ালটাইম.গোগলিপিস.কম | ফায়ারবেস রিমোট কনফিগারেশন রিয়েলটাইম এপিআই | Performance Monitoring , Remote Config |
ক্লাউডকনফিগ.গোগলিপিস.কম ** | N/A | Remote Config |
ফায়ারসেসড্যাটাবেস.গোগলিপিস.কম * | ফায়ারবেস রিয়েলটাইম ডাটাবেস এপিআই | Realtime Database |
ফায়ারবেসভারটেক্সাই.গোগলিপিস.কম | ফায়ারবেস এআই লজিক এপিআই | Firebase AI লজিক ক্লায়েন্ট SDKs |
* আপনি যদি তৃতীয় পক্ষের সরঞ্জামগুলি বা ফায়ারবেস পরিষেবা / পণ্যটিতে সরাসরি বিশ্রাম অ্যাক্সেস সহ ফায়ারবেস এপিআই কী ব্যবহার করছেন তবেই প্রয়োজনীয়।
** পণ্যের এসডিকে পূর্ববর্তী সংস্করণগুলির জন্য প্রয়োজনীয়। আপনি যদি এসডিকে সর্বশেষতম সংস্করণটি ব্যবহার করছেন তবে এপিআইয়ের কীটির অনুমতিপত্রে থাকার দরকার নেই।
সমস্যা সমাধান
আপনি যদি 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 কনসোলে প্রকল্প থেকে এপিআই কীটি মুছে ফেলা হয়েছিল।
অ্যাপ্লিকেশনটির ফায়ারবেস কনফিগারেশন ফাইল/অবজেক্টে তালিকাভুক্ত প্রকল্প আইডির জন্য এপিআই কী তৈরি করা হয়নি।
এই সমস্যাটি সমাধান করার একটি উপায় হ'ল আপনার অ্যাপের ফায়ারবেস কনফিগারেশন ফাইল/অবজেক্টের আপডেট হওয়া সংস্করণটি পাওয়া , তারপরে আপনার পুরানো কনফিগার ফাইল/অবজেক্টটি নতুন আপডেট হওয়া ফাইল/অবজেক্টের সাথে প্রতিস্থাপন করুন । কনসোলে কোনও কনফিগারেশন অবজেক্ট ডাউনলোডের জন্য একটি কনফিগার ফাইল প্রেরণের আগে, ফায়ারবেস চেক করে যে এপিআই কী ( গুলি) অ্যাপগুলিতে ম্যাচ তালিকাভুক্ত করেছে।