شما در وردپرس برتر هستید!
جلوگیری از به اشتراک گذاری پسورد اکانت های کاربری
افزونه رایگانافزونه وردپرسکاربردی

جلوگیری از ورود به یک حساب کاربری از دو سیستم مختلف

18بازدید

به صورت پیش فرض هر کاربر در وردپرس می تواند به صورت همزمان و از دو مکان متفاوت وارد یک حساب کاربری شود. این کار باعث به خطر افتادن امنیت سایت آن هم برای سایت هایی با چندین نویسنده می شود و حتی باعث لطمه زدن به شما و منافع مالی شما می شود در صورتیکه دارای سایتی با محوریت عضوگیری و پرداخت حق عضویت باشید. پس با ما همراه باشید تا نحوه جلوگیری از ورود به یک حساب کاربری از دو سیستم مختلف را آموزش دهیم.

جلوگیری از به اشتراک گذاری پسورد اکانت های کاربری

در این مقاله می خواهیم به موضوع جلوگیری از به اشتراک گذاری پسورد اکانت های کاربری توسط کاربران در وردپرس پرداخته و راهکار مقابله با این موضوع را شرح دهیم.

 

وردپرس چگونه session های مربوط به کاربران را مدیریت می کند؟

چگونگی مدیریت session ها در وردپرس

قبل از اینکه به موضوع اصلی بپردازیم، بهتر است کمی در مورد چگونگی مدیریت session های کاربران در وردپرس بپردازیم. همانند بسیاری اپلیکیشن های تحت وب، وردپرس نیز از کوکی ها برای شناسایی کاربران وارد شده به سایت استفاده می کند. این کوکی ها حاوی پسورد شما نیستند بلکه تنها حاوی نام کاربری و کلید خاصی است که نشان می دهد شما پسورد خود را میدانید.

حالا اگر شما از یک مکان عمومی وارد سایت خود شوید و طبق عادت تیک گزینه “مرا به خاطر بسپار” را بزنید آن وقت هر کسی از آن سیستم مذکور می تواند وارد سایت شما شود چرا که وردپرس به یک نام کاربری یکسان اجازه می دهد تا از دو مکان مختلف وارد سایت شود.

این موضوع باعث ایجاد مشکل برای امنیت سایت است اما این موضوع می تواند برای کسب و کار شما که دارای سایتی با محوریت عضوگیری و پرداخت حق عضویت هستید نیز بد باشد.

چرا که کاربران می توانند با به اشتراک گذاشتن پسوردهای خود، به محتوای پولی سایت شما دسترسی پیدا کنند. حالا با این وجود به نظر شما بهتر نبود که می توانستید از ورود کاربران به سایت با استفاده از یک نام کاربری و از دو مکان مختلف جلوگیری می کردید؟

 

جلوگیری از ورود همزمان و به اشتراک گذاشتن پسوردها در وردپرس

جلوگیری از ورود همزمان و به اشتراک گذاشتن پسوردها در وردپرس

 

پلاگین Prevent Concurrent Logins

ابتدا لازم است تا پلاگین Prevent Concurrent Logins را نصب و فعال کنید. برای این منظور ابتدا پلاگین را از لینکی که در پایین همین پست قرار داده شده است دریافت کنید. سپس آن را در سایت خود نصب و فعال کنید.

در صورتی که با نصب پلاگین در وردپرس آشنایی ندارید، می توانید مقاله نحوه نصب افزونه های وردپرس از طریق هاست و پیشخوان را مطالعه کنید. این پلاگین نیاز به تنظیم خاصی نداشته و فقط کافی است بعد از دریافت آن از مخزن وردپرس و نصب آن در سایت خود، فعال شود.

برای اینکه مطمئن شوید پلاگین به درستی کار می کند، می توانید از دو مرورگر متفاوت وارد سایت خود شوید. وقتی که شما تلاش می کنید تا با نام کاربری و پسورد یکسان وارد مرورگر دوم شوید، ورود شما به سایت موفقیت آمیز خواهد بود. با این وجود که پلاگین session قدیمی را از بین خواهد بود و اگر بر روی هر لینکی در مرورگر قبلی کلیک کنید به صفحه ورود سایت بازخواهید گشت.

اما اگر همچنان می خواهید ورود همزمان را برای برخی کاربران یا نقش های کاربری فعال نگه دارید می توانید از کدهای زیر استفاده کنید:

فعال نگه داشتن امکان ورود همزمان به سایت برای کاربران خاص

برای این منظور می توانید از کد زیر استفاده کرده و به جای مقادیر ۱، ۲ و ۳ آیدی کاربران مورد نظر خود را جایگزین کنید:

function my_pcl_whitelist_user_ids( $prevent, $user_id ) {
$whitelist = array( 1, 2, 3 ); // Provide an array of whitelisted user IDs
return in_array( $user_id, $whitelist ) ? false : $prevent;
}
add_filter( 'pcl_prevent_concurrent_logins', 'my_pcl_whitelist_user_ids', 10, 2 );

 

فعال نگه داشتن امکان ورود همزمان به سایت برای نقش های کاربری خاص

در این کد شما می توانید به جای نقش های کاربری مدیریت و ویرایشگر که با مقادیر administrator و editor مشخص شده اند، نقش های کاربری مورد نظر خود را جایگزین بکنید:

function my_pcl_whitelist_roles( $prevent, $user_id ) {
$whitelist = array( 'administrator', 'editor' ); // Provide an array of whitelisted user roles
$user = get_user_by( 'id', absint( $user_id ) );
$roles = ! empty( $user->roles ) ? $user->roles : array();
return array_intersect( $roles, $whitelist ) ? false : $prevent;
}
add_filter( 'pcl_prevent_concurrent_logins', 'my_pcl_whitelist_roles', 10, 2 );

 

 

 

امیدواریم این مقاله مورد توجه شما عزیزان قرار گرفته باشد، در صورتیکه سوالی در رابطه با جلوگیری از به اشتراک گذاری پسورد اکانت های کاربری توسط کاربران، پلاگین ارائه شده و یا کدهای ارائه شده داشتید می توانید آنها را در قسمت دیدگاه ها در پایین همین پست مطرح کرده تا در اسرع وقت توسط تیم پشتیبانی وردپرس برتر پاسخ داده شود.

ارسال پاسخ