.NET-এর জন্য Google APIs ক্লায়েন্ট লাইব্রেরি client_id , client_secret , এবং অন্যান্য OAuth 2.0 প্যারামিটার সংরক্ষণের জন্য client_secrets.json ফাইল ব্যবহার করে।
একটি client_secrets.json ফাইল হল একটি JSON ফর্ম্যাট করা ফাইল যাতে ক্লায়েন্ট আইডি, ক্লায়েন্ট সিক্রেট এবং অন্যান্য OAuth 2.0 প্যারামিটার থাকে। এখানে একটি ওয়েব অ্যাপ্লিকেশনের জন্য client_secrets.json ফাইলের একটি উদাহরণ রয়েছে:
{
"web": {
"client_id": "asdfjasdljfasdkjf",
"client_secret": "1912308409123890",
"redirect_uris": ["https://www.example.com/oauth2callback"],
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
"token_uri": "https://accounts.google.com/o/oauth2/token"
}
} একটি ইনস্টল করা অ্যাপ্লিকেশনের জন্য এখানে একটি উদাহরণ client_secrets.json ফাইল রয়েছে:
{
"installed": {
"client_id": "837647042410-75ifg...usercontent.com",
"client_secret":"asdlkfjaskd",
"redirect_uris": ["http://localhost"],
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
"token_uri": "https://accounts.google.com/o/oauth2/token"
}
}বিন্যাস দুটি ক্লায়েন্ট আইডি প্রকারের একটিকে সংজ্ঞায়িত করে:
-
web: ওয়েব অ্যাপ্লিকেশন। -
installed: ইনস্টল করা অ্যাপ্লিকেশন।
web এবং installed সাব-অবজেক্টের নিম্নলিখিত বাধ্যতামূলক সদস্য রয়েছে:
-
client_id(স্ট্রিং): ক্লায়েন্ট আইডি। -
client_secret(স্ট্রিং): ক্লায়েন্ট সিক্রেট।
এই ফাইলের অন্য সব সদস্য ঐচ্ছিক এবং .NET ক্লায়েন্ট লাইব্রেরি তাদের ব্যবহার করে না।
প্রেরণা
ঐতিহ্যগতভাবে, OAuth 2.0 এন্ডপয়েন্টের প্রদানকারীরা আশা করে যে যারা তাদের পরিষেবাগুলি ব্যবহার করে ক্লায়েন্ট আইডি এবং ক্লায়েন্ট সিক্রেট একটি রেজিস্ট্রেশন পৃষ্ঠা থেকে কার্যকারী কোডে কপি এবং পেস্ট করতে। এই পদ্ধতিটি ত্রুটি-প্রবণ এবং OAuth 2.0 কাজ করার জন্য প্রয়োজনীয় তথ্যের একটি অসম্পূর্ণ ছবি দেয়। (OAuth 2.0-এর জন্যও সমস্ত শেষ পয়েন্ট জানার প্রয়োজন, এবং একটি পুনঃনির্দেশিত URI কনফিগার করা প্রয়োজন।) যদি পরিষেবা প্রদানকারীরা ডাউনলোডযোগ্য client_secrets.json ফাইলগুলি সরবরাহ করে এবং ক্লায়েন্ট লাইব্রেরিগুলি এই ফাইলগুলি ব্যবহার করার জন্য প্রস্তুত থাকে, তাহলে OAuth 2.0 বাস্তবায়ন করা সহজ হবে এবং ত্রুটির ঝুঁকি কম হবে৷