اصالت‌سنجی برای دسترسی‌های اولیه

از ویکی‌پدیا، دانشنامهٔ آزاد
پرش به: ناوبری، جستجو

در انتقال محتوای اچ‌تی‌تی‌پی (HTTP) تشخیص هویت پایه و اصالت‌سنجی برای دسترسی‌های اولیه (Basic access authentication) یکی از روش‌های مرورگرها و رایانه‌ها در هنگام درخواست‌هایشان است.

قبل از انتقال نام کاربری به اضافه یک دو نقطه به رمز عبور اتصال داده می‌شود. رشتهٔ حاصل بر اساس یک الگوریتم ۶۴ بیتی کدگذاری می‌شود. برای مثال نام کاربری "Aladdin" و رمز عبور "open sesame" به صورت رشته "Aladdin:open sesame" متصل می‌گردد. نتیجه کد شده رشته حاصل برابر با "QWzhZGRpbjpvcGVuIHNlc2FtZQ==" خواهد بود.

اگر چه رشته کد شد نام کاربری و رمز عبور را غیر قابل خواندن می‌کند اما نرم‌افزارها به سادگی می‌توانند آن را کدگشایی نمایند. اچ‌تی‌تی‌پی هیچ ضمانتی در مورد امنیت اطلاعات انتفالی مانند HTTPS فراهم نمی‌کند. تشخیص هویت پایه در ۱۹۹۶ در RFC 1945 تعریف شد. اطلاعات بیشتر در مورد مسائل امنیتی را می‌توانید در RFC 2616 و RFC 2617 بیابید. HTTP/1.1 تشخیص هویت پایه و تشخیص هویت خلاصه را پشتیبانی می‌کند.

مزایا[ویرایش]

تمامی مرورگرها تشخیص هویت پایه را پشتیبانی می‌کنند. اما نام کاربری و رمز عبور را به صورت متن بدون رمزنگاری ارسال می‌کند و به همین خاطر در دسترسی‌های عمومی وب مورد استفاده قرار می‌گیرد. اگر چه می توان آن را با SSL/TLS ترکیب نمود. کاربرد SSL/TSL برای این است که تمام محتوای انتقالی را رمز نماید بهمین دلیل کمتر از تشخیص هویت پایه استفاده می‌شود. بیشتر مرورگرهای یه هشدار در مورد سایت‌هایی که از تشخیص هویت پایه بدون SSL/TSL استفاده می‌کنند به کاربر نمایش می‌دهند، اما در هنگام استفاده همزمان آنها با یکدیگر هشداری نمایش نمی‌دهند. مکانیزم جایگزین، تشخیص هویت خلاصه، توسعه داده شد تا روشی برای عبور دسترسی‌ها در ارتباطات غیر امن باشد. نرم‌افزارها و سیستم‌های مدیریتی بعضی اوقات از تشخیص هویت پایه (در شبکه‌های مورد اعتماد) استفاده می‌کنند. این فرایند دست و پا گیر است، اما ترافیک شبکه‌است که توسط انسان قابل خواندن برای اهداف اشکال زدایی است. یکی از مزیت‌های دیگر تشخیص هویت پایه این است جلوگیری از مشکلاتی پروتکل‌هایی از قبیل NTLM است.

معایت[ویرایش]

اگرچه این طرح به راحتی اجرا شود، اما بر این فرض که ارتباط بین کامپیوتر مشتری و سرور امن است و می‌تواند قابل اعتماد باشد، متکی است. به طور خاص، اگر SSL / TLS استفاده نشود، دسترسی به عنوان متنی ساد عبور می‌کند. مرورگرهای موجود اطلاعات احراز هویت را تا زمانی که تب و یا مرورگر بسته نشده‌است و یا کاربر تاریخچه مرورگر را پاک نکند حفظ می‌نماید. اچ‌تی‌تی‌پی یک روش برای اینکه سرور بتواند به کاربر دسترسی مستقیم برای حدف این اطلاعات کش شده بدهد، ندارد. این به این معنی است که هیچ روش موثری برای خروج از یک سرور بدون بستن مرورگر وجود ندارد. این یک نقص قابل توجه‌است که نیاز خروج را به تولید کنندگان مرورگر تحمیل می‌کند که می‌توانند از API مانند جاوا اسکریپت، که به اچ‌تی‌تی‌پی اضافه می‌شود، و یا از تکنیک‌های موجود از قبیل SSL / TLS که یک رشته را غیر قابل حدص می‌کند استفاده نماید.

مثال[ویرایش]

مراحلی که در انتقال داده بین یک کاربر و یک سرور اچ‌تی‌تی‌پی قرار دارد:

  • سرویس گیرنده درخواست یک صفحه که نیاز به احراز هویت نام کاربری و رمز عبور ندارد را می‌کند، معمولاً به این دیلی است که کاربر به سادگی وارد آدرس شده و یا به دنبال یک لینک به این صفحه وارد شود.
  • پاسخ سرور با کد۴۰۱ کاربر را صفحه احراز هویت هدایت می‌کند.
  • در این مرحله، قلمرو احراز هویت به کاربر ارائه داده می‌شود و بی درنگ نام کاربری و رمز عبور از او درخواست، کاربر می‌تواند اینمرحله را لغو کند.
  • کاربر یک نام کاربری و رمز عبور را به صورت رمز شده به سوی سرور ارسال می‌کند.
  • در این مثال، سرور احراز هویت را می‌پذیرد و صفحه برگردانده می‌شود، اگر نام کاربر نامعتبر باشد و یا رمز عبور نادرست باشد، سرور ممکن است پاسخ کد ۴۰۱ و بازگشت مشتری به صفحه تشخیص هویت است.

منابع[ویرایش]

Wikipedia contributors، "Basic access authentication،" Wikipedia، The Free Encyclopedia، http://en.wikipedia.org/w/index.php?title=Basic_access_authentication&oldid=501934063 (accessed July 14، 2012).