DAT কী?
DAT (Distributed Access Token) হলো একই সার্টিফিকেট ভাগ করা ইস্যুকারী ও যাচাইকারী সার্ভিসের ব্যবহৃত access-token স্পেসিফিকেশন। যাচাইয়ের জন্য ইস্যুকারী সার্ভিস বা কেন্দ্রীয় session store-এ আরেকটি অনুরোধ লাগে না, তাই কম ঘনিষ্ঠভাবে যুক্ত সার্ভিসগুলোর মধ্যে প্রমাণীকরণের ফল পাঠানো যায়।
উপাদান
DAT
ব্যবহারকারী বা সার্ভিস অনুরোধের সঙ্গে যে string পাঠায়। এতে মেয়াদ শেষ হওয়ার সময় ও সার্টিফিকেট ID থাকে এবং পাবলিক ও এনক্রিপ্ট করা ডেটা দুটোই বহন করতে পারে।
সার্টিফিকেট
DAT তৈরি ও যাচাইয়ের প্রয়োজনীয় algorithms, কী এবং সময়সীমা রাখে। সার্টিফিকেট ID cid অপরিবর্তনীয়; কী পরিবর্তনের সময় নতুন cid ব্যবহার করুন।
ম্যানেজার
ক্লায়েন্ট লাইব্রেরির ম্যানেজার সার্টিফিকেট সংরক্ষণ করে, বর্তমানে ইস্যুযোগ্য সার্টিফিকেট দিয়ে DAT তৈরি করে এবং প্রতিটি DAT তার cid-এর সঙ্গে মেলা সার্টিফিকেট দিয়ে যাচাই করে।
DAT CMS
ঐচ্ছিক সার্ভার যা সার্টিফিকেট তৈরি, সংরক্ষণ এবং সার্ভিসে বিতরণ করে। এটি ইস্যুকারী সার্ভিসকে পূর্ণ সার্টিফিকেট এবং শুধু টোকেন যাচাইকারী সার্ভিসকে verify-only সার্টিফিকেট দিতে পারে।
ইস্যু ও যাচাই
ইস্যুকারী সার্ভিস plain ও secure ডেটা বেছে DAT তৈরি করে। যাচাইকারী সার্ভিস দুই ডেটা অঞ্চল অ্যাপ্লিকেশনে দেওয়ার আগে মেয়াদ, স্বাক্ষর ও ciphertext যাচাই করে। plain স্বাক্ষরিত হলেও এনক্রিপ্ট করা নয়, তাই এতে গোপন বা ব্যক্তিগত ডেটা রাখবেন না।
সার্টিফিকেট বদলালেও যাচাই কেন চলে
নতুন সার্টিফিকেট ইস্যুযোগ্য হলে পরবর্তী DAT তার নতুন cid ব্যবহার করে। আগের সার্টিফিকেট তার ইস্যু করা প্রতিটি DAT-এর TTL শেষ হওয়া পর্যন্ত যাচাইয়ের জন্য থাকে। এতে কী পরিবর্তন ও বিদ্যমান টোকেনের যাচাইকাল একসঙ্গে পরিচালিত হয়।
DAT যেখানে উপযোগী
- যে পরিবেশে প্রমাণীকরণ ও অ্যাপ্লিকেশন ফিচার আলাদা সার্ভিস পরিচালনা করে
- যে পরিবেশে একাধিক runtimes একই token format ইস্যু বা যাচাই করে
- কেন্দ্রীয় session lookup ছাড়া স্বল্পমেয়াদি authorization ডেটা বহনকারী সিস্টেম
- একটি টোকেনে পাবলিক routing তথ্য ও সুরক্ষিত ডেটা আলাদা রাখা প্রয়োজন এমন সিস্টেম
DAT নিজে authorization policy নির্ধারণ করে না। বৈধ DAT এবং অনুরোধ অনুমোদনের অ্যাপ্লিকেশন সিদ্ধান্ত আলাদা বিষয়।
পরবর্তী ধাপ
- DAT স্পেসিফিকেশন: টোকেন ফিল্ড ও যাচাইয়ের নিয়ম
- সার্টিফিকেট: কী ও সময়সীমা
- DAT CMS স্পেসিফিকেশন: সিঙ্ক্রোনাইজেশন চুক্তি
- লাইব্রেরি: অ্যাপ্লিকেশন ইন্টিগ্রেশন