গুগল ম্যাপ প্ল্যাটফর্ম নিরাপত্তা নির্দেশিকা

যেসব অ্যাপ ও প্রজেক্ট গুগল ম্যাপস প্ল্যাটফর্ম এপিআই এবং এসডিকে ব্যবহার করে, তাদের নিজেদের প্রমাণীকরণের জন্য অবশ্যই এপিআই কী অথবা, সমর্থিত হলে, OAuth 2.0 ব্যবহার করতে হবে।

এই সেরা অনুশীলনগুলো আপনাকে দেখাবে কীভাবে আপনার ম্যাপস প্ল্যাটফর্মের অ্যাক্সেস সুরক্ষিত করতে হয়।

আপনি যদি সার্ভার-টু-সার্ভার ট্র্যাফিক অনুমোদনের জন্য OAuth 2.0 ব্যবহার করতে চান, তাহলে আপনার API ডকুমেন্টেশনে OAuth টপিকটি খুঁজুন। আরও বিস্তারিত জানতে “সার্ভার-সাইড অ্যাপের জন্য OAuth ব্যবহার” দেখুন।

অ্যাপ্লিকেশন এবং এপিআই কী সীমাবদ্ধতা প্রয়োগ করার পাশাপাশি, গুগল ম্যাপস প্ল্যাটফর্মের নির্দিষ্ট পণ্যগুলির জন্য প্রযোজ্য নিরাপত্তা অনুশীলনগুলিও অনুসরণ করুন। উদাহরণস্বরূপ, নিচে 'প্রস্তাবিত অ্যাপ্লিকেশন এবং এপিআই সীমাবদ্ধতা ' অংশে ম্যাপস জাভাস্ক্রিপ্ট এপিআই দেখুন।

আপনার API কীগুলো যদি ইতিমধ্যেই ব্যবহৃত হয়ে থাকে, তাহলে ‘আপনি যদি ব্যবহৃত কোনো API কী সীমাবদ্ধ করতে চান’ অংশে দেওয়া নিচের সুপারিশগুলো পর্যালোচনা করুন।

Maps Static API এবং Street View Static API দ্বারা সমর্থিত ডিজিটাল স্বাক্ষর সম্পর্কে আরও বিস্তারিত জানতে, ডিজিটাল স্বাক্ষর নির্দেশিকা দেখুন।

সুপারিশকৃত সর্বোত্তম অনুশীলন

নিরাপত্তা বাড়াতে এবং অননুমোদিত ব্যবহারের জন্য বিল হওয়া এড়াতে, গুগল ম্যাপস প্ল্যাটফর্মের সকল এপিআই, এসডিকে বা পরিষেবার ক্ষেত্রে এই এপিআই নিরাপত্তা সংক্রান্ত সর্বোত্তম অনুশীলনগুলো অনুসরণ করুন:

আপনার এপিআই কীগুলি সীমাবদ্ধ করুন

প্রতিটি অ্যাপের জন্য আলাদা এপিআই কী ব্যবহার করুন

অব্যবহৃত API কীগুলি মুছে ফেলুন

আপনার এপিআই কী-এর ব্যবহার যাচাই করুন

এপিআই কী ঘোরানোর সময় সতর্ক থাকুন।

ক্লায়েন্ট-সাইড এবং সার্ভার-সাইড ব্যবহারকে আলাদা প্রজেক্টে ভাগ করুন

অব্যবহৃত পরিষেবাগুলি নিষ্ক্রিয় করুন

ক্লায়েন্ট-সাইড অ্যাপের জন্য অতিরিক্ত সুপারিশ

ক্লায়েন্ট-সাইড SDK ব্যবহার করুন

সুরক্ষিত ক্লায়েন্ট-সাইড ওয়েব পরিষেবা কল

স্ট্যাটিক ওয়েব এপিআই ব্যবহারকারী ওয়েবসাইট বা ক্লায়েন্ট-সাইড অ্যাপের জন্য অতিরিক্ত সুপারিশসমূহ

স্ট্যাটিক ওয়েব এপিআই ব্যবহার সুরক্ষিত করুন

ওয়েব সার্ভিস ব্যবহারকারী সার্ভার-সাইড অ্যাপগুলির জন্য অতিরিক্ত সুপারিশ

ওয়েব পরিষেবা API কীগুলি সুরক্ষিত করুন

সার্ভার-সাইড অ্যাপের জন্য OAuth ব্যবহার করুন

যদি আপনি ব্যবহৃত কোনো এপিআই কী সীমাবদ্ধ বা পরিবর্তন করেন

  • এপিআই কী পরিবর্তন করার আগে, আপনার এপিআই কী-এর ব্যবহার যাচাই করুন। এই ধাপটি বিশেষভাবে গুরুত্বপূর্ণ, বিশেষ করে যদি আপনি এমন কোনো কী-এর জন্য বিধিনিষেধ যোগ করতে চান যা ইতিমধ্যেই কোনো প্রোডাকশন অ্যাপ্লিকেশনে ব্যবহৃত হচ্ছে।

  • কী পরিবর্তন করার পর, প্রয়োজন অনুযায়ী আপনার সমস্ত অ্যাপ নতুন API কী দিয়ে আপডেট করুন।

  • যদি আপনার এপিআই কী (API key) অরক্ষিত না থাকে এবং সক্রিয়ভাবে এর অপব্যবহার না করা হয়, তবে আপনি আপনার অ্যাপগুলোকে নিজের গতিতে একাধিক নতুন এপিআই কী-তে স্থানান্তর করতে পারেন। এক্ষেত্রে মূল এপিআই কী-টি অপরিবর্তিত রাখতে হবে যতক্ষণ না আপনি কেবল এক ধরনের ট্র্যাফিক লক্ষ্য করেন এবং অনাকাঙ্ক্ষিত পরিষেবা বিঘ্ন না ঘটিয়ে এপিআই কী-টিকে নিরাপদে এক ধরনের অ্যাপ্লিকেশনের উপর বিধিনিষেধ আরোপ করা যায়।

    আরও নির্দেশাবলীর জন্য, একাধিক API কী-তে মাইগ্রেট করুন দেখুন।

    পুরানো এপিআই কী সীমাবদ্ধ বা মুছে ফেলার সিদ্ধান্ত নেওয়ার আগে, সময়ের সাথে সাথে এর ব্যবহার পর্যবেক্ষণ করুন এবং দেখুন কখন নির্দিষ্ট এপিআই, প্ল্যাটফর্মের ধরণ এবং ডোমেইনগুলো পুরানো এপিআই কী থেকে স্থানান্তরিত হয়েছে। আরও তথ্যের জন্য, রিপোর্টিং ও পর্যবেক্ষণ এবং মেট্রিক্স দেখুন।

  • যদি আপনার এপিআই কী (API key) ফাঁস হয়ে যায়, তবে সেটিকে সুরক্ষিত করতে এবং এর অপব্যবহার বন্ধ করতে আপনার দ্রুত পদক্ষেপ নেওয়া উচিত। অ্যান্ড্রয়েড এবং আইওএস অ্যাপে, গ্রাহকরা তাদের অ্যাপ আপডেট না করা পর্যন্ত কী প্রতিস্থাপন করা হয় না। ওয়েবপেজ বা সার্ভার-সাইড অ্যাপে কী আপডেট বা প্রতিস্থাপন করা অনেক বেশি সহজ, কিন্তু এর জন্যও সতর্ক পরিকল্পনা এবং দ্রুত কাজের প্রয়োজন হতে পারে।

    আরও তথ্যের জন্য, এপিআই কী-এর অননুমোদিত ব্যবহার মোকাবিলা দেখুন।

আরও তথ্য

প্রস্তাবিত অ্যাপ্লিকেশন এবং এপিআই সীমাবদ্ধতা

আপনার এপিআই কীগুলি সীমাবদ্ধ করুন

সর্বোত্তম পন্থা হলো সর্বদা আপনার এপিআই কী-গুলোকে এক ধরনের অ্যাপ্লিকেশন সীমাবদ্ধতা এবং এক বা একাধিক এপিআই সীমাবদ্ধতা দিয়ে সীমিত রাখা। এপিআই, এসডিকে, বা জাভাস্ক্রিপ্ট পরিষেবা অনুযায়ী প্রস্তাবিত সীমাবদ্ধতার জন্য, নিচে প্রস্তাবিত অ্যাপ্লিকেশন এবং এপিআই সীমাবদ্ধতা দেখুন।

  • অ্যাপ্লিকেশন সীমাবদ্ধতা: আপনি একটি API কী-এর ব্যবহার নির্দিষ্ট প্ল্যাটফর্মে সীমাবদ্ধ করতে পারেন: অ্যান্ড্রয়েড বা iOS অ্যাপ্লিকেশন, অথবা ক্লায়েন্ট-সাইড অ্যাপ্লিকেশনের জন্য নির্দিষ্ট ওয়েবসাইট, অথবা ওয়েব সার্ভিস REST API কল প্রদানকারী সার্ভার-সাইড অ্যাপের জন্য নির্দিষ্ট IP অ্যাড্রেস বা CIDR সাবনেট।

    আপনি যে ধরনের অ্যাপ্লিকেশন বিধিনিষেধ অনুমোদন করতে চান, সেগুলোর এক বা একাধিক বিধিনিষেধ যোগ করে একটি কী-কে সীমাবদ্ধ করেন, যার পরে শুধুমাত্র এই উৎসগুলো থেকে আসা অনুরোধগুলোই অনুমোদিত হয়।

  • এপিআই সীমাবদ্ধতা: আপনি সীমাবদ্ধ করতে পারেন যে আপনার এপিআই কী কোন কোন গুগল ম্যাপস প্ল্যাটফর্ম এপিআই, এসডিকে, বা পরিষেবাগুলিতে ব্যবহার করা যাবে। এপিআই সীমাবদ্ধতা শুধুমাত্র আপনার নির্দিষ্ট করা এপিআই এবং এসডিকে-গুলিতেই অনুরোধ করার অনুমতি দেয়। যেকোনো একটি এপিআই কী-এর জন্য, আপনি প্রয়োজন অনুযায়ী যত খুশি এপিআই সীমাবদ্ধতা নির্দিষ্ট করতে পারেন। উপলব্ধ এপিআই-এর তালিকায় একটি প্রোজেক্টে সক্রিয় করা সমস্ত এপিআই অন্তর্ভুক্ত থাকে।

