DAT چیست؟
DAT (Distributed Access Token) مشخصات توکن دسترسیای است که سرویس صدور و سرویس راستیآزمایی با اشتراک گواهی یکسان از آن استفاده میکنند. چون برای راستیآزمایی نیازی به درخواست دوباره از سرویس صدور یا مخزن مرکزی نشست نیست، میتوان نتیجه احراز هویت را با کاهش وابستگی میان سرویسها منتقل کرد.
اجزا
DAT
رشتهای است که کاربر یا سرویس همراه درخواست ارسال میکند. شامل زمان انقضا و شناسه گواهی است و میتواند همزمان داده عمومی و رمزگذاریشده را در خود جای دهد.
گواهی
الگوریتمها، کلیدها و بازههای زمانی لازم برای ساختن و بررسی DAT را نگه میدارد. cid که شناسه گواهی است تغییر نمیکند؛ هنگام چرخش کلید از cid جدید استفاده میشود.
مدیر
مدیر کتابخانه کلاینت گواهیها را نگه میدارد، DAT را با گواهیای که اکنون قابل صدور است میسازد و آن را با گواهی مطابق cid راستیآزمایی میکند.
DAT CMS
سروری اختیاری است که گواهیها را ایجاد و نگهداری کرده و به سرویسها میرساند. میتواند گواهی کامل را به سرویس صدور و گواهی فقط راستیآزمایی را به سرویسی که فقط راستیآزمایی میکند ارائه دهد.
صدور و راستیآزمایی
سرویس صدور، دادههای plain و secure را تعیین کرده و DAT میسازد. سرویس راستیآزمایی پس از بررسی زمان انقضا، امضا و متن رمزشده، هر دو بخش داده را به برنامه میدهد. plain امضا میشود اما رمزگذاری نمیشود، پس اسرار یا اطلاعات شخصی را در آن قرار ندهید.
چرا با تغییر گواهی هم راستیآزمایی ممکن است؟
وقتی گواهی جدید قابل صدور میشود، DATهای بعدی از cid جدید استفاده میکنند. گواهی قبلی تا پایان TTL توکنهایی که پیشتر صادر شدهاند برای راستیآزمایی باقی میماند. بنابراین میتوان چرخش کلید و دوره راستیآزمایی توکنهای موجود را با هم اداره کرد.
مناسب چه محیطی است؟
- محیطی که احراز هویت و قابلیت واقعی در سرویسهای مختلف انجام میشود
- محیطی که چند زمان اجرایی باید توکن یکسانی را صادر یا راستیآزمایی کنند
- محیطی که میخواهد بدون پرسوجوی مرکزی نشست، اطلاعات مجوز کوتاهعمر را منتقل کند
- محیطی که باید اطلاعات عمومی مسیریابی و داده محافظتشده را در یک توکن جدا نگه دارد
DAT خود سیاست مجوز را تعریف نمیکند. معتبر بودن DAT با تصمیم برنامه برای مجاز دانستن درخواست، دو موضوع جداگانهاند.
سند بعدی
- مشخصات DAT: فیلدهای توکن و قواعد راستیآزمایی
- گواهی: کلیدها و بازههای زمانی
- مشخصات DAT CMS: قرارداد همگامسازی
- کتابخانهها: بهکارگیری در برنامه