مدیریت دسترسی کاربران سایت چگونه انجام میشود؟
مدیریت دسترسی کاربران سایت یعنی مشخص شود هر فرد با چه حسابی وارد سایت میشود، چه بخشهایی را میتواند ببیند یا تغییر دهد و چه سطحی از دسترسی برای انجام وظایفش لازم دارد. این موضوع در سایتهای کوچک هم اهمیت دارد، اما با افزایش تعداد کاربران، مدیران، نویسندگان، پشتیبانها یا توسعهدهندگان، اهمیت آن بیشتر میشود.
اگر همه افراد با یک حساب مدیر وارد سایت شوند، تشخیص مسئولیتها دشوار میشود و در صورت افشای رمز عبور، بخش بزرگی از سایت در معرض خطر قرار میگیرد. روش حرفهای این است که هر شخص حساب اختصاصی و دسترسی متناسب با وظیفه خود داشته باشد.
مدیریت دسترسی کاربران چرا اهمیت دارد؟
امنیت سایت فقط به رمز عبور قوی محدود نمیشود. حتی اگر رمزهای عبور مناسب باشند، اعطای دسترسی بیشتر از نیاز واقعی میتواند یک ریسک امنیتی ایجاد کند.
برای مثال، نویسنده محتوا معمولاً برای انتشار یا ویرایش محتوا به دسترسی کامل به تنظیمات سایت، افزونهها یا اطلاعات کاربران نیاز ندارد.
بنابراین یکی از اصول مهم مدیریت دسترسی این است که هر کاربر فقط مجوزهایی را دریافت کند که برای انجام وظیفه خود به آنها نیاز دارد.
این رویکرد با اصل «حداقل سطح دسترسی» یا Least Privilege شناخته میشود و یکی از مفاهیم مهم در امنیت سیستمها و برنامههای وب است. (OWASP – Least Privilege)
آیا همه کاربران سایت باید حساب جداگانه داشته باشند؟
در حالت حرفهای، هر فردی که به بخش مدیریتی سایت دسترسی دارد بهتر است حساب کاربری مستقل داشته باشد.
استفاده چند نفر از یک نام کاربری و رمز عبور، چند مشکل ایجاد میکند:
* مشخص نیست چه کسی تغییری در سایت ایجاد کرده است.
* در صورت تغییر رمز، دسترسی همه افراد تحت تأثیر قرار میگیرد.
* حذف دسترسی یک شخص بدون تغییر اطلاعات ورود مشترک دشوار است.
* در صورت افشای رمز، مشخص نیست چه افرادی هنوز از آن استفاده میکنند.
حساب اختصاصی باعث میشود دسترسی هر فرد جداگانه مدیریت شود و در صورت پایان همکاری بتوان همان حساب را غیرفعال یا حذف کرد.
سطح دسترسی کاربران سایت چگونه تعیین میشود؟
سطح دسترسی باید بر اساس وظیفه واقعی فرد تعیین شود، نه بر اساس عنوان شغلی یا اعتماد شخصی.
برای مثال ممکن است در یک سایت این افراد دسترسی داشته باشند:
مدیر سایت
میتواند تنظیمات اصلی و بخشهای حساس سایت را مدیریت کند.
نویسنده محتوا
به بخشهای مربوط به تولید و مدیریت محتوا دسترسی دارد، اما معمولاً نیازی به مدیریت تنظیمات فنی سایت ندارد.
پشتیبان فنی
ممکن است برای انجام تعمیرات یا بهروزرسانیهای فنی به دسترسیهای بیشتری نیاز داشته باشد، اما این دسترسی نباید بیش از نیاز واقعی او باشد.
کاربر عادی
ممکن است فقط بتواند از خدمات سایت استفاده کند و هیچ دسترسی مدیریتی نداشته باشد.
بنابراین یک مدل مناسب برای همه سایتها وجود ندارد و نقشها باید با ساختار واقعی سایت هماهنگ شوند.
آیا دادن دسترسی مدیر به همه افراد کار درستی است؟
خیر.
یکی از اشتباهات رایج این است که برای راحتی کار، تمام افرادی که با سایت همکاری میکنند به سطح مدیر کل دسترسی پیدا کنند.
ممکن است این کار در کوتاهمدت سادهتر باشد، اما در بلندمدت سطح ریسک را افزایش میدهد.
اگر یک حساب مدیریتی مورد سوءاستفاده قرار گیرد، مهاجم یا کاربر دارای آن حساب ممکن است بتواند بخشهای گستردهای از سایت را تغییر دهد.
به همین دلیل بهتر است ابتدا نیاز واقعی هر شخص مشخص شود و سپس کمترین سطح دسترسی لازم در اختیار او قرار گیرد.
دسترسی کاربران سایت چه زمانی باید بازبینی شود؟
مدیریت دسترسی یک کار یکباره نیست.
هر زمان که یکی از شرایط زیر تغییر کند، بهتر است دسترسیها نیز بررسی شوند:
* یک کارمند یا همکار جدید به تیم اضافه شود.
* همکاری یک فرد پایان پیدا کند.
* مسئولیت یک شخص تغییر کند.
* یک پروژه موقت تمام شود.
* دسترسی فنی برای تعمیر یا توسعه سایت ایجاد شده باشد.
* ساختار سایت یا سیستم مدیریت آن تغییر کند.
برای مثال اگر یک توسعهدهنده برای انجام یک کار موقت به دسترسی مدیریتی نیاز دارد، پس از پایان کار باید مشخص شود آیا همچنان به آن دسترسی نیاز دارد یا خیر.
بعد از پایان همکاری با یک شخص چه باید کرد؟
یکی از مهمترین مراحل مدیریت دسترسی، قطع دسترسی افرادی است که دیگر مسئولیتی در سایت ندارند.
این موضوع ممکن است شامل موارد زیر باشد:
* حساب وردپرس
* حساب هاست
* حساب دامنه
* ایمیل مدیریتی
* سرویسهای خارجی
* ابزارهای تحلیل
* سیستمهای پشتیبانگیری
* پنلهای مدیریتی دیگر
حذف یک حساب از وردپرس بهتنهایی کافی نیست اگر همان شخص هنوز به هاست یا سرویس دیگری دسترسی داشته باشد.
بنابراین هنگام پایان همکاری باید تمام مسیرهای دسترسی بررسی شوند.
آیا دسترسی طراح سایت باید بعد از تحویل حذف شود؟
لزوماً نه.
اگر طراح یا شرکت طراحی پس از تحویل پروژه مسئول پشتیبانی فنی باشد، ممکن است همچنان به برخی بخشهای سایت نیاز داشته باشد.
مسئله اصلی این است که این دسترسی باید تعریفشده، محدود و قابل مدیریت باشد.
برای مثال، اگر شخصی فقط برای پشتیبانی فنی نیاز به دسترسی دارد، بهتر است این دسترسی با هدف مشخص و سطح مناسب ایجاد شود و مالک سایت نیز بتواند در صورت پایان همکاری آن را غیرفعال کند.
این موضوع در زمان تحویل پروژه اهمیت ویژهای دارد و بهتر است همراه با سایر موارد تحویل سایت بررسی شود. برای آشنایی بیشتر با این مرحله، مقاله (نکات امنیتی هنگام تحویل پروژه سایت چیست؟) را مطالعه کنید.
راهنمای لینک داخلی
نکات امنیتی هنگام تحویل پروژه سایت چیست؟
مقصد: مقاله شماره ۳ دسته نهم.
آیا حساب مدیر اصلی باید بین چند نفر مشترک باشد؟
بهتر است چنین کاری انجام نشود.
اگر چند نفر از یک حساب مدیر استفاده کنند، مشخص کردن اینکه چه کسی یک تغییر خاص را انجام داده دشوارتر میشود.
همچنین وقتی همکاری یکی از افراد پایان پیدا میکند، معمولاً مجبور میشوید رمز همان حساب مشترک را تغییر دهید و دوباره آن را در اختیار افراد باقیمانده قرار دهید.
حسابهای جداگانه این فرآیند را سادهتر میکنند.
در سایتهای حساستر، علاوه بر حسابهای جداگانه، فعال کردن احراز هویت دومرحلهای برای حسابهای مهم نیز میتواند یک لایه امنیتی دیگر ایجاد کند. (WordPress)
آیا کاربران وردپرس باید نقش مشخص داشته باشند؟
بله.
وردپرس از سیستم نقشها و قابلیتها برای تعیین سطح دسترسی کاربران استفاده میکند. نقشهایی مانند Administrator، Editor، Author، Contributor و Subscriber برای سناریوهای مختلف در نظر گرفته شدهاند.
اما نباید صرفاً بر اساس نام نقش تصمیم گرفت.
باید بررسی شود هر نقش در نسخه و ساختار واقعی سایت چه قابلیتهایی دارد و آیا این سطح دسترسی با وظیفه کاربر متناسب است یا خیر.
همچنین افزونهها میتوانند نقشها و قابلیتهای جدیدی ایجاد کنند یا سطح دسترسی نقشهای موجود را تغییر دهند.
به همین دلیل، بررسی دسترسی واقعی کاربران مهمتر از صرفاً مشاهده نام نقش آنهاست.
آیا افزونهها میتوانند روی دسترسی کاربران تأثیر بگذارند؟
بله.
برخی افزونهها قابلیتها و نقشهای جدیدی به وردپرس اضافه میکنند یا امکان دسترسی به بخشهای خاصی را در اختیار نقشهای مختلف قرار میدهند.
بنابراین ممکن است دو کاربر که ظاهراً نقش یکسانی دارند، به دلیل تنظیمات افزونهها دقیقاً دسترسی یکسانی نداشته باشند.
به همین دلیل پس از نصب افزونههای مهم یا تغییر ساختار سایت، بهتر است نقشها و قابلیتهای کاربران دوباره بررسی شوند.
این موضوع یکی از دلایلی است که مدیریت افزونهها نیز بخشی از نگهداری امنیتی سایت محسوب میشود. برای مطالعه بیشتر میتوانید مقاله (افزونههای وردپرس را چگونه مدیریت کنیم؟) را ببینید.
راهنمای لینک داخلی
افزونههای وردپرس را چگونه مدیریت کنیم؟
مقصد: مقاله شماره ۷ دسته نهم.
دسترسی موقت برای پشتیبانی فنی چگونه مدیریت شود؟
گاهی یک متخصص برای رفع مشکل، بهروزرسانی یا توسعه سایت به دسترسی مدیریتی نیاز دارد.
در چنین شرایطی بهتر است دسترسی به اندازه نیاز پروژه ایجاد شود.
اگر سیستم اجازه میدهد، میتوان حساب جداگانهای برای متخصص ایجاد کرد و پس از پایان کار آن را غیرفعال یا حذف کرد.
این روش از قرار دادن رمز حساب اصلی سایت در اختیار افراد متعدد جلوگیری میکند و کنترل مالک سایت را افزایش میدهد.
آیا باید فهرستی از کاربران و دسترسیهای آنها داشته باشیم؟
برای سایتهای حرفهای، داشتن چنین فهرستی بسیار مفید است.
این فهرست میتواند شامل موارد زیر باشد:
* نام یا شناسه کاربر
* نقش کاربر
* دلیل دسترسی
* بخشهایی که به آنها دسترسی دارد
* وضعیت فعال یا غیرفعال بودن حساب
* مسئول مربوط به حساب
* تاریخ آخرین بازبینی دسترسی
این اطلاعات کمک میکند هنگام تغییر اعضای تیم یا پایان همکاری، هیچ حسابی بهصورت تصادفی فراموش نشود.
آیا دسترسی کاربران باید بهصورت دورهای بررسی شود؟
بله.
ممکن است حسابی ماهها یا حتی سالها بدون استفاده باقی بماند، در حالی که هنوز فعال است.
همچنین ممکن است فردی ابتدا برای یک وظیفه مشخص دسترسی گرفته باشد اما بعداً مسئولیت او تغییر کرده باشد.
به همین دلیل بهتر است در برنامه نگهداری سایت، بازبینی کاربران و دسترسیها نیز قرار بگیرد.
برای آشنایی با سایر کارهایی که باید پس از راهاندازی سایت بهصورت دورهای انجام شوند، مقاله (بعد از تحویل سایت چه کارهایی باید بهصورت دورهای انجام شود؟) را مطالعه کنید.
راهنمای لینک داخلی
بعد از تحویل سایت چه کارهایی باید بهصورت دورهای انجام شود؟
مقصد: مقاله شماره ۹ دسته نهم.
در مدیریت دسترسی کاربران چه اشتباهاتی رایج است؟
چند اشتباه در بسیاری از پروژهها تکرار میشود.
استفاده از یک حساب مشترک
چند نفر از یک نام کاربری و رمز عبور استفاده میکنند.
دادن دسترسی مدیر به همه افراد
برای سادهتر شدن کار، سطح دسترسی بیش از نیاز واقعی داده میشود.
فراموش کردن حسابهای قدیمی
پس از پایان همکاری، حساب فرد غیرفعال نمیشود.
نادیده گرفتن سرویسهای خارج از وردپرس
فقط کاربران وردپرس بررسی میشوند، در حالی که فرد ممکن است به هاست، دامنه یا سرویسهای دیگر نیز دسترسی داشته باشد.
تغییر نکردن دسترسی پس از تغییر مسئولیت
کاربر همچنان مجوزهایی را دارد که دیگر برای انجام وظیفهاش لازم نیست.
نبود فرآیند مشخص برای پایان همکاری
مشخص نیست هنگام خروج یک فرد از پروژه دقیقاً چه حسابهایی باید بررسی و غیرفعال شوند.
یک ساختار مناسب برای مدیریت دسترسی سایت چیست؟
برای بسیاری از سایتها میتوان فرآیند سادهای مانند این داشت:
مرحله اول: شناسایی
تمام حسابها و افرادی که به سایت دسترسی دارند مشخص شوند.
مرحله دوم: تعیین نقش
برای هر فرد مشخص شود چه کاری انجام میدهد.
مرحله سوم: تعیین حداقل دسترسی
فقط مجوزهای لازم برای انجام وظیفه در اختیار او قرار گیرد.
مرحله چهارم: ایجاد حساب اختصاصی
هر فرد حساب مستقل خود را داشته باشد.
مرحله پنجم: ایمنسازی حساب
برای حسابهای مهم از رمزهای مناسب و در صورت امکان احراز هویت دومرحلهای استفاده شود.
مرحله ششم: بازبینی
با تغییر وظیفه یا پایان همکاری، دسترسی دوباره بررسی شود.
مرحله هفتم: حذف یا محدودسازی
دسترسیهایی که دیگر لازم نیستند حذف یا محدود شوند.
چکلیست مدیریت دسترسی کاربران سایت
پیش از نهایی کردن دسترسیهای سایت، میتوان این موارد را بررسی کرد:
* هر کاربر حساب اختصاصی دارد.
* حسابهای مشترک تا حد امکان حذف شدهاند.
* نقش هر کاربر مشخص است.
* سطح دسترسی با وظیفه واقعی کاربر متناسب است.
* دسترسی مدیر فقط در اختیار افراد موردنیاز است.
* حسابهای قدیمی بررسی شدهاند.
* دسترسی افراد خارجشده از پروژه حذف یا غیرفعال شده است.
* دسترسی به هاست و دامنه نیز بررسی شده است.
* سرویسهای خارجی مرتبط با سایت بررسی شدهاند.
* احراز هویت دومرحلهای برای حسابهای مهم، در صورت امکان، فعال شده است.
* دسترسیهای موقت پس از پایان کار بررسی میشوند.
* فهرست کاربران و دسترسیها وجود دارد.
* دسترسیها بهصورت دورهای بازبینی میشوند.
جمعبندی
مدیریت دسترسی کاربران سایت یعنی کنترل کنیم چه کسی، با چه حسابی و تا چه حدی میتواند به سایت و سرویسهای مرتبط با آن دسترسی داشته باشد.
راهکار حرفهای این نیست که همه افراد را مدیر سایت کنیم یا تمام دسترسیها را از طراح و پشتیبان حذف کنیم؛ بلکه باید برای هر شخص، دسترسی متناسب با وظیفه واقعی او تعریف شود و مالک سایت بتواند این دسترسی را در هر زمان مدیریت کند.
حسابهای اختصاصی، سطح دسترسی متناسب، حذف حسابهای قدیمی، مدیریت دسترسیهای موقت، بررسی سرویسهای خارج از وردپرس و بازبینی دورهای از مهمترین اقداماتی هستند که میتوانند کنترل و امنیت سایت را بهتر کنند.
در نهایت، مدیریت دسترسی بخشی از فرآیند مداوم امنیت سایت است، نه اقدامی که فقط هنگام طراحی یا تحویل پروژه انجام شود.










