
ভূমিকা
সাইন ইন উইথ গুগল (SiwG) হলো ব্যবহারকারীদের আপনার অ্যাপ বা ওয়েবসাইটে সাইন ইন করার একটি দ্রুত এবং নিরাপদ উপায়। এটি সঠিকভাবে প্রয়োগ করলে তা কেবল ব্যবহারকারী নিবন্ধন প্রক্রিয়াকেই সহজ করে না, বরং আপনার অ্যাপ্লিকেশনের নিরাপত্তাও বৃদ্ধি করে। এই ডকুমেন্টটিতে ওয়েব, অ্যান্ড্রয়েড এবং আইওএস প্ল্যাটফর্ম জুড়ে সাইন ইন উইথ গুগল ইন্টিগ্রেট করার সেরা পদ্ধতিগুলো তুলে ধরা হয়েছে। এই ডকুমেন্টেশনটি শুধুমাত্র অথেনটিকেশনের উপর আলোকপাত করে। অথরাইজেশন এই ডকুমেন্টের আওতার বাইরে।
ইন্টিগ্রেশন মাইলস্টোন চেকলিস্ট
এই চেকলিস্টটি আপনাকে ‘সাইন ইন উইথ গুগল’ ইন্টিগ্রেশন প্রক্রিয়ার প্রতিটি ধাপে পথ দেখানোর জন্য একটি উচ্চ-স্তরের রূপরেখা প্রদান করে। এটি প্রাথমিক সেটআপ থেকে শুরু করে প্রোডাকশন লঞ্চ পর্যন্ত প্রধান পর্যায়গুলিতে বিভক্ত। আপনার অগ্রগতি ট্র্যাক করতে এই তালিকাটি ব্যবহার করুন এবং প্রতিটি মাইলস্টোনের বিস্তারিত নির্দেশিকায় যেতে লিঙ্কগুলিতে ক্লিক করুন।
পর্যায় ০: শুরু করা (ঐচ্ছিক)
ব্যবহারিক, ধাপে ধাপে ডেভেলপার কোডল্যাবের মাধ্যমে আপনার ইন্টিগ্রেশন প্রক্রিয়া দ্রুত শুরু করুন।
: একটি বেসিক ওয়েব ইন্টিগ্রেশন তৈরি করতে ওয়ান-ট্যাপ এবং সাইন ইন উইথ গুগল বাটন কোডল্যাবটি সম্পূর্ণ করুন।
: অ্যান্ড্রয়েডের ক্রেডেনশিয়াল ম্যানেজারের মৌলিক বিষয়গুলো শিখতে অ্যান্ড্রয়েড কোডল্যাবটি সম্পূর্ণ করুন।
: iOS SDK-এর সাথে পরিচিতি লাভের জন্য iOS কোডল্যাবটি সম্পূর্ণ করুন।
পর্যায় ১: গুগল ক্লাউড প্রকল্প ও ব্র্যান্ড কনফিগারেশন
শুরু থেকেই আপনার প্রকল্পটি সফলতার জন্য প্রস্তুত করুন।
বিভিন্ন পরিবেশ ও ব্র্যান্ডের জন্য গুগল ক্লাউড প্রোজেক্টের কাঠামো ।
সমস্ত প্রয়োজনীয় ব্র্যান্ডিং এবং সাপোর্ট তথ্য দিয়ে OAuth কনসেন্ট স্ক্রিন কনফিগারেশনটি সম্পূর্ণ করুন
প্রতিটি প্ল্যাটফর্মের (ওয়েব, অ্যান্ড্রয়েড, আইওএস) জন্য সঠিক OAuth ক্লায়েন্ট আইডি টাইপ তৈরি করুন
পর্যায় ২: মূল উন্নয়ন: ফ্রন্টএন্ড এবং ব্যাকএন্ড
নিরাপদ সার্ভার লজিক এবং প্ল্যাটফর্ম-নির্দিষ্ট ব্যবহারকারীর অভিজ্ঞতা তৈরি করুন।
আপনার ফ্রন্টএন্ড ডেভেলপমেন্টে:
ব্যবহারকারীর গ্রহণ যোগ্যতা ও আস্থা সর্বাধিক করার জন্য সাধারণ ইউজার এক্সপেরিয়েন্স (UX) এর সর্বোত্তম অনুশীলনগুলো ও প্রয়োগ করুন।
ওয়েব: অফিসিয়াল জাভাস্ক্রিপ্ট লাইব্রেরি ব্যবহার করুন এবং বাটন ও ওয়ান ট্যাপ উভয় ফ্লো ইন্টিগ্রেট করুন।
অ্যান্ড্রয়েড: ইন্টিগ্রেট করার জন্য অফিসিয়াল অ্যান্ড্রয়েড এসডিকে ব্যবহার করুন।
iOS: ইন্টিগ্রেট করার জন্য অফিসিয়াল iOS SDK ব্যবহার করুন।
আপনার ব্যাকএন্ড ডেভেলপমেন্টে:
গুগল আইডি টোকেনগুলির নিরাপদ ব্যাকএন্ড যাচাইকরণ বাস্তবায়ন করুন
আপনার সিস্টেমে অনন্য এবং স্থায়ী ব্যবহারকারী শনাক্তকারী হিসেবে sub -ক্লেমটি করুন।
প্রযোজ্য হলে প্রমাণীকরণ এবং অনুমোদন পরিধি পৃথকীকরণের করুন।
তৃতীয় পর্যায়: নিরাপত্তা জোরদারকরণ ও উৎপাদন শুরু
আপনার ইন্টিগ্রেশনটি সুরক্ষিত, নিয়মসম্মত এবং প্রোডাকশনের জন্য প্রস্তুত কিনা তা নিশ্চিত করুন।
নিরাপত্তার সর্বোত্তম অনুশীলনগুলো ও বাস্তবায়ন করুন।
লঞ্চ করার আগে OAuth অ্যাপ যাচাইকরণ প্রক্রিয়াটি সম্পূর্ণ করুন
ব্যবহারকারীর অ্যাকাউন্ট মুছে ফেলার পর আপনার অ্যাপ্লিকেশনটি টোকেন বাতিলকরণ সঠিকভাবে পরিচালনা করে, তা নিশ্চিত করুন।
সাধারণ সর্বোত্তম অনুশীলন (সকল প্ল্যাটফর্মের জন্য)
আপনি যে প্ল্যাটফর্মের জন্যই ডেভেলপ করুন না কেন, এই নিয়মগুলো প্রযোজ্য। সম্পূর্ণ সম্মতি নিশ্চিত করার জন্য ডেভেলপারদের সাধারণ OAuth 2.0 নীতিমালাগুলোও পর্যালোচনা করা উচিত।
গুগল ক্লাউড প্রজেক্ট সেটআপ
এই বিভাগে আপনার গুগল ক্লাউড প্রোজেক্টের কাঠামো তৈরি করার এবং নিরাপত্তা ও ব্র্যান্ডিং বিধি মেনে চলার জন্য আপনার OAuth ক্লায়েন্ট সেট আপ করার সর্বোত্তম পদ্ধতিগুলো তুলে ধরা হয়েছে।
টেস্টিং এবং প্রোডাকশনের জন্য আলাদা প্রজেক্ট ব্যবহার করুন
যেহেতু গুগলের কিছু নীতি শুধুমাত্র প্রোডাকশন অ্যাপ্লিকেশনের ক্ষেত্রে প্রযোজ্য, তাই আপনাকে আপনার বিভিন্ন ডেপ্লয়মেন্ট এনভায়রনমেন্ট, যেমন ডেভেলপমেন্ট, স্টেজিং এবং প্রোডাকশনের জন্য গুগল ক্লাউড কনসোলে আলাদা প্রজেক্ট তৈরি করতে হবে। আরও বিস্তারিত জানতে এই পৃষ্ঠাটি দেখুন।
প্রতিটি ব্র্যান্ড বা ডোমেনের জন্য আলাদা প্রকল্প ব্যবহার করুন
আপনার সংস্থা যদি স্বতন্ত্র ব্র্যান্ডের একাধিক অ্যাপ্লিকেশন পরিচালনা করে, তবে প্রতিটি ব্র্যান্ডের নিজস্ব ডেডিকেটেড গুগল ক্লাউড প্রজেক্ট থাকা উচিত। সম্মতি স্ক্রিনে প্রদর্শিত ব্যবহারকারী-মুখী তথ্য, যেমন অ্যাপ্লিকেশনের নাম, লোগো, সাপোর্ট ইমেল এবং পরিষেবার শর্তাবলী ও গোপনীয়তা নীতির লিঙ্ক, প্রজেক্ট লেভেলে কনফিগার করা হয়। এর মানে হলো, একটি প্রজেক্টের মধ্যে তৈরি সমস্ত OAuth ক্লায়েন্ট আইডি একই ব্র্যান্ডিং শেয়ার করবে। প্রতিটি ব্র্যান্ডকে নিজস্ব প্রজেক্ট দিলে এটি নিশ্চিত হয় যে ব্যবহারকারীরা তাদের ব্যবহৃত নির্দিষ্ট অ্যাপ্লিকেশনের জন্য সঠিক ব্র্যান্ডিং এবং আইনি তথ্য দেখতে পাচ্ছেন।
একটি সাধারণ সহায়তা ইমেল প্রদান করুন
ব্যবহারকারীর সাপোর্ট ইমেল ঠিকানাটি OAuth সম্মতি স্ক্রিনে সর্বজনীনভাবে প্রদর্শিত হয়। পেশাদারিত্ব বজায় রাখতে এবং ধারাবাহিকতা নিশ্চিত করতে, কোনো স্বতন্ত্র কর্মচারীর ইমেল ঠিকানার পরিবর্তে Google Cloud Project-এর OAuth সম্মতি স্ক্রিন কনফিগারেশনে সর্বদা একটি জেনেরিক সাপোর্ট ইমেল (যেমন,
support@yourdomain.com) কনফিগার করুন। আরও বিস্তারিত জানতে এই পৃষ্ঠাটি দেখুন।প্রতি প্ল্যাটফর্মে OAuth ক্লায়েন্ট
আপনার অ্যাপটি যে যে প্ল্যাটফর্মে চলে (যেমন, ওয়েব, অ্যান্ড্রয়েড, আইওএস), সেগুলোর প্রতিটির জন্য একই গুগল ক্লাউড প্রজেক্টের মধ্যে একটি আলাদা OAuth ক্লায়েন্ট তৈরি করা উচিত। দুটি প্রধান কারণে প্রতিটি প্ল্যাটফর্মের জন্য সঠিক ক্লায়েন্ট টাইপ ব্যবহার করা অত্যন্ত গুরুত্বপূর্ণ:
- উন্নত নিরাপত্তা : প্রতিটি ক্লায়েন্ট টাইপ প্ল্যাটফর্ম-নির্দিষ্ট নিরাপত্তা বৈশিষ্ট্য সক্রিয় করে। উদাহরণস্বরূপ, একটি অ্যান্ড্রয়েড ক্লায়েন্টকে তার প্যাকেজ নেম এবং সাইনিং সার্টিফিকেট দ্বারা সুরক্ষিত করা যেতে পারে, যা আপনার ক্লায়েন্ট আইডির অননুমোদিত ব্যবহার প্রতিরোধ করে।
- যথাযথ কার্যকারিতা : এটি নিশ্চিত করে যে আপনার অ্যাপ্লিকেশনটি প্ল্যাটফর্ম-নির্দিষ্ট SDK এবং বৈশিষ্ট্যগুলির সাথে সঠিকভাবে সংহত হয়, যেমন অ্যান্ড্রয়েডের জন্য ক্রেডেনশিয়াল ম্যানেজার বা iOS-এর জন্য সাইন ইন উইথ গুগল SDK।
এই কাঠামোটি ব্যবহারকারীর অভিজ্ঞতাকেও সহজ করে তোলে। যেহেতু সম্মতি গুগল ক্লাউড প্রজেক্ট লেভেলে পরিচালিত হয়, তাই ব্যবহারকারীদের সমস্ত প্ল্যাটফর্ম জুড়ে আপনার অ্যাপ্লিকেশনকে শুধুমাত্র একবারই সম্মতি দিতে হবে। আরও বিস্তারিত জানতে, অফিসিয়াল OAuth 2.0 নীতিমালা দেখুন।
OAuth অ্যাপ যাচাইকরণ সম্পন্ন করা
আপনার প্রোডাকশন অ্যাপে নাম ও লোগো প্রদর্শনের জন্য এটিকে অবশ্যই ভেরিফাই করতে হবে। ভেরিফিকেশনের ধরন নির্ভর করে আপনি ব্যবহারকারীর কাছ থেকে কী ধরনের ডেটা চাইছেন তার ওপর।
- গুগল দিয়ে সাইন ইন করলে শুধুমাত্র অথেনটিকেশন স্কোপ (
email,profileএবংopenid) প্রয়োজন হয় এবং এর জন্য একটি সহজতর ব্র্যান্ড ভেরিফিকেশন প্রয়োজন। এই প্রক্রিয়াটি সাধারণত দ্রুততর এবং আপনার ব্র্যান্ডের পরিচয় নিশ্চিত করার উপর বেশি মনোযোগ দেয়।
আপনার লঞ্চের সময়সূচী পরিকল্পনা করতে সাহায্য করার জন্য, গুগল বিভিন্ন ধরণের ভেরিফিকেশন এবং সেগুলোর প্রত্যাশিত পর্যালোচনার সময় বিস্তারিতভাবে বর্ণনা করে। ভেরিফিকেশন নীতিমালা সম্পর্কে আরও বিস্তারিত জানতে, OAuth অ্যাপ ভেরিফিকেশন হেল্প সেন্টার দেখুন।
- গুগল দিয়ে সাইন ইন করলে শুধুমাত্র অথেনটিকেশন স্কোপ (
নিরাপত্তা ও টোকেন পরিচালনা
এই অংশে ডেভেলপারদের তাদের ব্যাকএন্ড সার্ভারে অবশ্যই বাস্তবায়ন করতে হবে এমন রানটাইম প্রয়োজনীয়তা এবং নিরাপত্তা ব্যবস্থাগুলোর উপর আলোকপাত করা হয়েছে।
আপনার ব্যাকএন্ডের সাথে গুগল আইডি টোকেন সংযুক্ত করুন
- আইডি টোকেন যাচাই করুন : আপনার ব্যাকএন্ড সার্ভারে সর্বদা গুগল আইডি টোকেনের অখণ্ডতা যাচাই করুন। শুধুমাত্র আপনার ক্লায়েন্ট থেকে পাঠানো হয়েছে বলেই কোনো টোকেনকে বিশ্বাস করবেন না। এই যাচাইকরণের জন্য একটি গুগল এপিআই ক্লায়েন্ট লাইব্রেরি ব্যবহার করার পরামর্শ দেওয়া হয়। আরও বিস্তারিত জানতে ‘আপনার সার্ভার সাইডে গুগল আইডি টোকেন যাচাই করুন’ দেখুন।
-
subক্লেইম ব্যবহার করুন : ব্যবহারকারীকে শনাক্ত করার জন্য শুধুমাত্র গুগল আইডি টোকেনsubফিল্ড ব্যবহার করুন, কারণ এটি সমস্ত গুগল অ্যাকাউন্টের মধ্যে অনন্য ও স্থিতিশীল এবং কখনও পুনরায় ব্যবহার করা হয় না। আপনার অ্যাকাউন্ট ম্যানেজমেন্ট সিস্টেমেsubফিল্ডটি সংরক্ষণ করে ব্যবহারকারীর সাথে যুক্ত করা উচিত। যদিও ব্যবহারকারীর কোনো বিদ্যমান অ্যাকাউন্ট আছে কিনা তা পরীক্ষা করার জন্য আপনি আইডি টোকেন থেকে ইমেল ঠিকানা ব্যবহার করতে পারেন, তবে শনাক্তকারী হিসেবে ইমেল ঠিকানা ব্যবহার করবেন না, কারণ একটি গুগল অ্যাকাউন্টের বিভিন্ন সময়ে একাধিক ইমেল ঠিকানা থাকতে পারে।
অ্যাকাউন্ট মুছে ফেলার সময় টোকেন প্রত্যাহার করুন
যেসব ব্যবহারকারী গুগল দিয়ে সাইন ইন করেন, তাদের আপনার অ্যাপ্লিকেশন থেকে তাদের গুগল অ্যাকাউন্ট সংযোগ বিচ্ছিন্ন করার সুযোগ দেওয়ার জন্য বিশেষভাবে সুপারিশ করা হচ্ছে। যদি কোনো ব্যবহারকারী তার অ্যাকাউন্ট মুছে ফেলার সিদ্ধান্ত নেন, তবে আপনার অ্যাপ্লিকেশন কর্তৃক প্রাপ্ত সমস্ত অ্যাক্সেস এবং রিফ্রেশ টোকেন অবশ্যই প্রত্যাহার করতে হবে।
ক্লায়েন্ট-সাইড টোকেন বাতিলকরণ সম্পর্কে বিস্তারিত জানতে ওয়েব , অ্যান্ড্রয়েড , আইওএস ডকুমেন্টেশন দেখুন। সার্ভার-সাইড বাতিলকরণের জন্য, "ওয়েব সার্ভার অ্যাপ্লিকেশনের জন্য OAuth 2.0 ব্যবহার" দেখুন।
প্রমাণীকরণকে অনুমোদন থেকে আলাদা করুন
‘সাইন ইন উইথ গুগল’ এসডিকেগুলো শুধুমাত্র অথেনটিকেশনের জন্য প্রয়োজনীয় স্কোপগুলোর অনুরোধ করে। যদি আপনার অ্যাপ্লিকেশনের অন্যান্য গুগল পরিষেবা (যেমন গুগল ক্যালেন্ডার বা ড্রাইভ) ব্যবহারের প্রয়োজন হয়, তবে আপনার সেই অনুমতিগুলো আলাদাভাবে এবং শুধুমাত্র তখনই অনুরোধ করা উচিত, যখন ব্যবহারকারী এমন কোনো কাজ করার চেষ্টা করছেন যার জন্য সেগুলোর প্রয়োজন। আরও বিস্তারিত জানতে ‘পৃথক অথেনটিকেশন এবং অথরাইজেশন মুহূর্ত’ দেখুন।
নিরাপত্তার সর্বোত্তম অনুশীলন
নিরাপদ ইন্টিগ্রেশনের জন্য, গুগল এপিআই ক্লায়েন্ট লাইব্রেরি ব্যবহার করে আপনার ব্যাকএন্ড সার্ভারে আইডি টোকেনটি সর্বদা যাচাই করুন। বিভিন্ন ধরনের হুমকি থেকে আরও ব্যাপক সুরক্ষার জন্য, সিকিউরিটি বান্ডেল এবং ক্রস-অ্যাকাউন্ট প্রোটেকশন (RISC) প্রয়োগ করুন। এছাড়াও, আইওএস (iOS) অ্যাপের ক্ষেত্রে, অনুরোধগুলো আপনার আসল অ্যাপ থেকেই আসছে কিনা তা নিশ্চিত করতে অ্যাপ চেক (App Check) ইন্টিগ্রেট করার জন্য বিশেষভাবে সুপারিশ করা হয়।
ব্যবহারকারীর অভিজ্ঞতা (UX)
এই বিভাগে ব্যবহারকারী-মুখী উপাদান এবং সাইন-ইন/সাইন-আপ প্রক্রিয়াকে অপ্টিমাইজ করার উপর আলোকপাত করা হয়েছে।
বাটনটি স্পষ্টভাবে প্রদর্শন করুন : আপনার সাইন-ইন এবং রেজিস্ট্রেশন পেজে ‘Sign in with Google’ বাটনটি যেন স্পষ্টভাবে দৃশ্যমান এবং সহজে ব্যবহারযোগ্য হয়।
ব্র্যান্ড নির্দেশিকা অনুসরণ করুন : একটি সামঞ্জস্যপূর্ণ এবং বিশ্বাসযোগ্য ব্যবহারকারীর অভিজ্ঞতা নিশ্চিত করতে অফিসিয়াল গুগল-ব্র্যান্ডেড সাইন-ইন বাটন ব্যবহার করুন। অফিসিয়াল ‘সাইন ইন উইথ গুগল ব্র্যান্ডিং গাইডলাইনস’ পর্যালোচনা করুন।
ঝামেলাহীন সাইন-আপ : নতুন ব্যবহারকারীদের জন্য, প্রথমবার সফলভাবে 'গুগল দিয়ে সাইন ইন' করার পর স্বয়ংক্রিয়ভাবে একটি অ্যাকাউন্ট তৈরি করুন অথবা সরাসরি নতুন অ্যাকাউন্ট তৈরির প্রক্রিয়ায় নিয়ে যান। ব্যাকএন্ডে, প্রদত্ত
subআইডি সহ কোনো ব্যবহারকারী আছেন কিনা তা পরীক্ষা করুন; না থাকলে, একটি নতুন অ্যাকাউন্ট তৈরি করুন। এতে রেজিস্ট্রেশনের প্রচেষ্টা কমে যায়।সহজ সাইন-ইন : পুরনো ব্যবহারকারীদের ক্ষেত্রে, তাদের বিদ্যমান অ্যাকাউন্টে শনাক্ত ও প্রমাণীকরণের জন্য
subআইডি ব্যবহার করুন। তাদেরকে দ্রুত ও নিরাপদে আপনার অ্যাপে ফিরিয়ে আনতে ওয়েব ও অ্যান্ড্রয়েডের জন্য স্বয়ংক্রিয় সাইন-ইন এবং আইওএস-এর জন্য স্টেট রিস্টোরেশনের মতো ফিচারগুলো প্রয়োগ করুন।সোশ্যাল সাইন-ইন পদ্ধতিসমূহ পরিচালনা করুন : ব্যবহারকারীর সেটিংসে একটি কেন্দ্রীভূত "সংযুক্ত অ্যাকাউন্ট" বিভাগ প্রদান করে, যেখানে ব্যবহারকারীরা বিভিন্ন সোশ্যাল সাইন-ইন পদ্ধতি (যেমন গুগল) পরিচালনা করতে পারেন।
লিঙ্কিং : অন্যান্য পদ্ধতি (যেমন ইউজারনেম এবং পাসওয়ার্ড) ব্যবহারকারী বিদ্যমান ব্যবহারকারীদের জন্য একটি "গুগল দিয়ে সাইন ইন করুন" বোতাম প্রদান করুন। এটিতে ক্লিক করলে তাদের গুগল অ্যাকাউন্টকে বিদ্যমান প্রোফাইলের সাথে লিঙ্ক করার জন্য প্রমাণীকরণ প্রক্রিয়াটি শুরু হবে।
সংযোগ বিচ্ছিন্ন করা : অ্যাকাউন্টটি সংযোগ বিচ্ছিন্ন করার একটি বিকল্প প্রদান করুন। এটি সম্পন্ন করতে, আপনাকে টোকেন প্রত্যাহার করতে হবে এবং আপনার ডেটাবেস থেকে গুগল সংযোগটি মুছে ফেলতে হবে।
অ্যান্ড্রয়েড বাস্তবায়ন (অ্যাপ ও গেম)
স্ট্যান্ডার্ড অ্যান্ড্রয়েড অ্যাপস
অ্যান্ড্রয়েড বাস্তবায়নের জন্য, আপনার ক্রেডেনশিয়াল ম্যানেজার ব্যবহার করা উচিত। ব্যবহারকারীর ক্রেডেনশিয়াল পরিচালনার জন্য এটিই প্রস্তাবিত পদ্ধতি এবং এটি অ্যান্ড্রয়েডে একটি সমন্বিত, নিরাপদ ও সামঞ্জস্যপূর্ণ সাইন-ইন অভিজ্ঞতা প্রদান করে।
বাস্তবায়নের জন্য অ্যান্ড্রয়েডের OAuth ক্লায়েন্ট আইডি ব্যবহার করুন। যদি আপনার অন্যান্য প্ল্যাটফর্মে (যেমন ওয়েব, আইওএস) ইতিমধ্যেই 'সাইন ইন উইথ গুগল' বাস্তবায়ন করা থাকে, তাহলে আপনাকে একই গুগল ক্লাউড প্রজেক্টে অ্যান্ড্রয়েড টাইপের একটি নতুন OAuth ক্লায়েন্ট আইডি তৈরি করতে হবে।
বাস্তবায়ন প্রবাহ
একটি শক্তিশালী বাস্তবায়নে ক্রেডেনশিয়াল ম্যানেজারের বটম শীট UI এবং একটি ‘সাইন ইন উইথ গুগল’ বাটন উভয়ই অন্তর্ভুক্ত থাকা উচিত।
- বটমশিট : এটি ডেভেলপার-চালিত একটি সহজবোধ্য প্রম্পট, যা কোনো ব্যবহারকারী আপনার সাইন-ইন স্ক্রিনে এলে ক্রেডেনশিয়াল ম্যানেজার দ্বারা প্রদর্শিত হয়।
- গুগল দিয়ে সাইন ইন করুন বাটন : এটি হলো ব্যবহারকারীর স্বতঃপ্রণোদিত সাইন-ইন প্রক্রিয়া, যা ট্যাপ করে তিনি শুরু করতে পারেন।
- একটি সুনির্দিষ্ট গুগল ক্লাউড প্রজেক্ট কনফিগারেশন অপরিহার্য। এর জন্য সঠিক ধরনের OAuth ক্লায়েন্ট আইডি তৈরি করতে হয় এবং আপনার অ্যাপের
SHA-1সার্টিফিকেট ফিঙ্গারপ্রিন্টের মতো নির্দিষ্ট বিবরণ প্রদান করতে হয়। সঠিক সেটআপ নিশ্চিত করতে, অফিসিয়াল অ্যান্ড্রয়েড ডেভেলপার গাইডটি নির্ভুলভাবে অনুসরণ করুন।
আপনার সর্বদা বাটন ফ্লো অন্তর্ভুক্ত করা উচিত, কারণ একজন ব্যবহারকারী বটমশিটটি বাতিল করে দিতে পারেন অথবা তার পছন্দ অনুযায়ী এটি নিষ্ক্রিয় করে রাখতে পারেন। বাটনটি নিশ্চিত করে যে তারা যেন সর্বদা সাইন-ইন প্রক্রিয়া শুরু করতে পারেন।
প্লেসমেন্ট কৌশল
গুগল দিয়ে সাইন ইন করুন বাটন:
- অবস্থান : আপনার নির্দিষ্ট সাইন-আপ বা সাইন-ইন পেজগুলিতে ‘Sign in with Google’ বাটনটি প্রদর্শন করুন।
- দৃশ্যমানতা : এটিকে অন্যান্য সাইন-ইন পদ্ধতি, যেমন ইউজারনেম ও পাসওয়ার্ড ফিল্ড অথবা অন্যান্য সোশ্যাল সাইন-ইন প্রোভাইডারদের পাশে সহজে চোখে পড়ার মতো জায়গায় রাখুন।
ক্রেডেনশিয়াল ম্যানেজার বটমশিট:
- ট্রিগার : আপনার সাইন-ইন পেজ চালু হলে বা অ্যাপটি শুরু হলে বটমশিটটি স্বয়ংক্রিয়ভাবে চালু হওয়া উচিত। ব্যবহারকারীর কোনো বাটনে ট্যাপ করার মাধ্যমে এটি চালু হওয়া উচিত নয় ।
- স্বয়ংক্রিয় সাইন-ইন : পুরনো ব্যবহারকারীদের জন্য, ক্রেডেনশিয়াল ম্যানেজারের মধ্যে স্বয়ংক্রিয় সাইন-ইন বিকল্পটি চালু করার জন্য বিশেষভাবে সুপারিশ করা হচ্ছে। এর ফলে, পূর্বে সম্মতি দেওয়া পুরনো ব্যবহারকারীরা কোনো রকম হস্তক্ষেপ ছাড়াই আপনার অ্যাপে পুনরায় সাইন ইন করতে পারবেন।
অ্যান্ড্রয়েড গেম
অ্যান্ড্রয়েড গেমের জন্য ক্রেডেনশিয়াল ম্যানেজার একটি প্রস্তাবিত পদ্ধতি নয়। এর পরিবর্তে, গেম ডেভেলপারদের গুগল প্লে গেমস সার্ভিসেস (পিজিএস) পদ্ধতি ব্যবহার করা উচিত, যা 'সাইন ইন উইথ গুগল' ব্যবহার করে ক্রস-প্ল্যাটফর্ম গুগল আইডেন্টিটির উপর গুরুত্ব দেয়। আপনি SiWG ডকুমেন্টেশনের 'ক্রস-প্ল্যাটফর্ম কন্টিনিউটি' অংশে এ বিষয়ে আরও তথ্য পেতে পারেন।
iOS বাস্তবায়ন
অফিসিয়াল সাইন ইন উইথ গুগল এসডিকে ব্যবহার করুন
iOS অ্যাপের জন্য, আপনার অফিসিয়াল 'Sign in with Google for iOS and macOS SDK' ব্যবহার করা উচিত। এই লাইব্রেরিটি 'Sign in with Google' ইন্টিগ্রেট করার সবচেয়ে নিরাপদ এবং ব্যবহারকারী-বান্ধব উপায় প্রদান করে।
বাস্তবায়নের জন্য iOS- এর OAuth ক্লায়েন্ট আইডি ব্যবহার করুন। যদি আপনার অন্যান্য প্ল্যাটফর্মে (যেমন ওয়েব, অ্যান্ড্রয়েড) ইতিমধ্যেই 'সাইন ইন উইথ গুগল' বাস্তবায়ন করা থাকে, তাহলে আপনাকে একই গুগল ক্লাউড প্রজেক্টে iOS টাইপের একটি নতুন OAuth ক্লায়েন্ট আইডি তৈরি করতে হবে।
'গুগল দিয়ে সাইন ইন করুন' বাটনটি যোগ করুন
- স্থান : আপনার অ্যাপের সাইন-ইন ভিউতে, সাইন-আপ এবং সাইন-ইন উভয় পেজেই "গুগল দিয়ে সাইন ইন করুন" বাটনটি যোগ করুন। এটিকে ইউজারনেম ও পাসওয়ার্ড ফিল্ড বা অন্যান্য সোশ্যাল সাইন-ইন প্রোভাইডারদের মতো অন্যান্য সাইন-ইন পদ্ধতির পাশে সহজে চোখে পড়ার মতো জায়গায় রাখুন।
- সুপারিশকৃত কম্পোনেন্ট ব্যবহার করুন : SwiftUI এবং UIKit উভয়ের জন্য SDK দ্বারা প্রদত্ত অফিসিয়াল বাটন কম্পোনেন্টগুলো ব্যবহার করুন। এই কম্পোনেন্টগুলো স্বয়ংক্রিয়ভাবে এমন একটি বাটন তৈরি করে যা গুগলের ব্র্যান্ডিং নির্দেশিকা মেনে চলে এবং বাটনটি প্রদর্শনের জন্য এটিই সুপারিশকৃত উপায়।
ব্যবহারকারীর সাইন-ইন অবস্থা পুনরুদ্ধার করুন
- নির্বিঘ্ন প্রত্যাবর্তন : আপনার অ্যাপ চালু হওয়ার সময়, যারা ইতিমধ্যে গুগল ব্যবহার করে প্রমাণীকরণ করেছেন, তাদের সাইন-ইন অবস্থা পুনরুদ্ধার করার চেষ্টা করতে
restorePreviousSignInকল করুন। এটি নিশ্চিত করে যে ফিরে আসা ব্যবহারকারীদের প্রতিবার আপনার অ্যাপ খোলার সময় সাইন ইন করতে হবে না, যা অন্যান্য প্ল্যাটফর্মের স্বয়ংক্রিয় সাইন-ইন-এর মতো একটি বাধাহীন অভিজ্ঞতা প্রদান করে।
অ্যাপ চেকের মাধ্যমে নিরাপত্তা জোরদার করুন
আপনার OAuth 2.0 ক্লায়েন্টের কাছে আসা অনুরোধগুলো আপনার আসল অ্যাপ থেকেই আসছে কিনা, তা যাচাই করে আপনার ব্যাকএন্ড রিসোর্সকে অপব্যবহার থেকে সুরক্ষিত রাখুন। অ্যাপ চেক একটি অ্যাটেস্টেশন প্রোভাইডার ব্যবহার করে যাচাই করে যে অনুরোধগুলো আপনার অ্যাপের একটি আসল, অপরিবর্তিত ইনস্ট্যান্স থেকে এসেছে এবং যেগুলো তা নয়, সেগুলোকে প্রত্যাখ্যান করে। আরও বিস্তারিত জানতে iOS-এ Google Sign-in-এর জন্য অ্যাপ চেক দেখুন।
ওয়েব বাস্তবায়ন
ওয়েবসাইট ও ওয়েব অ্যাপ্লিকেশন সংক্রান্ত নির্দেশিকা।
অফিসিয়াল 'সাইন ইন উইথ গুগল' জাভাস্ক্রিপ্ট লাইব্রেরি ব্যবহার করুন
ওয়েব বাস্তবায়নের জন্য, আপনার অফিসিয়াল ‘সাইন ইন উইথ গুগল’ জাভাস্ক্রিপ্ট লাইব্রেরি ব্যবহার করা উচিত। এটি ওয়েবের জন্য গুগলের আইডেন্টিটি লাইব্রেরিগুলোর সর্বশেষ সংস্করণ এবং এতে বাটন ও ওয়ান ট্যাপ উভয় ফিচারই অন্তর্ভুক্ত রয়েছে।
বাস্তবায়নের জন্য ওয়েব-এর জন্য OAuth ক্লায়েন্ট আইডি ব্যবহার করুন। যদি আপনার অন্যান্য প্ল্যাটফর্মে (যেমন অ্যান্ড্রয়েড, আইওএস) ইতিমধ্যেই 'সাইন ইন উইথ গুগল' বাস্তবায়ন করা থাকে, তাহলে আপনাকে একই গুগল ক্লাউড প্রজেক্টে একটি নতুন 'ওয়েব' টাইপের OAuth ক্লায়েন্ট আইডি তৈরি করতে হবে।
বাটন এবং ওয়ান ট্যাপ উভয় ফ্লো বাস্তবায়ন করুন
"গুগল দিয়ে সাইন ইন করুন" বাটন এবং এক ট্যাপে সাইন-ইন করার সুবিধা, উভয়ই বাস্তবায়ন করা একটি উত্তম অভ্যাস।
- গুগল দিয়ে সাইন ইন করুন বাটন : এটি হলো ব্যবহারকারীর স্বতঃপ্রণোদিত সাইন-ইন/আপ করার প্রক্রিয়া।
- এক ট্যাপে : এটি কোনো বাধা ছাড়াই সাইন-ইন বা সাইন-আপ করার সুবিধা দেয়।
- উভয় বাস্তবায়নের জন্য ওয়েবের ক্ষেত্রে একই OAuth ক্লায়েন্ট আইডি ব্যবহার করুন।
আপনার সবসময় বাটনটিকে একটি প্রাথমিক সাইন-ইন বিকল্প হিসেবে অন্তর্ভুক্ত করা উচিত। ব্যবহারকারীরা তাদের গুগল অ্যাকাউন্ট সেটিংসে ওয়ান ট্যাপ বাতিল বা নিষ্ক্রিয় করতে পারেন, কিন্তু বাটনটি সর্বদা উপলব্ধ থাকবে, যা নিশ্চিত করে যে ব্যবহারকারীরা সাইন ইন করতে কখনও বাধাগ্রস্ত হবেন না।
প্লেসমেন্ট কৌশল
গুগল দিয়ে সাইন ইন করুন বাটন:
- অবস্থান : আপনার নির্দিষ্ট সাইন-আপ বা সাইন-ইন পেজগুলিতে ব্যক্তিগতকৃত ‘গুগল দিয়ে সাইন ইন করুন’ বাটনটি প্রদর্শন করুন।
- মনে রাখবেন যে এমন কোনো একক প্যাটার্ন নেই যা সব সাইটের জন্য সবচেয়ে ভালো কাজ করে (যেমন রিডাইরেক্ট বনাম পপআপ )। আপনার ওয়েব ডিজাইন বা ইউএক্স টিমের উচিত সাইন-আপ এবং সাইন-ইন উভয়েরই সম্পন্ন হওয়ার হার সর্বোচ্চ করতে এই ফ্লোগুলো পরীক্ষা ও অপ্টিমাইজ করা।
- দৃশ্যমানতা : এটিকে অন্যান্য সাইন-ইন পদ্ধতি, যেমন ইউজারনেম ও পাসওয়ার্ড ফিল্ড অথবা অন্যান্য সোশ্যাল সাইন-ইন প্রোভাইডারদের পাশে সহজে চোখে পড়ার মতো জায়গায় রাখুন।
- পর্যালোচনা : সর্বোত্তম কনফিগারেশন ও পারফরম্যান্সের জন্য ‘গুগল দিয়ে সাইন ইন করুন’ বাটনটির বিবেচ্য বিষয়সমূহ।
- অবস্থান : আপনার নির্দিষ্ট সাইন-আপ বা সাইন-ইন পেজগুলিতে ব্যক্তিগতকৃত ‘গুগল দিয়ে সাইন ইন করুন’ বাটনটি প্রদর্শন করুন।
এক ট্যাপে প্রম্পট:
- অবস্থান : আপনার ওয়েবসাইটের একাধিক পৃষ্ঠায়, যেমন স্বতন্ত্র পণ্যের পৃষ্ঠা, নিবন্ধের পৃষ্ঠা, এমনকি হোম পেজেও ওয়ান ট্যাপ প্রম্পটটি প্রদর্শন করুন। ওয়ান ট্যাপের মূল সুবিধা হলো, এটি ব্যবহারকারীদের তাদের বর্তমান পৃষ্ঠা থেকে অন্য পৃষ্ঠায় না গিয়েই সাইন ইন করতে বা একটি অ্যাকাউন্ট তৈরি করতে দেয়।
- স্বয়ংক্রিয় সাইন-ইন : পুরনো ব্যবহারকারীদের জন্য, ওয়ান ট্যাপ-এর মধ্যে স্বয়ংক্রিয় সাইন-ইন বিকল্পটি চালু করার জন্য বিশেষভাবে সুপারিশ করা হচ্ছে। এর ফলে, পূর্বে সম্মতি দেওয়া পুরনো ব্যবহারকারীরা কোনো রকম হস্তক্ষেপ ছাড়াই আপনার অ্যাপে পুনরায় সাইন ইন করতে পারবেন।
- পর্যালোচনা : সর্বোত্তম কনফিগারেশন ও পারফরম্যান্সের জন্য ওয়ান ট্যাপ সংক্রান্ত বিবেচ্য বিষয়সমূহ।