بسیاری از سازمانها برای راهاندازی تارنمای داخلی خود از کارساز وب آپاچی استفاده میکنند.
در بسیاری از موارد لازم است تا دسترسی کاربران به تارنمای محلی با استفاده از شناسهی کاربری در شبکهی دامین صورت پذیرد. ارتباط مستقیم با شبکه و تعیین هویت کاربران از طریق کدنویسی php فرآیند پیچیده است. یک راه حل ساده برای حل این مشکل استفاده از افزونهی mod_auth_sspi آپاچی است که عملیات تشخیص هویت را به صورت خودکار انجام میدهد و در صورت تایید، شناسهی کاربر را در متغیرهای SERVER جاسازی میکند.
برای دریافت افزونهی mod_auth_sspi اینجا کلیک کنید
پس از دریافت افزونه، لازم است تا فایل mod_auth_sspi.so را به شاخهی افزونههای آپاچی منتقل کنید و سپس تنظیمات راهاندازی آن را در فایل httpd.conf به انجام برسانید.
ابتدا دستورات زیر را به فایل httpd.conf بیفزایید:
<IfModule !mod_auth_sspi.c> LoadModule sspi_auth_module modules/mod_auth_sspi.so </IfModule> |
هماکنون دو انتخاب در پیشرو دارید. انتخاب نخست، راهاندازی سیستم تشخیص هویت برای تمامی شاخهها و انتخاب دوم، راهاندازی برای شاخهای ویژه.
تنها تفاوت دو حالت گفته شده، در نیاز به تگ Directory و تگ Files است:
<Directory "d:/htdocs/protected"> <Files protected.php> AuthName "Authentication Name" AuthType SSPI SSPIAuth On SSPIOfferBasic Off SSPIAuthoritative On SSPIDomain yourdomain.com require valid-user </Files> </Directory> |
توجه شما را به استفاده از «/» در مسیرها جلب میکنم
هماکنون هر کاربر برای دسترسی به شاخه و فایل مورد نظر لازم است تا بر اساس کاربر دامین تشیص هویت شود.
مرورگر Internet Explorer به صورت خودکار کاربر فعال در ویندوز را تایید هویت میکند. در نتیجه کاربرانی که از این مرورگر استفاده کنند، با مانعی مواجه نمیشوند. ولی مرورگر Firefox نام کاربری و گذرواژهی دامین را از کاربران پرسش میکند.
پس از اینکه فرآیند تشخیص هویت به پایان رسید، متغیر $_SERVER[ 'REMOTE_USER' ] در php حاوی نام کاربر واردشده خواهد بود که به سادگی قابل استفاده است.