如何在 WordPress 中限制使用者登入一台設備
已發表: 2024-11-28您想在 WordPress 中限制使用者登入一台裝置嗎?
SaaS、會員制、線上課程和訂閱網站所有者可以達成一致的一個問題是,他們因共享帳戶而損失了大量收入。許多用戶將自己的密碼和帳戶洩露給其他人,降低了獲利潛力。
例如,Netflix 在全球範圍內進行了打擊,以減少帳戶共享,他們稱這影響了超過 1 億個家庭。這導致了數十億美元的收入損失和非法使用訂閱服務。
在 IsItWP,我們在許多創建 WordPress 外掛和軟體的姊妹公司中看到了類似的問題。我們已經看到控制密碼和帳戶的共享是多麼困難。
事實證明,限制 WordPress 中的帳戶共享是解決此問題的有效解決方案。透過將使用者限制在一台裝置上的一個活動會話,我們能夠防止未經授權的訪問,阻止憑證共享,並更好地控制使用者行為。
在本文中,我們將逐步引導您了解我們用於確保單一使用者一台裝置的方法。我們將向您展示不同的技術,以便您可以選擇最適合您業務的技術。
限制使用者登入一台裝置的重要性
如前所述,單一設備登入有助於減少帳戶共享。但它能做的遠不止這些。對於初學者來說,它可以讓您更好地控制誰可以訪問您的網站以及在哪裡可以訪問您的網站,從而幫助提高網站安全性。
即使同一用戶擁有多台設備,當他們登入新設備時,系統也會自動將他們從先前的設備中登出。因此,該系統可以幫助您始終強制執行一台裝置的登入限制。
以下是限制使用者登入一台裝置的其他原因。
- 內容保護:確保對優質內容的獨佔訪問,防止共享登入造成的收入損失。
- 準確的使用者指標:提供實際使用者參與度和流量的可靠見解,這對於分析和決策至關重要。
- 提升使用者體驗:減少多會話時的登入衝突,確保合法使用者的流暢存取。
- 法律合規性:幫助使用者遵守需要單一使用者存取的授權協議或訂閱條款,避免潛在的法律問題。
- 負載管理:透過限制一個帳戶同時運行的連線來減少伺服器壓力,從而提高網站效能和穩定性。
- 詐欺防制:阻止惡意嘗試利用共享憑證,降低詐欺風險。
更好地控制管理員:使您能夠更好地控制使用者行為和會話管理,從而更好地執行網站策略。
如您所見,將使用者登入工作階段限制在一台裝置上有許多好處。但是,每個企業都有不同的模式,對一個企業有效的模式可能不適用於另一個企業。因此,為了確保您找到適合您的方法,請查看實施每個使用者一個會話策略的2 種方法。
- 使用 Loggedin – 限制活動登入外掛(免費且簡單)
- 使用WPCode(免費但高級的方法)
話雖如此,讓我們引導您了解確保 WordPress 網站上有一個活動會話的所有這些方法。
使用 Loggedin – 限制活動登入外掛(免費且簡單)
如果您正在尋找一種免費且簡單的方法來自動限制使用者登入一台設備,Loggedin – 限制活動登入外掛程式就是您的解決方案。
此登入限制外掛程式可讓您設定每個使用者的最大活動登入數。當達到登入限制時,它還會阻止任何新的登錄,從而強制其他人登出。
第 1 步:安裝 Loggedin – 限制活動登入
如前所述,Loggedin – Limit Active Logins 是一個免費外掛程式。因此,您可以透過前往 WordPress 儀表板中的所有外掛程式 » 新增外掛程式來存取它。之後,使用搜尋列從 WordPress 外掛程式儲存庫中尋找該工具。
然後,像安裝任何其他插件一樣安裝並啟動它。如果您遇到任何問題,請查看這篇有關如何安裝插件的文章。
第 2 步:設定登入 - 限制活動登入
接下來,導覽至「設定」»「常規」 ,然後捲動至「登入設定」。
首先,您會注意到,預設情況下,這個基於裝置的使用者登入外掛程式將最大活動登入數設為 3。因此,任何超出設定次數的登入嘗試都會自動被拒絕,即使其他瀏覽器已關閉。
但是,要進一步自訂您的使用者體驗,請前往登入邏輯,您可以在其中獲得 2 個複選框選項。
- 如果您選擇“允許”,插件將停止舊會話,為新登入建立空間,並遵守設定的限制。
- 如果您選擇“封鎖”,外掛程式將拒絕任何新的登入嘗試,直到目前會話過期。
除此之外,您還可以使用「強制登出」功能手動控制登入 WordPress 網站的人員。透過輸入使用者 ID ,您可以強制使用者退出所有裝置。這是提高網站安全性和管理用戶存取的好方法。
現在,由於 WordPress 依賴快取來調節登入嘗試和追蹤會話,因此該外掛程式允許您設定「快取等級」。因此,登入 – 限制活動登入數為您提供了 4 個快取等級選項供您選擇。
- Normal:此模式以標準方式快取會話數據,平衡效能和可靠性。它適用於大多數沒有高級快取機制的網站。
- 僅資產:限制快取靜態資產(例如 JavaScript 或 CSS),最大限度地減少動態登入會話管理幹擾。在管理動態內容敏感環境時,此模式非常有用。
- 進階:優化的快取系統用於更有效地處理會話。它非常適合高流量的站點,因為它確保插件與更複雜的快取層(如物件快取)進行互動。
- 關閉:它完全禁用插件的緩存,強制它為每個請求直接檢查資料庫或會話存儲。此模式可確保準確的會話跟踪,但可能會降低效能。
完成後,點擊頁面底部的“儲存”,您現在可以輕鬆地將使用者的登入工作階段限制在一台裝置上。
這種限制用戶共享帳戶的方法既快速又簡單。但它的客製化選項有限,可能會降低較大團隊和用戶群的效率。如果您需要進階自訂選項,我們建議使用方法 2。
使用WPCode(免費但高級的方法)
正如您在上面看到的,Loggedin – Limit Active Logins 是一個簡單的插件,僅允許您限制所有使用者同時登入。但是,如果您想對此登入協議做出一些例外,該怎麼辦?
如果您想讓自己、團隊成員或某些使用者繞過此登入限制以幫助更好地管理您的站點,該怎麼辦?
如果您需要多個團隊成員存取單一帳戶,這會很有幫助。例如,您可能想要測試功能或排除錯誤,尤其是在暫存或開發環境中。
同時,允許多個使用者共用一個帳戶可以幫助您更好地管理資源。
因此,我們推薦 WPCode。
WPCode 是最好的 WordPress 程式碼片段外掛。它配備了拖放介面和大型程式碼片段庫,讓您在沒有開發人員經驗的情況下在網站上插入程式碼。
它具有智慧條件邏輯功能,允許您的網站僅在滿足某些條件(例如登入成員、特定 URL 等)時載入程式碼片段。
最重要的是,它會檢查您添加的任何手動程式碼片段,以確保它們完美運行並且不會破壞您的網站。由於我們將手動新增登入繞過程式碼,因此此功能非常有用。
考慮到這一點,您將需要一些基本的程式碼經驗才能使用此方法。
第 1 步:安裝 WPCode
現在,儘管 WPCode 提供了高級版本,但免費版本仍然可以幫助添加此程式碼。要取得 WPCode Lite,請前往您的 WordPress 外掛程式儲存庫並蒐索它。
安裝並啟動後,前往程式碼片段 » + 新增片段。
這會將您重新導向到包含 130 多個預先新增程式碼的程式碼片段庫。在這裡,選擇“新增您的自訂程式碼(新片段)”以開啟程式碼類型彈出視窗。
第 2 步:手動新增 PHP 程式碼段
然後,在此視窗中選擇“PHP Snippet”以開啟拖放介面。
首先,輸入程式碼片段的標題,以便輕鬆識別並在網站的其他區域重複使用該程式碼。然後,在 WPCode 片段區域中貼上以下程式碼:
function loggedin_bypass_users( $bypass, $user_id ) {
// Enter the user IDs to bypass.
$allowed_users = array( 1, 2, 3, 4, 5 );
return in_array( $user_id, $allowed_users );
}
add_filter( 'loggedin_bypass', 'loggedin_bypass_users', 10, 2 );
接下來,前往以"$allowed_users = array"
開頭的程式碼行 4,並將數字替換為您想要繞過登入協定的實際使用者 ID 。請記住像數字範例一樣用逗號分隔每個使用者 ID。
但是,使用特定的使用者 ID 可能會導致程式碼很長,尤其是在您擁有大型團隊的情況下。結果,您很容易破壞您的網站。
為了避免這種情況,您可以改用角色。
為此,請將下面的程式碼複製並貼上到 WPCode 片段區域中。
function loggedin_bypass_roles( $prevent, $user_id ) {
// Array of roles to bypass.
$allowed_roles = array( 'administrator', 'editor' );
$user = get_user_by( 'id', $user_id );
$roles = ! empty( $user->roles ) ? $user->roles : array();
return ! empty( array_intersect( $roles, $whitelist ) );
}
add_filter( 'loggedin_bypass', 'loggedin_bypass_roles', 10, 2 );
然後,再次轉到第 4 行,該行以"$allowed_roles = array"
開頭,您可以在其中獲得佔位符角色“管理員”和“編輯者”。您可以將此行中的文字替換為適用於您的網站的相關網站角色。請記得用逗號分隔角色,並在每個角色兩邊放置單引號(「範例角色」)。
第 3 步:發布程式碼片段
完成後,請前往 WPCode 片段區域下方找到「插入」標籤。
在這裡,導航到“插入方法”,您可以在其中使用“自動插入”或“簡碼”插入程式碼。然後,使用「位置」下拉清單告訴 WPCode 程式碼片段應出現在哪裡。
最後,轉到“裝置類型”,然後選擇是否希望程式碼片段顯示在任何裝置、僅桌面裝置或僅行動裝置上。
當您對繞過登入限制的程式碼感到滿意時,請點擊「儲存片段」並使用切換按鈕啟動頁面頂部的程式碼。
就是這樣!現在您可以限制登入一台裝置並允許某些使用者繞過此協定。如果您還有其他疑問,請查看下面的常見問題。
常見問題:如何在 WordPress 中限制帳戶共享
免費設定一台裝置登入限制的最佳免費工具?
限制 WordPress 多次登入的最佳免費工具是 Loggedin – Limit Active Logins 和 WPCode Lite。登入 – 限制活動登入可讓您設定每個使用者的最大活動登入數量,確保他們一次只能從一台裝置存取您的網站。另一方面,WPCode 的免費版本允許您更進一步,讓您可以按角色和 IP 位址自訂誰可以訪問您的網站。
IP白名單可以阻止同時登入嗎?
IP 白名單可以幫助控制訪問,但不是阻止同時登入的解決方案。雖然它確保只有來自批准的 IP 位址的用戶才能登錄,但它並不能完全限制不同裝置上的多個會話。此方法更適合控制靜態 IP 環境(例如辦公室)的訪問,而不是動態用戶群。相反,您可以使用 Loggedin – Limit Active Logins 和 WPCode Lite 等外掛程式。
我可以允許某些使用者繞過我的每個裝置一個會話策略嗎?
是的,您可以使用 WPCode 等工具允許特定使用者繞過每個裝置一個會話策略。該外掛程式允許您將自訂 PHP 程式碼片段添加到您的網站。這些自訂程式碼可以將特定使用者 ID 或角色排除在登入限制之外。例如,您可以建立使用者 ID 或角色(例如管理員)清單來免除限制,從而為這些帳戶啟用多次登入。
哪些安全插件可以幫助控制使用者登入?
Wordfence Security 和 iThemes Security 是兩個優秀的安全插件,用於控制 WordPress 上的使用者登入。 Wordfence 提供雙重認證、登入嘗試限制和即時流量監控等功能,可有效阻止未經授權的存取。另一方面,iThemes Security 透過啟用強大的密碼強制、強力保護以及鎖定可疑 IP 的功能來增強登入安全性。
恭喜!現在您可以輕鬆免費限制多裝置登入。請參閱這篇關於如何限制 WordPress 中的登入嘗試的文章,以更好地控制使用者登入。
除此之外,這裡還有其他可能有興趣閱讀的文章。
- 如何在 WordPress 中正確建立自訂登入頁面
- 如何阻止 WordPress 網站上的暴力攻擊
- 9 個最佳 WordPress 安全性外掛比較
第一篇文章向您展示如何建立自訂登入頁面以提高使用者體驗和安全性。下一篇文章重點討論如何阻止暴力攻擊。上一篇文章列出了 9 個最佳 WordPress 安全性外掛。