একটি API কী-এর জন্য একটি অ্যাপ্লিকেশন সীমাবদ্ধতা সেট করুন

  1. Google Cloud কনসোলের Google Maps Platform Credentials পৃষ্ঠাটি খুলুন।

  2. যে এপিআই কী-টি আপনি সীমাবদ্ধ করতে চান, সেটি নির্বাচন করুন।

  3. API কী সম্পাদনা পৃষ্ঠায় , কী সীমাবদ্ধতা (Key restrictions) -এর অধীনে, একটি অ্যাপ্লিকেশন সীমাবদ্ধতা সেট করুন (Set an application restriction) নির্বাচন করুন।

    এপিআই কী পৃষ্ঠা সম্পাদনা করুন

  4. বিধিনিষেধের প্রকারগুলোর মধ্যে একটি নির্বাচন করুন এবং বিধিনিষেধ তালিকা অনুযায়ী অনুরোধকৃত তথ্য সরবরাহ করুন।

    সীমাবদ্ধতার ধরণ বর্ণনা
    ওয়েবসাইট এক বা একাধিক রেফারার ওয়েবসাইট নির্দিষ্ট করুন।
    • সর্বজনীনভাবে সমর্থিত রেফারার ইউআরআই স্কিমগুলো হলো https এবং http । অন্যান্য স্কিমগুলো সঠিকভাবে কাজ করবে এমন কোনো নিশ্চয়তা নেই, কারণ আধুনিক ওয়েব ব্রাউজারগুলো গোপনীয়তার কারণে বহির্গামী অনুরোধে `Referer` হেডার পাঠায় না।
    • সর্বদা প্রোটোকল স্কিম, হোস্টনেম এবং ঐচ্ছিক পোর্ট সহ সম্পূর্ণ রেফারার স্ট্রিংটি প্রদান করুন (যেমন, https://google.com )।
    • আপনি সমস্ত সাবডোমেইন অনুমোদন করতে ওয়াইল্ডকার্ড অক্ষর ব্যবহার করতে পারেন। উদাহরণস্বরূপ, https://*.google.com সেইসব সাইট গ্রহণ করে যেগুলোর শেষে .google.com রয়েছে।
    • সম্পূর্ণ পাথসহ রেফারার (যেমন: https://google.com/some/path ) অনুমোদন করার সময় সতর্ক থাকুন, কারণ বেশিরভাগ ওয়েব ব্রাউজার গোপনীয়তার কারণে ক্রস-অরিজিন অনুরোধ থেকে পাথটি মুছে ফেলে।
    আইপি ঠিকানা CIDR নোটেশন ব্যবহার করে এক বা একাধিক IPv4 বা IPv6 অ্যাড্রেস, অথবা সাবনেট উল্লেখ করুন। আইপি অ্যাড্রেসগুলো অবশ্যই গুগল ম্যাপস প্ল্যাটফর্ম সার্ভারগুলোর পর্যবেক্ষণ করা সোর্স অ্যাড্রেসের সাথে মিলতে হবে। আপনি যদি নেটওয়ার্ক অ্যাড্রেস ট্রান্সলেশন (NAT) ব্যবহার করেন, তবে এই অ্যাড্রেসটি সাধারণত আপনার মেশিনের পাবলিক আইপি অ্যাড্রেসের সাথে মিলে যায়।
    অ্যান্ড্রয়েড অ্যাপস

    আপনি যে প্রতিটি অ্যান্ড্রয়েড অ্যাপ্লিকেশনকে অনুমোদন করতে চান, সেগুলোর অ্যান্ড্রয়েড প্যাকেজ নেম ( AndroidManifest.xml ফাইল থেকে) এবং SHA-1 সাইনিং সার্টিফিকেট ফিঙ্গারপ্রিন্ট যোগ করুন।

    1. অ্যান্ড্রয়েড অ্যাপ নির্বাচন করুন।
    2. যোগ করুন -এ ক্লিক করুন
    3. আপনার প্যাকেজের নাম এবং SHA-1 সার্টিফিকেট ফিঙ্গারপ্রিন্ট লিখুন। উদাহরণস্বরূপ:
      com.example.android.mapexample
      BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:91:AF:A1:66:6E:44:5D:75
    4. সংরক্ষণ করুন- এ ক্লিক করুন।

    সার্টিফিকেট দুই প্রকারের হয়:

    • ডিবাগ সার্টিফিকেট : এই ধরনের সার্টিফিকেট শুধুমাত্র সেইসব অ্যাপের জন্য ব্যবহার করুন যেগুলো আপনি পরীক্ষা করছেন এবং অন্যান্য নন-প্রোডাকশন কোডের জন্য। ডিবাগ সার্টিফিকেট দিয়ে স্বাক্ষরিত কোনো অ্যাপ প্রকাশ করার চেষ্টা করবেন না। আপনি যখন একটি ডিবাগ বিল্ড চালান, তখন অ্যান্ড্রয়েড এসডিকে টুলস স্বয়ংক্রিয়ভাবে এই সার্টিফিকেটটি তৈরি করে।
    • রিলিজ সার্টিফিকেট : যখন আপনি কোনো অ্যাপ স্টোরে আপনার অ্যাপ রিলিজ করার জন্য প্রস্তুত হবেন, তখন এই সার্টিফিকেটটি ব্যবহার করুন। আপনি যখন একটি রিলিজ বিল্ড চালান, তখন অ্যান্ড্রয়েড এসডিকে টুলস এই সার্টিফিকেটটি তৈরি করে।

    অ্যান্ড্রয়েড অ্যাপ্লিকেশন সাইনিং এবং সার্টিফিকেট সম্পর্কে আরও তথ্যের জন্য, "আপনার অ্যাপে সাইন করুন" নির্দেশিকাটি দেখুন।

    আপনি যদি প্লে অ্যাপ সাইনিং (Play App Signing) ব্যবহার করেন, তাহলে সাইনিং সার্টিফিকেট ফিঙ্গারপ্রিন্ট (signing certificate fingerprint) পাওয়ার জন্য ‘এপিআই প্রোভাইডারদের সাথে কাজ করা’ (Working with API Providers ) দেখুন। আপনি যদি নিজের সাইনিং কী (signing key) পরিচালনা করেন, তাহলে ‘আপনার অ্যাপ্লিকেশন স্ব-স্বাক্ষর করা’ (Self-signing your application) দেখুন অথবা আপনার বিল্ড এনভায়রনমেন্টের (build environment) নির্দেশাবলী দেখুন।

    iOS অ্যাপস

    আপনি যে প্রতিটি iOS অ্যাপ্লিকেশনকে অনুমোদন করতে চান, তার বান্ডেল আইডেন্টিফায়ার যোগ করুন।

    1. iOS অ্যাপগুলো নির্বাচন করুন।
    2. যোগ করুন -এ ক্লিক করুন
    3. ঐ আইডিযুক্ত iOS অ্যাপ থেকে অনুরোধ গ্রহণ করতে বান্ডেল আইডিটি যোগ করুন।
    4. সংরক্ষণ করুন- এ ক্লিক করুন।

    অ্যাপ্লিকেশন সীমাবদ্ধতার সুপারিশের জন্য, প্রস্তাবিত অ্যাপ্লিকেশন সীমাবদ্ধতা দেখুন।

  5. সংরক্ষণ নির্বাচন করুন।

একটি API কী-এর জন্য API বিধিনিষেধ সেট করুন

  1. Google Cloud কনসোলের Google Maps Platform Credentials পৃষ্ঠাটি খুলুন।

  2. যে এপিআই কী-টি আপনি সীমাবদ্ধ করতে চান, সেটি নির্বাচন করুন।

  3. এপিআই কী সম্পাদনা পৃষ্ঠায় , এপিআই বিধিনিষেধের অধীনে:

    • সীমাবদ্ধ কী নির্বাচন করুন।

    • 'Select APIs' খুলুন এবং আপনার অ্যাপ্লিকেশনটি এপিআই কী (API key) ব্যবহার করে যে এপিআই বা এসডিকে (SDK) গুলো অ্যাক্সেস করতে চায়, সেগুলো নির্বাচন করুন।

    যদি কোনো API বা SDK তালিকাভুক্ত না থাকে, তাহলে আপনাকে সেটি সক্রিয় করতে হবে। বিস্তারিত জানতে, “এক বা একাধিক API বা SDK সক্রিয় করা” দেখুন।

    এপিআই কী সম্পাদনা পৃষ্ঠায় একটি এপিআই সীমাবদ্ধ করুন

  4. সংরক্ষণ নির্বাচন করুন।

    এই ধাপের পর বিধিনিষেধটি এপিআই কী সংজ্ঞার অংশ হয়ে যায়। নিশ্চিত করুন যে আপনি যথাযথ বিবরণ প্রদান করেছেন এবং আপনার এপিআই কী বিধিনিষেধ সংরক্ষণ করতে 'Save' নির্বাচন করুন। আরও তথ্যের জন্য, আপনার আগ্রহের নির্দিষ্ট এপিআই বা এসডিকে-এর ডকুমেন্টেশনে থাকা 'Get an API Key' গাইডটি দেখুন।

প্রস্তাবিত এপিআই সীমাবদ্ধতাগুলির জন্য, প্রস্তাবিত এপিআই সীমাবদ্ধতাগুলি দেখুন।

আপনার এপিআই কী-এর ব্যবহার যাচাই করুন

এপিআই কী তৈরি করার পরে যদি আপনি সেটির উপর বিধিনিষেধ আরোপ করতে চান, অথবা কোনো কী কোন কোন এপিআই ব্যবহার করছে তা দেখে সেটিকে সীমাবদ্ধ করতে চান, তাহলে আপনাকে আপনার এপিআই কী-এর ব্যবহার পরীক্ষা করতে হবে। এই ধাপগুলো আপনাকে দেখাবে যে একটি এপিআই কী কোন কোন পরিষেবা এবং এপিআই মেথডে ব্যবহৃত হচ্ছে। যদি আপনি গুগল ম্যাপস প্ল্যাটফর্ম পরিষেবার বাইরে কোনো ব্যবহার দেখতে পান, তাহলে অনাকাঙ্ক্ষিত ব্যবহার এড়ানোর জন্য আরও বিধিনিষেধ যোগ করার প্রয়োজন আছে কিনা তা নির্ধারণ করতে তদন্ত করুন। আপনার এপিআই কী-তে কোন এপিআই এবং অ্যাপ্লিকেশন বিধিনিষেধ প্রয়োগ করতে হবে তা নির্ধারণে সাহায্য করার জন্য আপনি গুগল ম্যাপস প্ল্যাটফর্ম ক্লাউড কনসোল মেট্রিক্স এক্সপ্লোরার ব্যবহার করতে পারেন:

আপনার এপিআই কী ব্যবহার করে এমন এপিআইগুলো নির্ধারণ করুন।

নিম্নলিখিত মেট্রিক্স রিপোর্টগুলো আপনাকে নির্ধারণ করতে সাহায্য করবে যে কোন এপিআইগুলো আপনার এপিআই কী ব্যবহার করছে। নিম্নলিখিত কাজগুলো করার জন্য এই রিপোর্টগুলো ব্যবহার করুন:

  • আপনার এপিআই কীগুলো কীভাবে ব্যবহার করা হয় তা দেখুন
  • অপ্রত্যাশিত ব্যবহার চিহ্নিত করুন
  • একটি অব্যবহৃত কী নিরাপদে মুছে ফেলা যাবে কিনা তা যাচাই করতে সাহায্য নিন। একটি API কী মুছে ফেলার বিষয়ে তথ্যের জন্য, ‘অব্যবহৃত API কী মুছুন’ দেখুন।

এপিআই বিধিনিষেধ প্রয়োগ করার সময়, অনুমোদনের জন্য এপিআই-এর একটি তালিকা তৈরি করতে, অথবা স্বয়ংক্রিয়ভাবে তৈরি এপিআই কী বিধিনিষেধের সুপারিশগুলো যাচাই করতে এই রিপোর্টগুলো ব্যবহার করুন। প্রস্তাবিত বিধিনিষেধ সম্পর্কে আরও তথ্যের জন্য, ‘প্রস্তাবিত বিধিনিষেধ প্রয়োগ করুন ’ দেখুন। মেট্রিক্স এক্সপ্লোরার ব্যবহার সম্পর্কে আরও তথ্যের জন্য, ‘মেট্রিক্স এক্সপ্লোরার দিয়ে চার্ট তৈরি করুন ’ দেখুন।

  1. গুগল ক্লাউড কনসোলের মেট্রিক্স এক্সপ্লোরারে যান

  2. সাইন ইন করুন এবং যে এপিআই কীগুলো আপনি যাচাই করতে চান, সেটির জন্য প্রজেক্টটি নির্বাচন করুন।

  3. আপনার এপিআই-এর ধরন অনুযায়ী মেট্রিক্স এক্সপ্লোরার পেজে যান:

    • Maps Embed API ছাড়া অন্য যেকোনো API ব্যবহার করে API কী পেতে হলে : Metrics explorer পেজে যান।

    • Maps Embed API ব্যবহার করে API কী-গুলির জন্য : Metrics Explorer- এ যান।

  4. প্রতিটি এপিআই কী পরীক্ষা করুন:

    1. ফিল্টার যোগ করুন নির্বাচন করুন।

    2. credential_id লেবেলটি নির্বাচন করুন।

    3. আপনি যে কী-টি পরীক্ষা করতে চান, তার সাথে সঙ্গতিপূর্ণ মানটি নির্বাচন করুন।

    4. এই এপিআই কী-টি কোন কোন এপিআই-এর জন্য ব্যবহার করা হচ্ছে তা লক্ষ্য করুন, এবং এর ব্যবহার প্রত্যাশিত কিনা তা নিশ্চিত করুন।

    5. কাজটি সম্পন্ন হলে, অতিরিক্ত ফিল্টারটি মুছে ফেলার জন্য সক্রিয় ফিল্টার লাইনের শেষে থাকা ‘Remove filter বিকল্পটি নির্বাচন করুন।

  5. বাকি কীগুলোর জন্যও একই প্রক্রিয়া পুনরাবৃত্তি করুন।

  6. আপনার এপিআই কীগুলো শুধুমাত্র ব্যবহৃত এপিআইগুলোর জন্য সীমাবদ্ধ করুন।

  7. যদি আপনি অননুমোদিত ব্যবহার দেখতে পান, তাহলে ‘এপিআই কী-এর অননুমোদিত ব্যবহার মোকাবিলা’ দেখুন।

মেট্রিক্স এক্সপ্লোরার ব্যবহার করে সঠিক ধরনের অ্যাপ্লিকেশন সীমাবদ্ধতা নির্বাচন করুন।

আপনার এপিআই কী-টি যেন শুধুমাত্র গুগল ম্যাপস প্ল্যাটফর্ম পরিষেবাগুলোর জন্যই ব্যবহৃত হয়, তা যাচাই করে প্রয়োজনীয় পদক্ষেপ নেওয়ার পর, এপিআই কী-টিতে সঠিক অ্যাপ্লিকেশন সীমাবদ্ধতা রয়েছে কিনা, তাও যাচাই করে নিন।

আপনার API কী-তে যদি প্রস্তাবিত API কী সীমাবদ্ধতা থাকে, তবে সেগুলি প্রয়োগ করুন। আরও তথ্যের জন্য, “প্রস্তাবিত API কী সীমাবদ্ধতা প্রয়োগ করুন ” দেখুন।

যদি আপনার API কী-তে কোনো বিধিনিষেধের সুপারিশ না থাকে, তাহলে মেট্রিক্স এক্সপ্লোরার ব্যবহার করে রিপোর্ট করা platform_type উপর ভিত্তি করে কোন ধরনের অ্যাপ্লিকেশন বিধিনিষেধ প্রয়োগ করতে হবে তা নির্ধারণ করুন:

  1. গুগল ক্লাউড কনসোলের মেট্রিক্স এক্সপ্লোরারে যান

  2. সাইন ইন করুন এবং যে এপিআইগুলো আপনি পরীক্ষা করতে চান, সেগুলোর জন্য প্রজেক্টটি নির্বাচন করুন।

  3. এই মেট্রিক্স এক্সপ্লোরার পৃষ্ঠায় যান: মেট্রিক্স এক্সপ্লোরার

  4. প্রতিটি এপিআই কী পরীক্ষা করুন:

    1. ফিল্টার যোগ করুন নির্বাচন করুন।

    2. credential_id লেবেলটি নির্বাচন করুন।

    3. আপনি যে কী-টি পরীক্ষা করতে চান, তার সাথে সঙ্গতিপূর্ণ মানটি নির্বাচন করুন।

    4. কাজটি সম্পন্ন হলে, অতিরিক্ত ফিল্টারটি মুছে ফেলার জন্য সক্রিয় ফিল্টার লাইনের শেষে থাকা ‘Remove filter বিকল্পটি নির্বাচন করুন।

  5. বাকি কীগুলোর জন্যও একই প্রক্রিয়া পুনরাবৃত্তি করুন।

  6. একবার আপনার API কীগুলির জন্য প্ল্যাটফর্মের ধরন পেয়ে গেলে, সেই platform_type জন্য অ্যাপ্লিকেশন সীমাবদ্ধতা প্রয়োগ করুন:

    PLATFORM_TYPE_JS : কী-টির উপর ওয়েবসাইটের সীমাবদ্ধতা প্রয়োগ করুন।

    PLATFORM_TYPE_ANDROID : কী-টির উপর অ্যান্ড্রয়েড অ্যাপ্লিকেশন সীমাবদ্ধতা প্রয়োগ করুন।

    PLATFORM_TYPE_IOS : কী-টির উপর iOS অ্যাপ্লিকেশন সীমাবদ্ধতা প্রয়োগ করুন।

    PLATFORM_TYPE_WEBSERVICE : এটিকে সঠিকভাবে সীমাবদ্ধ করার জন্য, আপনাকে কী-এর উপর আইপি অ্যাড্রেস সীমাবদ্ধতার উপর নির্ভর করতে হতে পারে

    Maps Static API এবং Street View Static API সংক্রান্ত সুপারিশের জন্য, Protect Static Web API usage দেখুন।

    Maps Embed API সংক্রান্ত সুপারিশের জন্য, Maps Embed API যুক্ত ওয়েবসাইটসমূহ দেখুন।

    আমার এপিআই কী একাধিক প্ল্যাটফর্ম টাইপ ব্যবহার করছে: শুধুমাত্র একটি এপিআই কী দিয়ে আপনার ট্র্যাফিক সঠিকভাবে সুরক্ষিত করা সম্ভব নয়। আপনাকে একাধিক এপিআই কী-তে মাইগ্রেট করতে হবে। আরও তথ্যের জন্য, ‘একাধিক এপিআই কী-তে মাইগ্রেট করুন’ দেখুন।

প্রতিটি অ্যাপের জন্য আলাদা এপিআই কী ব্যবহার করুন

এই পদ্ধতি প্রতিটি কী-এর পরিধি সীমিত করে। যদি একটি এপিআই কী-এর নিরাপত্তা বিঘ্নিত হয়, তবে আপনি আপনার অন্যান্য এপিআই কী আপডেট না করেই ক্ষতিগ্রস্ত কী-টি মুছে ফেলতে বা পরিবর্তন করতে পারেন। আপনি প্রতি প্রজেক্টে সর্বোচ্চ ৩০০টি এপিআই কী তৈরি করতে পারেন। আরও তথ্যের জন্য, এপিআই কী-এর সীমাবদ্ধতা দেখুন।

নিরাপত্তার জন্য প্রতি অ্যাপ্লিকেশনে একটি এপিআই কী ব্যবহার করা আদর্শ হলেও, আপনি একাধিক অ্যাপে সীমাবদ্ধ কী ব্যবহার করতে পারেন, যদি সেগুলোতে একই ধরনের অ্যাপ্লিকেশন সীমাবদ্ধতা ব্যবহার করা হয়।

প্রস্তাবিত এপিআই কী সীমাবদ্ধতা প্রয়োগ করুন

কিছু প্রোজেক্ট মালিক, সম্পাদক এবং এপিআই কী প্রশাসকদের ক্ষেত্রে, গুগল ক্লাউড কনসোল তাদের গুগল ম্যাপস প্ল্যাটফর্মের ব্যবহার ও কার্যকলাপের ওপর ভিত্তি করে অবাধ এপিআই কীগুলোর পরিবর্তে নির্দিষ্ট কিছু সীমাবদ্ধতার পরামর্শ দেয়।

উপলব্ধ থাকলে, সুপারিশগুলো গুগল ম্যাপস প্ল্যাটফর্ম ক্রেডেনশিয়ালস পৃষ্ঠায় আগে থেকে পূরণ করা বিকল্প হিসেবে প্রদর্শিত হয়।

স্বয়ংক্রিয় সুপারিশ দ্বারা সমর্থিত গুগল ম্যাপস প্ল্যাটফর্ম এপিআই এবং এসডিকে

  • ম্যাপস জাভাস্ক্রিপ্ট এপিআই, যার মধ্যে রয়েছে ডিরেকশনস সার্ভিস (লেগ্যাসি), ডিসটেন্স ম্যাট্রিক্স সার্ভিস (লেগ্যাসি), এলিভেশন সার্ভিস, জিওকোডিং সার্ভিস, প্লেস ক্লাস, প্লেস অটোকমপ্লিট উইজেট (নিউ), প্লেস অটোকমপ্লিট ডেটা এপিআই, প্লেসেস লাইব্রেরি, প্লেসেস সার্ভিস, প্লেস অটোকমপ্লিট উইজেট, এবং প্লেসেস ইউআই কিট।

  • ম্যাপস স্ট্যাটিক এপিআই এবং স্ট্রিট ভিউ স্ট্যাটিক এপিআই

  • মানচিত্র এমবেড এপিআই

  • অ্যান্ড্রয়েডের জন্য ম্যাপস এসডিকে, অ্যান্ড্রয়েডের জন্য নেভিগেশন এসডিকে, অ্যান্ড্রয়েডের জন্য প্লেসেস এসডিকে, এবং অ্যান্ড্রয়েডে প্লেসেস ইউআই কিট

  • iOS-এর জন্য Maps SDK, iOS-এর জন্য Navigation SDK, iOS-এর জন্য Places SDK, iOS-এর জন্য Places Swift SDK, এবং iOS-এ Places UI Kit।

যে কারণে আপনি কোনো সুপারিশ দেখতে নাও পেতে পারেন, অথবা একটি অসম্পূর্ণ সুপারিশ দেখতে পারেন।

কোনো সুপারিশ না দেখার কারণ

  • আপনি এপিআই কী-টি গুগল ম্যাপস প্ল্যাটফর্ম পরিষেবা ছাড়া অন্য কোনো পরিষেবাতে, অথবা এমন ম্যাপস প্ল্যাটফর্ম পরিষেবাতে ব্যবহার করছেন যা স্বয়ংক্রিয় সুপারিশের আওতায় এখনো সমর্থিত নয়

    অন্যান্য পরিষেবাগুলিতে এর ব্যবহার দেখতে পেলে, প্রথমে নিম্নলিখিতগুলি না করে সুপারিশটি প্রয়োগ করবেন না :

    1. গুগল ক্লাউড কনসোল মেট্রিক্স এক্সপ্লোরারে আপনি যে এপিআই ব্যবহার দেখতে পাচ্ছেন, তা বৈধ কিনা তা যাচাই করুন।

    2. অনুমোদনের জন্য নির্ধারিত এপিআই-এর তালিকায় অনুপস্থিত পরিষেবাগুলি ম্যানুয়ালি যোগ করুন

    3. এপিআই তালিকায় যুক্ত করা পরিষেবাগুলির জন্য অনুপস্থিত অ্যাপ্লিকেশন বিধিনিষেধ ম্যানুয়ালি যোগ করুন । যদি আপনার যোগ করা অন্য পরিষেবাগুলির জন্য ভিন্ন ধরনের অ্যাপ্লিকেশন বিধিনিষেধের প্রয়োজন হয়, তাহলে ‘একাধিক এপিআই কী-তে মাইগ্রেট করুন’ দেখুন।

  • আপনার এপিআই কী ক্লায়েন্ট-সাইড এসডিকে বা এপিআই-তে ব্যবহার করা হয় না।

  • আপনি এপিআই কী-টি এমন একটি স্বল্প-ব্যবহারের অ্যাপ বা ওয়েবসাইটে ব্যবহার করেন, যা গত ৬০ দিনে ব্যবহৃত হয়নি।

  • আপনি খুব সম্প্রতি একটি নতুন কী তৈরি করেছেন, অথবা একটি নতুন অ্যাপে বিদ্যমান কোনো কী স্থাপন করেছেন। যদি এমনটি হয়ে থাকে, তাহলে সুপারিশগুলো আপডেট হওয়ার জন্য আরও কয়েক দিন অপেক্ষা করুন।

  • আপনি একাধিক অ্যাপ্লিকেশনে এপিআই কী ব্যবহার করছেন, যেগুলোর জন্য পরস্পরবিরোধী ধরনের অ্যাপ্লিকেশন বিধিনিষেধের প্রয়োজন হবে, অথবা আপনি অনেকগুলো ভিন্ন ভিন্ন অ্যাপ বা ওয়েবসাইটে একই এপিআই কী ব্যবহার করছেন। উভয় ক্ষেত্রেই, সর্বোত্তম পন্থা হিসেবে, আপনার একাধিক কী-তে স্থানান্তরিত হওয়া উচিত। আরও বিস্তারিত জানতে, ‘একাধিক এপিআই কী-তে স্থানান্তরিত হন’ দেখুন।

অসম্পূর্ণ সুপারিশ দেখার কারণ

  • আপনি এপিআই কী-টি এমন একটি স্বল্প-ব্যবহারের অ্যাপ বা ওয়েবসাইটে ব্যবহার করেন, যা গত ৬০ দিনে ব্যবহৃত হয়নি।

  • আপনি খুব সম্প্রতি একটি নতুন এপিআই বা পরিষেবাতে একটি বিদ্যমান কী ব্যবহার করা শুরু করেছেন, এবং স্বয়ংক্রিয় এপিআই কী সীমাবদ্ধতার সুপারিশ পাইপলাইনটি এখনও হালনাগাদ করা ব্যবহারের মেট্রিকগুলো প্রক্রিয়া করেনি। ব্যবহারের মেট্রিকগুলোর প্রচারে কয়েক দিন সময় লাগতে পারে।

    অন্যান্য পরিষেবাগুলিতে এর ব্যবহার দেখতে পেলে, প্রথমে নিম্নলিখিতগুলি না করে সুপারিশটি প্রয়োগ করবেন না :

    1. গুগল ক্লাউড কনসোল মেট্রিক্স এক্সপ্লোরারে আপনি যে এপিআই ব্যবহার দেখতে পাচ্ছেন, তা বৈধ কিনা তা যাচাই করুন।

    2. অনুমোদনের জন্য নির্ধারিত এপিআই-এর তালিকায় অনুপস্থিত পরিষেবাগুলি ম্যানুয়ালি যোগ করুন

    3. এপিআই তালিকায় যুক্ত করা পরিষেবাগুলির জন্য অনুপস্থিত অ্যাপ্লিকেশন বিধিনিষেধ ম্যানুয়ালি যোগ করুন । যদি আপনার যোগ করা অন্য পরিষেবাগুলির জন্য ভিন্ন ধরনের অ্যাপ্লিকেশন বিধিনিষেধের প্রয়োজন হয়, তাহলে ‘একাধিক এপিআই কী-তে মাইগ্রেট করুন’ দেখুন।

    4. যদি না আপনার কোনো কী জরুরিভাবে সীমাবদ্ধ করার প্রয়োজন হয়, যেমন অননুমোদিত ব্যবহারের কারণে, তাহলে সুপারিশগুলো হালনাগাদ হওয়ার জন্য আপনি এক বা দুই দিন অপেক্ষা করতে পারেন

যেসব কারণে আপনি এমন সুপারিশ দেখতে পারেন যা চার্টে দৃশ্যমান নয়

  • আপনার অ্যাপ বা ওয়েবসাইট থেকে খুব অল্প সময়ের জন্য ট্র্যাফিক এসেছে। এক্ষেত্রে, চার্ট ভিউ থেকে টেবিল অথবা উভয়ই প্রদর্শন করুন, কারণ এর ব্যবহার লিজেন্ডে তখনও দেখা যায়। আরও তথ্যের জন্য, চার্টের সম্পূর্ণ লিজেন্ড টগল করা দেখুন।

  • আপনার ট্র্যাফিক Maps Embed API থেকে আসছে। নির্দেশাবলীর জন্য, “আপনার API কী ব্যবহারকারী API-গুলো নির্ধারণ করুন” দেখুন।

  • অ্যাপ বা ওয়েবসাইট থেকে আসা ট্র্যাফিকটি গুগল ক্লাউড কনসোল মেট্রিক্স এক্সপ্লোরারে উপলব্ধ তারিখের পরিসরের বাইরে।

  1. Google Cloud কনসোলের Google Maps Platform Credentials পৃষ্ঠাটি খুলুন।

  2. উপলব্ধ থাকলে, ‘প্রস্তাবিত বিধিনিষেধ প্রয়োগ করুন ’ নির্বাচন করুন।

    সুপারিশকৃত বিধিনিষেধ প্রয়োগ করুন

  3. এপিআই কী কোন পরিষেবাগুলিতে ব্যবহৃত হচ্ছে তা যাচাই করতে ‘চেক এপিআই ইউসেজ’ নির্বাচন করুন। যদি আপনি গুগল ম্যাপস প্ল্যাটফর্ম পরিষেবাগুলি ছাড়া অন্য কিছু দেখতে পান, তাহলে উপরে দেওয়া সুপারিশকৃত ধাপগুলি ম্যানুয়ালি পর্যালোচনা করার জন্য একটু থামুন‘অ্যাপ্লাই রেকমেন্ডেড এপিআই কী রেস্ট্রিকশনস’ বিভাগের শুরুতে সমস্যা সমাধানের ধাপগুলি দেখুন।

  4. পুনরায় যাচাই করে নিন যে আগে থেকে পূরণ করা বিধিনিষেধগুলো সেইসব ওয়েবসাইট এবং অ্যাপের সাথে মেলে কিনা, যেখানে আপনি আপনার এপিআই কী ব্যবহার করতে চান।

    সর্বোত্তম অনুশীলন : আপনার পরিষেবার সাথে সম্পর্কহীন যেকোনো অ্যাপ্লিকেশন বা এপিআই সীমাবদ্ধতা নথিভুক্ত করুন এবং অপসারণ করুন। যদি কোনো অপ্রত্যাশিত নির্ভরতার কারণে কিছু ভেঙে যায়, তাহলে আপনি প্রয়োজনীয় অ্যাপ বা এপিআইগুলো আবার যোগ করতে পারবেন।

    • যদি আপনি বুঝতে পারেন যে আপনার সুপারিশে কোনো অ্যাপ, ওয়েবসাইট বা এপিআই স্পষ্টভাবে অনুপস্থিত, তবে সেটি ম্যানুয়ালি যোগ করুন অথবা সুপারিশটি আপডেট হওয়ার জন্য কয়েক দিন অপেক্ষা করুন।

    • আপনার প্রস্তাবিত সুপারিশের বিষয়ে আরও সাহায্যের প্রয়োজন হলে, সাপোর্টে যোগাযোগ করুন

  5. প্রয়োগ করুন নির্বাচন করুন।

সুপারিশপত্র জমা দেওয়ার পর আপনার আবেদনপত্র প্রত্যাখ্যাত হলে কী করবেন

যদি আপনি লক্ষ্য করেন যে কোনো বিধিনিষেধ প্রয়োগ করার পরেও একটি অ্যাপ বা ওয়েবসাইট প্রত্যাখ্যাত হচ্ছে, তাহলে API প্রতিক্রিয়ার ত্রুটির বার্তায় প্রয়োজনীয় অ্যাপ্লিকেশন বিধিনিষেধটি খুঁজুন।

ক্লায়েন্ট-সাইড SDK এবং API

ব্রাউজার এবং ওয়েবভিউ ভিত্তিক অ্যাপস

আধুনিক ব্রাউজারগুলো সাধারণত গোপনীয়তার কারণে ক্রস-অরিজিন অনুরোধে Referer হেডারটি মুছে ফেলে এবং প্রায়শই এটিকে শুধু ' Origin পর্যন্ত সংক্ষিপ্ত করে। তবে, এর সঠিক আচরণ হোস্টিং সাইটের প্রয়োগ করা referrer-policy উপর নির্ভর করে এবং ব্যবহারকারীর ব্রাউজার ও সংস্করণের উপর ভিত্তি করেও ভিন্ন হতে পারে।

যেসব ওয়েব অ্যাপ্লিকেশন কন্টেন্ট লোড করার জন্য অপেক বা লোকাল ইউআরআই স্কিম ব্যবহার করে, সেগুলোতে সাধারণত রেন্ডারিং ব্রাউজার বা ওয়েবভিউ যেকোনো বহির্গামী কল থেকে Referer হেডারটি সম্পূর্ণরূপে গোপন করে রাখে, যার ফলে ওয়েবসাইটের সীমাবদ্ধতাযুক্ত এপিআই কী ব্যবহার করে করা অনুরোধ ব্যর্থ হতে পারে।

আরও নির্দেশনার জন্য, “আপনার ব্রাউজার ভিত্তিক অ্যাপগুলি একটি সার্ভারে হোস্ট করুন” দেখুন।

ব্রাউজার এবং ওয়েবভিউ ভিত্তিক অ্যাপের জন্য সমস্যা সমাধানের নির্দেশাবলী:

  • Maps JavaScript API-এর ক্ষেত্রে, আপনার অ্যাপ্লিকেশনটিকে কীভাবে অনুমোদন করবেন সে সম্পর্কে বিস্তারিত জানতে ব্রাউজারের ডিবাগ কনসোল দেখুন।

    এক্সোটিক ইউআরআই স্কিমগুলো আংশিকভাবে সমর্থিত। যদি আপনার অ্যাপ্লিকেশনের কিছু অংশ কোনো এক্সোটিক ইউআরআই স্কিমে কাজ না করে, এমনকি প্রয়োজনীয় রেফারারকে অনুমোদন দেওয়ার পরেও, তাহলে সম্ভবত আপনাকে আপনার অ্যাপ্লিকেশনটি দূরবর্তী কোনো সার্ভারে হোস্ট করতে হবে এবং HTTPS (বা HTTP) এর মাধ্যমে লোড করতে হবে।

    অস্বাভাবিক URI স্কিম সম্পর্কে সাহায্যের প্রয়োজন হলে, সাপোর্টে যোগাযোগ করুন

  • অন্যান্য ম্যাপস প্ল্যাটফর্ম এপিআইগুলো সাধারণত এপিআই ত্রুটির প্রতিক্রিয়ায় অনুমোদনের জন্য প্রয়োজনীয় রেফারারটি ফেরত দেবে, যদি ক্লায়েন্ট প্রত্যাখ্যাত অনুরোধের সাথে এই তথ্যটি পাঠিয়ে থাকে।

    অপরিচিত URI স্কিম সমর্থিত নয়

অ্যান্ড্রয়েড অ্যাপস

অ্যান্ড্রয়েড ডিবাগ ব্রিজ (adb) বা লগক্যাট ব্যবহার করুন

iOS অ্যাপস

লগ বার্তা দেখা দেখুন

অ্যাপগুলি সরাসরি ওয়েব পরিষেবাগুলিকে কল করছে

যেসব অ্যাপ্লিকেশন ক্লায়েন্ট-সাইড গুগল ম্যাপস প্ল্যাটফর্ম SDK ছাড়াই সরাসরি ম্যাপস প্ল্যাটফর্ম HTTPS REST API বা gRPC এন্ডপয়েন্ট কল করে, তাদের জন্য নিচে দেখুন:

অ্যান্ড্রয়েড এবং আইওএস অ্যাপ

যদি আপনার অ্যান্ড্রয়েড বা আইওএস অ্যাপ্লিকেশন উপলব্ধ কোনো গুগল ম্যাপস প্ল্যাটফর্ম ক্লায়েন্ট এসডিকে ব্যবহার না করে সরাসরি ম্যাপস প্ল্যাটফর্ম পরিষেবাগুলো কল করে, তাহলে আরও সমস্যা সমাধানের পরামর্শের জন্য 'অ্যান্ড্রয়েড অ্যাপস' এবং 'আইওএস অ্যাপস' দেখুন, এবং মোবাইল ব্যবহারের ক্ষেত্রে বর্তমান সেরা নিরাপত্তা অনুশীলনের জন্য 'নিরাপদ ক্লায়েন্ট-সাইড ওয়েব পরিষেবা কল' দেখুন।

যদি আপনার অ্যাপ ম্যাপস প্ল্যাটফর্ম এপিআই (Maps Platform API) এরর রেসপন্স লগ করে, তাহলে অথেনটিকেশন সংক্রান্ত সমস্যা সমাধানের জন্য ক্লায়েন্ট-সাইড এসডিকে (SDK)-এর জন্য দেওয়া উপরের নির্দেশাবলীও কার্যকর হতে পারে।

সার্ভার-সাইড অ্যাপস

এপিআই কী-এর উপর নির্ভরশীল সার্ভার-সাইড অ্যাপ্লিকেশনগুলোকে আইপি অ্যাড্রেস সীমাবদ্ধতার মাধ্যমে সবচেয়ে ভালোভাবে সুরক্ষিত করা হয়। যদি আপনি আপনার কী-তে আইপি অ্যাড্রেস সীমাবদ্ধতা প্রয়োগ করে থাকেন এবং আপনার পরিষেবাটি ম্যাপস প্ল্যাটফর্ম এপিআই-এর ত্রুটিপূর্ণ প্রতিক্রিয়া লগ করে, তবে আরও তথ্যের জন্য আপনার সিস্টেম লগ পরীক্ষা করুন। ত্রুটিপূর্ণ প্রতিক্রিয়াটিতে সেই সার্ভারের আইপি অ্যাড্রেসটি অন্তর্ভুক্ত থাকবে, যেটিকে আপনার অনুমোদন করতে হবে।

ব্রাউজার বা ওয়েবভিউ ভিত্তিক অ্যাপ

যদিও ম্যাপস স্ট্যাটিক এপিআই, স্ট্রিট ভিউ স্ট্যাটিক এপিআই এবং গুগল ম্যাপস প্ল্যাটফর্মের আরও সাম্প্রতিক এপিআইগুলোও রেফারার সীমাবদ্ধতা সমর্থন করবে, তবে মনে রাখবেন যে ওয়েব ব্রাউজার বা ওয়েবভিউগুলো সম্ভবত ক্রস-অরিজিন অনুরোধের জন্য Referer হেডারটিকে Origin সীমাবদ্ধ রাখবে এবং সম্ভবত এটি পাঠানো পুরোপুরি বাদ দেবে, যেমন—স্থানীয়ভাবে অ্যাক্সেস করা রিসোর্সের জন্য, অথবা HTTP বা HTTPS ছাড়া অন্য কোনো প্রোটোকলের মাধ্যমে পরিবেশিত রিসোর্সের জন্য।

যদি আপনি আপনার অ্যাপ্লিকেশনে ম্যাপস জাভাস্ক্রিপ্ট এপিআই (Maps JavaScript API) ব্যবহার করতে না পারেন এবং ওয়েবসাইটের সীমাবদ্ধতাও কাজ না করে, তাহলে আপনার ব্রাউজার-ভিত্তিক ক্লায়েন্ট-সাইড অ্যাপ্লিকেশন থেকে নিরাপদে ম্যাপস প্ল্যাটফর্ম (Maps Platform) ওয়েব সার্ভিস কল করার পদ্ধতি জানতে “নিরাপদ ক্লায়েন্ট-সাইড ওয়েব সার্ভিস কল” (Secure client-side web service calls) দেখুন।

এপিআই সীমাবদ্ধতা পরীক্ষা করার জন্য টিপস

আপনার প্রয়োজনীয় API সীমাবদ্ধতাগুলো যাচাই করতে, “আপনার API কী ব্যবহারকারী API-গুলো নির্ধারণ করুন” দেখুন।

কোন বিধিনিষেধগুলো প্রয়োগ করতে হবে তা যদি আপনি নির্ধারণ করতে না পারেন:

  1. ভবিষ্যৎ ব্যবহারের জন্য বর্তমান বিধিনিষেধগুলো নথিভুক্ত করুন।
  2. সমস্যাটি তদন্ত করার সময় সেগুলোকে সাময়িকভাবে সরিয়ে ফেলুন। 'আপনার এপিআই কী ব্যবহার পরীক্ষা করুন ' অংশের ধাপগুলো অনুসরণ করে আপনি সময়ের সাথে সাথে আপনার ব্যবহার পরীক্ষা করতে পারেন।
  3. প্রয়োজনে সাপোর্টে যোগাযোগ করুন

অব্যবহৃত API কীগুলি মুছে ফেলুন

একটি API কী মুছে ফেলার আগে, নিশ্চিত হয়ে নিন যে এটি প্রোডাকশনে ব্যবহৃত হচ্ছে না। যদি কোনো সফল ট্র্যাফিক না থাকে, তাহলে কী-টি মুছে ফেলা সম্ভবত নিরাপদ। আরও তথ্যের জন্য, আপনার API কী-এর ব্যবহার যাচাই করুন দেখুন।

একটি API কী মুছে ফেলতে:

  1. Google Cloud কনসোলের Google Maps Platform Credentials পৃষ্ঠাটি খুলুন।

  2. যে এপিআই কী-টি আপনি মুছতে চান, সেটি নির্বাচন করুন।

  3. পৃষ্ঠার উপরের দিকে থাকা ডিলিট বাটনটি সিলেক্ট করুন।

  4. ক্রেডেনশিয়াল মুছুন পৃষ্ঠায়, মুছুন নির্বাচন করুন।

    একটি এপিআই কী মুছে ফেলার প্রক্রিয়াটি কার্যকর হতে কয়েক মিনিট সময় লাগে। এই প্রক্রিয়াটি সম্পন্ন হওয়ার পর, মুছে ফেলা এপিআই কী ব্যবহার করে করা যেকোনো ট্র্যাফিক প্রত্যাখ্যান করা হয়।

এপিআই কী ঘোরানোর সময় সতর্ক থাকুন।

একটি এপিআই কী পরিবর্তন করলে একটি নতুন কী তৈরি হয়, যেটিতে পুরোনো কী-এর সমস্ত সীমাবদ্ধতা থাকে। এই নির্দিষ্ট সময়কালে, পুরোনো এবং নতুন উভয় কী-ই গৃহীত হয়, যা আপনাকে আপনার অ্যাপগুলোকে নতুন কী ব্যবহার করার জন্য স্থানান্তরিত করার সুযোগ দেয়।

একটি API কী ঘোরানোর আগে :

  • প্রথমে "আপনার API কীগুলি সীমাবদ্ধ করুন" অংশে বর্ণিত পদ্ধতি অনুসারে আপনার API কীগুলি সীমাবদ্ধ করার চেষ্টা করুন।

  • যদি পরস্পরবিরোধী অ্যাপ্লিকেশন বিধিনিষেধের ধরনের কারণে আপনার API কী সীমাবদ্ধ করা সম্ভব না হয়, তাহলে "একাধিক API কী-তে মাইগ্রেট করুন" অংশে বর্ণিত পদ্ধতি অনুযায়ী একাধিক নতুন (সীমাবদ্ধ) কী-তে মাইগ্রেট করুন। মাইগ্রেট করার মাধ্যমে আপনি নতুন API কী-গুলোর মাইগ্রেশন এবং রোল আউট টাইমলাইন নিয়ন্ত্রণ করতে পারবেন।

যদি পূর্ববর্তী পরামর্শগুলো সম্ভব না হয় , এবং অননুমোদিত ব্যবহার রোধ করতে আপনাকে অবশ্যই আপনার API কী পরিবর্তন করতে হয়, তাহলে এই পদক্ষেপগুলো অনুসরণ করুন:

  1. Google Cloud কনসোলের Google Maps Platform Credentials পৃষ্ঠাটি খুলুন।

  2. যে এপিআই কী-টি আপনি ঘোরাতে চান, সেটি খুলুন।

  3. পৃষ্ঠার শীর্ষে, ‘Rotate key’ নির্বাচন করুন।

  4. ইচ্ছা হলে এপিআই কী-এর নাম পরিবর্তন করুন।

  5. তৈরি করুন নির্বাচন করুন।

  6. নতুন কী ব্যবহার করার জন্য আপনার অ্যাপ্লিকেশনগুলো আপডেট করুন।

আপনার অ্যাপ্লিকেশনগুলিকে নতুন কী ব্যবহার করার জন্য আপডেট করার পরে, নতুন এপিআই কী পৃষ্ঠার 'পূর্ববর্তী কী' বিভাগের অধীনে থাকা 'পূর্ববর্তী কী মুছুন' বোতামে ক্লিক করে পুরানো কীটি মুছে ফেলুন।

একাধিক এপিআই কী-তে স্থানান্তরিত করুন

একাধিক অ্যাপের জন্য একটি এপিআই কী ব্যবহার করার পরিবর্তে প্রতিটি অ্যাপের জন্য একটি একক অনন্য এপিআই কী ব্যবহার করতে, নিম্নলিখিতগুলি করুন:

  1. কোন অ্যাপগুলির নতুন কী প্রয়োজন তা শনাক্ত করুন :

    • ওয়েব অ্যাপগুলো আপডেট করা সবচেয়ে সহজ, কারণ এর সমস্ত কোড আপনার নিয়ন্ত্রণে থাকে। আপনার সমস্ত ওয়েব-ভিত্তিক অ্যাপের কী (key) আপডেট করার পরিকল্পনা করুন।
    • মোবাইল অ্যাপের ক্ষেত্রে বিষয়টি আরও কঠিন, কারণ নতুন কীগুলো ব্যবহার করার আগে আপনার গ্রাহকদের অবশ্যই তাদের অ্যাপ আপডেট করতে হবে।
  2. নতুন কী-গুলো তৈরি ও সীমাবদ্ধ করুন : একটি অ্যাপ্লিকেশন সীমাবদ্ধতা এবং অন্তত একটি এপিআই সীমাবদ্ধতা যোগ করুন। আরও তথ্যের জন্য, প্রস্তাবিত সর্বোত্তম অনুশীলনসমূহ দেখুন।

  3. আপনার অ্যাপগুলিতে নতুন কীগুলি যোগ করুন : মোবাইল অ্যাপের ক্ষেত্রে, এই প্রক্রিয়াটিতে কয়েক মাস সময় লাগতে পারে, যতক্ষণ না আপনার সমস্ত ব্যবহারকারী নতুন API কী সহ সর্বশেষ অ্যাপটিতে আপডেট করেন।

ক্লায়েন্ট-সাইড এবং সার্ভার-সাইড ব্যবহারকে আলাদা প্রজেক্টে ভাগ করুন

যদি আপনার সার্ভার-সাইড অ্যাপ্লিকেশন এবং ব্যবহারকারীর ডিভাইসে চালিত ক্লায়েন্ট-সাইড অ্যাপ্লিকেশন উভয় স্থান থেকেই গুগল ম্যাপস প্ল্যাটফর্ম পরিষেবা ব্যবহারের প্রয়োজন হয়, তবে গুগল আপনার ব্যবহারকে দুটি পৃথক প্রজেক্টে ভাগ করে নেওয়ার পরামর্শ দেয়।

এই পদ্ধতিটি আপনাকে আপনার ক্লায়েন্ট-সাইড প্রোজেক্টের বেশিরভাগ গুগল ম্যাপস প্ল্যাটফর্ম পরিষেবাগুলিতে মিনিট-ভিত্তিক ও ব্যবহারকারী-ভিত্তিক উপযুক্ত কোটা সীমা প্রয়োগ করার সুযোগ দেয়, যা একে অপরের উপর প্রভাব না ফেলে সকল ব্যবহারকারী যাতে আপনার প্রোজেক্টের সামগ্রিক কোটার ন্যায্য অংশ পায় তা নিশ্চিত করতে সাহায্য করে।

তবে, যেহেতু ব্যবহারকারী-ভিত্তিক কোটার সীমাবদ্ধতা ক্লায়েন্ট-সাইড এবং সার্ভার-সাইড উভয় অ্যাপ্লিকেশনকেই প্রভাবিত করে, তাই আপনার সার্ভার-সাইডের কাজগুলোর জন্যও যদি উচ্চ ব্যান্ডউইথের প্রয়োজন হয়, তবে এই বিশেষ ব্যবহারের জন্য একটি আলাদা প্রজেক্ট তৈরি করুন, যেখানে ব্যবহারকারী-ভিত্তিক কোটার সীমা বেশি থাকবে অথবা কোনো সীমাই থাকবে না।

অব্যবহৃত পরিষেবাগুলি নিষ্ক্রিয় করুন

কোনো প্রজেক্টে অব্যবহৃত সার্ভিস চালু রাখবেন না, কারণ এই অভ্যাসটি অপব্যবহারের ঝুঁকিপূর্ণ, বিশেষ করে যদি আপনি আপনার সমস্ত পাবলিক এপিআই কী সীমাবদ্ধ না করে থাকেন। সর্বোত্তম অনুশীলন হিসেবে, কোনো প্রজেক্টে একটি সার্ভিস কেবল তখনই চালু করুন যখন আপনার অ্যাপ্লিকেশনগুলোর জন্য এটির প্রয়োজন হয়।

কোনো কী-তে এপিআই বিধিনিষেধ যোগ করলে, যে পরিষেবাগুলির জন্য এটি অনুমোদিত নয় সেগুলিতে এর ব্যবহার প্রতিরোধ করা যায়, কিন্তু এপিআই বিধিনিষেধ শুধুমাত্র সেই নির্দিষ্ট কী-টির ক্ষেত্রেই প্রযোজ্য। প্রজেক্ট লেভেলে একটি পরিষেবা নিষ্ক্রিয় করলে, প্রজেক্টের সাথে লিঙ্কযুক্ত যেকোনো কী-তে সেই পরিষেবার অননুমোদিত ব্যবহার প্রতিরোধ করা যায়।

ক্লায়েন্ট-সাইড SDK ব্যবহার করুন

প্রদত্ত ক্লায়েন্ট-সাইড গুগল ম্যাপস প্ল্যাটফর্ম SDK ব্যবহার করার সময়, আপনি আপনার পরিষেবার ব্যবহার সুরক্ষিত করতে আপনার API কী-তে সর্বদা যথাযথ বিধিনিষেধ প্রয়োগ করতে পারবেন।

ক্লায়েন্ট-সাইড SDK ব্যবহার করলে আপনি আরও উন্নত নিরাপত্তা ব্যবস্থা গ্রহণ করতে পারবেন, যেমন Maps Platform API-এর যে সকল সারফেস এটি সমর্থন করে, সেগুলিতে Firebase App Check। আরও বিস্তারিত জানতে, আপনার API কী সুরক্ষিত করতে App Check-এর ব্যবহার দেখুন।

আপনার প্ল্যাটফর্মের জন্য ক্লায়েন্ট-সাইড SDK উপলব্ধ না থাকলে, “আপনার ক্লায়েন্ট-সাইড ওয়েব পরিষেবা কলগুলি সুরক্ষিত করুন” দেখুন।

বিভিন্ন প্ল্যাটফর্মের জন্য ক্লায়েন্ট-সাইড গুগল ম্যাপস প্ল্যাটফর্ম এসডিকে-এর প্রাপ্যতা সম্পর্কে জানতে, প্রস্তাবিত অ্যাপ্লিকেশন এবং এপিআই সীমাবদ্ধতা দেখুন।

স্ট্যাটিক ওয়েব এপিআই ব্যবহার সুরক্ষিত করুন

স্ট্যাটিক ওয়েব এপিআই, যেমন ম্যাপস স্ট্যাটিক এপিআই এবং স্ট্রিট ভিউ স্ট্যাটিক এপিআই, ওয়েব সার্ভিস এপিআই কলের অনুরূপ।

আপনি একটি HTTPS REST API ব্যবহার করে উভয়কেই কল করেন এবং সাধারণত সার্ভারেই API রিকোয়েস্ট URL তৈরি করেন। তবে, JSON রেসপন্স ফেরত দেওয়ার পরিবর্তে, স্ট্যাটিক ওয়েব API একটি ইমেজ তৈরি করে যা আপনি তৈরি করা HTML কোডে এমবেড করতে পারেন। আরও গুরুত্বপূর্ণ বিষয় হলো, সাধারণত সার্ভার নয়, বরং এন্ড-ইউজার ক্লায়েন্টই গুগল ম্যাপস প্ল্যাটফর্ম সার্ভিসকে কল করে থাকে।

ডিজিটাল স্বাক্ষর ব্যবহার করুন

সর্বোত্তম অনুশীলন হিসেবে, এপিআই কী-এর পাশাপাশি সর্বদা ডিজিটাল স্বাক্ষর ব্যবহার করুন। এছাড়াও, আপনি প্রতিদিন কতগুলো স্বাক্ষরবিহীন অনুরোধ অনুমোদন করতে চান তা পর্যালোচনা করুন এবং সেই অনুযায়ী আপনার স্বাক্ষরবিহীন অনুরোধের কোটা সমন্বয় করুন

ডিজিটাল স্বাক্ষর সম্পর্কে আরও বিস্তারিত জানতে, ডিজিটাল স্বাক্ষর নির্দেশিকা দেখুন।

আপনার স্বাক্ষরের গোপনীয়তা রক্ষা করুন

স্ট্যাটিক ওয়েব এপিআই সুরক্ষিত রাখতে, আপনার এপিআই সাইনিং সিক্রেট সরাসরি কোডে বা সোর্স ট্রিতে এম্বেড করবেন না, অথবা ক্লায়েন্ট-সাইড অ্যাপ্লিকেশনে প্রকাশ করবেন না। আপনার সাইনিং সিক্রেট সুরক্ষিত রাখার জন্য এই সেরা অনুশীলনগুলো অনুসরণ করুন:

  • একটি ওয়েব পেজ পরিবেশন করার সময়, অথবা আপনার মোবাইল অ্যাপ্লিকেশনের কোনো অনুরোধের জবাবে, সার্ভার-সাইডে আপনার স্বাক্ষরিত ম্যাপস স্ট্যাটিক এপিআই এবং স্ট্রিট ভিউ স্ট্যাটিক এপিআই অনুরোধ ইউআরএল তৈরি করুন।

    স্ট্যাটিক ওয়েব কন্টেন্টের জন্য, আপনি ক্লাউড কনসোলের গুগল ম্যাপস প্ল্যাটফর্ম ক্রেডেনশিয়ালস পেজে থাকা 'Sign a URL now' উইজেটটি ব্যবহার করতে পারেন।

    ডাইনামিক ওয়েব কন্টেন্টের জন্য, উপলব্ধ ইউআরএল রিকোয়েস্ট সাইনিং কোড স্যাম্পলগুলো দেখুন।

  • আপনার অ্যাপ্লিকেশনের সোর্স কোড এবং সোর্স ট্রি-এর বাইরে সাইনিং সিক্রেট সংরক্ষণ করুন । যদি আপনি আপনার সাইনিং সিক্রেট বা অন্য কোনো ব্যক্তিগত তথ্য আলাদাভাবে সংরক্ষিত এনভায়রনমেন্ট ভেরিয়েবল বা ইনক্লুড ফাইলে রাখেন এবং তারপর আপনার কোড শেয়ার করেন, তাহলে শেয়ার করা ফাইলগুলোতে সাইনিং সিক্রেট অন্তর্ভুক্ত থাকে না। যদি আপনি সাইনিং সিক্রেট বা অন্য কোনো ব্যক্তিগত তথ্য ফাইলে সংরক্ষণ করেন, তবে আপনার সাইনিং সিক্রেটকে সোর্স কোড কন্ট্রোল সিস্টেমের বাইরে রাখতে ফাইলগুলোকে আপনার অ্যাপ্লিকেশনের সোর্স ট্রি-এর বাইরে রাখুন। এই সতর্কতাটি বিশেষভাবে গুরুত্বপূর্ণ যদি আপনি গিটহাবের মতো কোনো পাবলিক সোর্স কোড ম্যানেজমেন্ট সিস্টেম ব্যবহার করেন।

ওয়েব পরিষেবা API কীগুলি সুরক্ষিত করুন

For secure use of Google Maps Platform APIs and services from client-side apps, see Use client-side SDKs and Secure client-side web service calls .

Store API keys outside of your application's source code or source tree . If you put your API keys or any other information in environment variables or include files that are stored separately and then share your code, the API keys are not included in the shared files. This is particularly important if you use a public source code management system, such as GitHub.

To help shield your web service API key against accidental use, Google recommends applying API restrictions to any key used for Maps Platform. Furthermore, also applying IP address restrictions to your web service key will protect it against help protect it against unauthorized use from other source IP addresses, even if the key accidentally leaks.

Use OAuth for server-side apps

OAuth 2.0 is an open standard for access delegation.

While the OAuth 2.0 protocol supports use cases, where an end user authorizes an application to access personal data on their behalf, the intended use case for OAuth 2.0 with Maps Platform is for the developer to utilize temporary access tokens for authorizing their application to call an API on behalf of their Google Cloud project service account with the permissions of the service account.

As a service account may have extremely broad permissions, OAuth 2.0 is recommended for authorizing server-to-server calls between a developer's trusted server-side applications and Google's Maps Platform servers.

For client-side applications running on end user devices, other authentication methods, such as API keys, are recommended.

If you want to use OAuth 2.0 to authorize server-to-server traffic, look for the OAuth topic in your API documentation.

For example, here is the OAuth topic for the Address Validation API .

Secure client-side web service calls

If client-side SDKs are not available, see the recommendations below.

একটি প্রক্সি সার্ভার ব্যবহার করুন

Using a secure proxy server provides a solid source for interacting with a Google Maps Platform web service endpoint from a client-side application without exposing your API key, signing secret or Google Cloud service account to unauthorized users.

মূল বিষয়গুলো:

  • Construct your Google Maps Platform requests on the proxy server. Don't allow clients to relay arbitrary API calls using the proxy.

  • Post-process the Google Maps Platform responses on your proxy server. Filter out data that the client doesn't need.

For more information about using a proxy server, see Living Vicariously: Using Proxy Servers with the Google Data API Client Libraries .

Secure direct mobile web service calls

If you are unable to set up a secure proxy server for your client-side app, secure your application using the following steps:

  1. Use HTTP headers:

    • Android : Use the X-Android-Package and X-Android-Cert HTTP headers.

    • iOS : Use the X-Ios-Bundle-Identifier HTTP header.

  2. Add the corresponding application restrictions to your Android or iOS key.

  3. Before you consider issuing calls directly from your mobile application to a Google Maps Platform REST API web service, verify that requests with incorrect Android or iOS application identifiers are rejected.

    If Android and iOS application restrictions are not supported on the tested endpoint, Google strongly recommends that you use a secure proxy server between your mobile clients and the Google Maps Platform web service endpoint.

Tips for Android applications:

  • Before you integrate your Android application with Google Maps Platform services, verify that your application ID (also called package name) is formatted correctly. For details, see Configure app module . in the Android documentation.

  • To pass X-Android-Package directly from your application, look it up programmatically using Context.getPackageName() .

  • To pass X-Android-Cert directly from your applications, calculate the required SHA-1 fingerprint of your application signing certificates, accessible through PackageInfo.signingInfo .

  • If you authorize your Android application using the Google Cloud console, note that the UI expects the SHA-1 fingerprint to be a colon-delimited string, eg, 00:11:22:33:44:55:66:77:88:99:AA:BB:CC:DD:EE:FF:00:11:22:33 . However, the gcloud tool and the API keys API expect the hexadecimal string without delimiters.

Tips for iOS applications:

  • Before you integrate your iOS application with Google Maps Platform services, verify that your Bundle ID is formatted correctly .

  • You should typically always pass the Bundle ID of your main bundle in the X-Ios-Bundle-Identifier header, when authorizing your iOS application.

For further information, refer to articles Manage API keys and Use API keys to access APIs .

Host your browser based apps on a server

Frameworks, such as Apache Cordova, allow you to conveniently create multi-platform hybrid apps running inside a webview. However, API key website restrictions are not guaranteed to work correctly, unless your web app is loaded using HTTP or HTTPS from a website that you control and have authorized.

Bundled resources, loaded locally from within a hybrid application, or accessed using a local file URL will in many cases prevent referrer based authorization from working as the browser engine powering your webview will omit sending the Referer header. To avoid this, host your web applications server-side, not client-side.

Alternatively, for mobile applications, consider using available native Google Maps Platform Android and iOS SDKs, instead of using a web based SDK.

Use App Check to secure your API key

Certain Maps SDKs and APIs allow you to integrate with Firebase App Check . App Check provides protection for calls from your app to Google Maps Platform by blocking traffic that comes from sources other than legitimate apps. It does this by checking for a token from an attestation provider. Integrating your apps with App Check helps to protect against malicious requests, so you're not charged for unauthorized API calls.

App Check integration instructions:

Handle unauthorized use of an API key

If you detect use of your API key that is unauthorized, do the following to address the problem:

  1. Restrict your keys : If you've used the same key in multiple apps, migrate to multiple API keys, and use separate API keys for each app. For more details, see:

  2. If you use the Places SDK or the Maps Javascript API, you can also use App Check to secure your API Key .

  3. Only replace or rotate keys if the following is true:

    • You detect unauthorized usage on keys that either cannot be restricted or are already restricted, and App Check is not applicable.

    • You want to move more quickly to secure your API key and stop the abuse, even if it might impact legitimate traffic from your application.

    Before proceeding, read through Be careful when rotating API keys .

  4. If you are still having issues or need help, contact support .

Recommended application and API restrictions

The following sections suggest appropriate application and API restrictions for each Google Maps Platform API, SDK or service.

Recommended API Restrictions

The following guidelines for API restrictions apply to all Google Maps Platform services:

  • Restrict your API key to only the APIs you are using it for, with the following exceptions:

    • If your app uses the Places SDK for Android or Places SDK for iOS, authorize Places API (New) or Places API, depending on the SDK versions you use. 1

    • If your app uses Maps JavaScript API, always authorize it on your key.

    • If you also use any of the following Maps JavaScript API services, you should also authorize these corresponding APIs:

      পরিষেবা API restriction
      Directions Service (Legacy) Directions API (Legacy)
      Distance Matrix Service (Legacy) Distance Matrix API (Legacy)
      Elevation Service এলিভেশন এপিআই
      Geocoding Service জিওকোডিং এপিআই
      Place class, Place Autocomplete Widget (New) & Place Autocomplete Data API Places API (New) 2
      Places Library, Places Service & Place Autocomplete Widget Places API 2

1 For more details, see the Places SDK for Android and Places SDK for iOS documentation.

2 If you are unsure if you need to authorize Places API (New) or Places API, see the Maps JavaScript API documentation.

কিছু উদাহরণ:

  • You are using the Maps SDK for Android and Places SDK for Android, so you include the Maps SDK for Android and Places API (New) as API restrictions.

  • Your website uses the Maps JavaScript API Elevation Service and the Maps Static API, so you add API restrictions for all of the following APIs:

    • মানচিত্র জাভাস্ক্রিপ্ট এপিআই
    • এলিভেশন এপিআই
    • মানচিত্র স্ট্যাটিক এপিআই

Recommended application Restriction

ওয়েবসাইট

For websites using Maps JavaScript API services, Maps Static API or Street View Static API or calling recent Google Maps Platform services directly over the HTTPS REST API or gRPC, use the Websites application restriction:

1 For mobile applications, consider using the native Maps SDK for Android and Maps SDK for iOS .

2 For mobile applications, consider using the native Places SDK for Android and Places SDK for iOS .

3 See also Protect Static Web API usage .

Websites with the Maps Embed API

While using the Maps Embed API is no charge, you should still restrict any used API key to prevent abuse on other services.

Best practice : Create a separate API key for Maps Embed API use, and restrict this key to only the Maps Embed API. This restriction sufficiently secures the key, preventing its unauthorized use on any other Google service. For full control over where your Maps Embed API key can be used from, Google recommends also applying Websites application restrictions.

If you are unable to separate your Maps Embed API usage to a separate API key, secure your existing key using the Websites application restriction.

Apps and servers using web services

For servers and client-side apps from trusted corporate internal networks using web services together with API keys, use the IP addresses application restriction.

Use for apps and servers using these APIs:

4 For mobile applications, consider using the Navigation SDK.

5 For safe mobile usage, use a secure proxy server .

6 For client-side applications, consider using the native geolocation service offered by the platform; for example, W3C Geolocation for web browsers, LocationManager or the Fused Location Provider API for Android, or the Apple Core Location framework for iOS.

7 For mobile applications, consider using the native Places SDK for Android and Places SDK for iOS .

8 For safe client-side usage, use a secure proxy server .

অ্যান্ড্রয়েড অ্যাপস

For apps on Android, use the Android apps application restriction. Use for apps using these SDKs:

In addition, prevent accidentally checking API keys into version control by using the Secrets Gradle Plugin to inject secrets from a local file rather than storing them in the Android Manifest.

iOS অ্যাপস

For apps on iOS, use the iOS apps application restriction. Use for apps and servers using these SDKs:

আরও পড়ুন