সেরা অনুশীলন

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

ক্লায়েন্ট শংসাপত্র নিরাপদে হ্যান্ডেল

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

নিরাপদে ব্যবহারকারীর টোকেন পরিচালনা করুন

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

টোকেনগুলির আর প্রয়োজন না হওয়ার সাথে সাথে প্রত্যাহার করুন এবং আপনার সিস্টেম থেকে স্থায়ীভাবে মুছে দিন।

এছাড়াও, আপনার প্ল্যাটফর্মের জন্য এই সেরা অনুশীলনগুলিও বিবেচনা করুন:

  • সার্ভার-সাইড অ্যাপ্লিকেশনগুলির জন্য যা অনেক ব্যবহারকারীর জন্য টোকেন সঞ্চয় করে, তাদের বিশ্রামে এনক্রিপ্ট করুন এবং নিশ্চিত করুন যে আপনার ডেটা স্টোর সর্বজনীনভাবে ইন্টারনেটে অ্যাক্সেসযোগ্য নয়।
  • নেটিভ ডেস্কটপ অ্যাপগুলির জন্য, কোড এক্সচেঞ্জ (PKCE) প্রোটোকলের জন্য প্রমাণ কী ব্যবহার করে অনুমোদনের কোডগুলি পাওয়ার জন্য দৃঢ়ভাবে সুপারিশ করা হয় যা অ্যাক্সেস টোকেনের জন্য বিনিময় করা যেতে পারে।

রিফ্রেশ টোকেন প্রত্যাহার এবং মেয়াদ শেষ হওয়া পরিচালনা করুন

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

ক্রমবর্ধমান অনুমোদন ব্যবহার করুন

আপনার অ্যাপ্লিকেশনের কার্যকারিতা প্রয়োজন হলে উপযুক্ত OAuth স্কোপের অনুরোধ করতে ক্রমবর্ধমান অনুমোদন ব্যবহার করুন।

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

আপনার অ্যাপ কেন অ্যাক্সেসের অনুরোধ করছে এবং কীভাবে ডেটা ব্যবহার করা হবে তা বুঝতে আপনার ব্যবহারকারীদের সাহায্য করার জন্য সর্বদা প্রেক্ষাপটে স্কোপের অনুরোধ করুন।

উদাহরণস্বরূপ, আপনার অ্যাপ্লিকেশন এই মডেল অনুসরণ করতে পারে:

  1. ব্যবহারকারী আপনার অ্যাপের সাথে প্রমাণীকরণ করে
    1. কোন অতিরিক্ত সুযোগ অনুরোধ করা হয়. অ্যাপটি ব্যবহারকারীকে এমন বৈশিষ্ট্যগুলি অন্বেষণ করতে এবং ব্যবহার করতে দেওয়ার জন্য মৌলিক কার্যকারিতা প্রদান করে যেগুলির জন্য কোনও অতিরিক্ত ডেটা বা অ্যাক্সেসের প্রয়োজন নেই৷
  2. ব্যবহারকারী এমন একটি বৈশিষ্ট্য নির্বাচন করে যার জন্য অতিরিক্ত ডেটা অ্যাক্সেসের প্রয়োজন
    1. আপনার অ্যাপ্লিকেশন এই বৈশিষ্ট্যের জন্য প্রয়োজনীয় এই নির্দিষ্ট OAuth সুযোগের জন্য একটি অনুমোদনের অনুরোধ করে। যদি এই বৈশিষ্ট্যটির একাধিক সুযোগের প্রয়োজন হয়, তাহলে নীচের সেরা অনুশীলনগুলি অনুসরণ করুন৷
    2. যদি ব্যবহারকারী অনুরোধটি অস্বীকার করে, অ্যাপটি বৈশিষ্ট্যটি নিষ্ক্রিয় করে এবং ব্যবহারকারীকে আবার অ্যাক্সেসের অনুরোধ করার জন্য অতিরিক্ত প্রসঙ্গ দেয়।

একাধিক স্কোপের জন্য সম্মতি হ্যান্ডেল করুন

একবারে একাধিক স্কোপের অনুরোধ করার সময়, ব্যবহারকারীরা আপনার অনুরোধ করা সমস্ত OAuth স্কোপের অনুমতি নাও দিতে পারে। আপনার অ্যাপটি প্রাসঙ্গিক কার্যকারিতা অক্ষম করে স্কোপের অস্বীকৃতি পরিচালনা করা উচিত।

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

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

একবারে আপনার অ্যাপের অনুরোধের স্কোপের সংখ্যা কমিয়ে আনতে হবে। পরিবর্তে, বৈশিষ্ট্য এবং কার্যকারিতার প্রসঙ্গে সুযোগের অনুরোধ করতে ক্রমবর্ধমান অনুমোদন ব্যবহার করুন

নিরাপদ ব্রাউজার ব্যবহার করুন

ওয়েবে, OAuth 2.0 অনুমোদনের অনুরোধগুলি শুধুমাত্র সম্পূর্ণ বৈশিষ্ট্যযুক্ত ওয়েব ব্রাউজার থেকে করা উচিত। অন্যান্য প্ল্যাটফর্মে, সঠিক OAuth ক্লায়েন্ট টাইপ নির্বাচন করা এবং আপনার প্ল্যাটফর্মের জন্য উপযুক্ত হিসাবে OAuth সংহত করা নিশ্চিত করুন। এম্বেড করা ব্রাউজিং পরিবেশের মাধ্যমে অনুরোধটি পুনঃনির্দেশ করবেন না, মোবাইল প্ল্যাটফর্মে ওয়েবভিউ সহ, যেমন Android-এ WebView বা iOS-এ WKWebView। পরিবর্তে, আপনার প্ল্যাটফর্মের জন্য নেটিভ OAuth লাইব্রেরি বা Google সাইন-ইন ব্যবহার করুন।

OAuth ক্লায়েন্টদের ম্যানুয়াল তৈরি এবং কনফিগারেশন

অপব্যবহার রোধ করার জন্য, OAuth ক্লায়েন্ট তৈরি বা প্রোগ্রামগতভাবে সংশোধন করা যাবে না। পরিষেবার শর্তাবলী স্পষ্টভাবে স্বীকার করতে, আপনার OAuth ক্লায়েন্ট কনফিগার করতে এবং OAuth যাচাইকরণের জন্য প্রস্তুত করতে আপনাকে অবশ্যই Google বিকাশকারী কনসোল ব্যবহার করতে হবে৷

স্বয়ংক্রিয় কর্মপ্রবাহের জন্য, পরিবর্তে পরিষেবা অ্যাকাউন্ট ব্যবহার করার কথা বিবেচনা করুন।