আপনার অ্যাপ্লিকেশনের জন্য OAuth কনফিগার করুন

আপনার অ্যাপ্লিকেশনের জন্য OAuth কনফিগার করতে, আপনি একটি OAuth ওয়ার্কফ্লো সেট আপ করেন এবং আপনি ডেটা পোর্টেবিলিটি API OAuth স্কোপগুলি সক্ষম করেন৷

একটি OAuth ওয়ার্কফ্লো সেট আপ করুন

আপনার অ্যাপ্লিকেশনের জন্য একটি OAuth ফ্লো সেট আপ করতে, Google আইডেন্টিটি ডকুমেন্টেশনের প্রাথমিক ধাপগুলি অনুসরণ করুন৷

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

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

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

ডেটা পোর্টেবিলিটি API OAuth স্কোপ

যখন আপনি OAuth-এর জন্য আপনার ডেটা পোর্টেবিলিটি API অ্যাপ্লিকেশান কনফিগার করেন, তখন আপনার অ্যাপ্লিকেশনের সাথে প্রাসঙ্গিক ডেটা পোর্টেবিলিটি API OAuth স্কোপগুলি সক্ষম করুন৷ কিছু সুযোগ sensitive এবং restricted এবং অতিরিক্ত প্রয়োজনীয়তা সাপেক্ষে।

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

  • আংশিক ডেটা রপ্তানির অনুমতি দিচ্ছে
  • ব্যবহারকারীকে অবহিত করা যে তারা সমস্ত প্রয়োজনীয় স্কোপ নির্বাচন করেনি (এবং করুণভাবে ব্যর্থ হয়েছে)
  • অবশিষ্ট সম্মতি জন্য ব্যবহারকারী জিজ্ঞাসা

অতিরিক্তভাবে, একজন ব্যবহারকারী আপনাকে একবার তাদের ডেটা অ্যাক্সেস করার অনুমতি দেবে কিনা তা 30 বা 180 দিনের জন্য বেছে নেয়।

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

আপনার আরও মনে রাখা উচিত যে OAuth ফ্লো চলাকালীন, আপনার অ্যাপটি সম্মতি দেওয়ার জন্য কোন Google অ্যাকাউন্ট ব্যবহার করা হয়েছিল তা জানে না। আপনার আবেদন প্রাপ্ত OAuth টোকেন অস্বচ্ছ।

ব্যবহারকারীরা কীভাবে ডেটা ভাগ করে সে সম্পর্কে আপনি যদি তথ্য খুঁজছেন, তৃতীয় পক্ষের সাথে আপনার ডেটার একটি অনুলিপি ভাগ করুন দেখুন৷

সুযোগ সীমাবদ্ধতা

এই বিভাগে সীমাবদ্ধতাগুলি কভার করে যার ফলে ত্রুটি দেখা দেয়।

মিশ্র সুযোগ

ডেটা পোর্টেবিলিটি API স্কোপের জন্য অনুরোধগুলি (যেমন, https://www.googleapis.com/auth/dataportability.) অন্যান্য স্কোপের সাথে মিশ্রিত করা যাবে না (যেমন, https://www.googleapis.com/auth/userinfo.email)। এখানে একটি খারাপ অনুরোধের একটি উদাহরণ রয়েছে, যেখানে সীমাবদ্ধ অংশটি বোল্ড করা হয়েছে:

https://accounts.google.com/o/oauth2/v2/auth?
client_id=client_id&
redirect_uri=redirect_uri&
response_type=token&
scope=https://www.googleapis.com/auth/dataportability.myactivity.search+https://www.googleapis.com/auth/userinfo.email&
include_granted_scopes=false

পূর্বে সুযোগ দেওয়া হয়েছে

DPAPI স্কোপের অনুরোধ করার সময় আপনার কখনই include_granted_scopes=true সেট করা উচিত নয়। এখানে একটি খারাপ অনুরোধের একটি উদাহরণ রয়েছে, যেখানে সীমাবদ্ধ অংশটি বোল্ড করা হয়েছে:

https://accounts.google.com/o/oauth2/v2/auth?
client_id=client_id&
redirect_uri=redirect_uri&
response_type=token&
scope=https://www.googleapis.com/auth/dataportability.myactivity.search&
include_granted_scopes=true

অনেক স্কোপ

যদি আপনার অনুরোধে অনেকগুলি স্কোপ যুক্ত থাকে, তাহলে আপনি একটি 400 bad request ত্রুটির সম্মুখীন হতে পারেন৷ ব্রাউজারে সমর্থিত ইউআরএলের দৈর্ঘ্য তার চেয়ে বেশি হলে এটি ঘটে। সমাধান করতে, স্কোপের জন্য আপনার অনুরোধগুলিকে একাধিক ছোট ব্যাচে বিভক্ত করুন এবং প্রতিটি ব্যাচের জন্য সম্মতির অনুরোধ করতে ইনক্রিমেন্টাল অনুমোদন ব্যবহার করুন।

স্কোপ বিভাগ

ডেটা পোর্টেবিলিটি API এবং তাদের বিভাগ দ্বারা সমর্থিত সমস্ত OAuth স্কোপের তালিকার জন্য, উপলব্ধ OAuth স্কোপগুলি দেখুন। একটি নির্দিষ্ট পরিষেবা দ্বারা সমর্থিত সমস্ত সংস্থান গোষ্ঠী এবং OAuth স্কোপের তালিকার জন্য, সেই পরিষেবার জন্য স্কিমা রেফারেন্স পৃষ্ঠাটি দেখুন৷