初期設定では、WordPressユーザーは同時に複数の場所からアカウントにログインすることができます。これは、複数著者のWordPressサイトのセキュリティを損なう可能性があり、会員制サイトを運営している場合は間違いなく利益を損ないます。この投稿では、同時ログインをブロックすることで、WordPressでユーザーがパスワードを共有しないようにする方法を紹介します。
WordPressはどのようにユーザーセッションを処理するのか?
次に進む前に、WordPressがユーザーセッションをどのように扱うかについて少し説明しましょう。他の多くのウェブアプリケーションと同様に、WordPressはログイン中のユーザーを識別するためにCookieを使用します。これらのCookieにはパスワードは含まれておらず、ユーザー名と、パスワードを知っていたことを証明する特別なキーが含まれているだけです。
WordPressは、同じユーザー名で2つの異なる場所からログインすることを許可しているため、もしあなたが公共の場所からサイトにアクセスし、「ログイン情報を保存」ボタンをチェックした場合、そのコンピューターから誰でもあなたのサイトにログインすることができます。
これはセキュリティ上少し厄介だが、プレミアムコンテンツを販売する会員制サイトを運営している場合、ビジネス上も不利になりかねない。
ユーザーはパスワードを友人と共有するだけで、同じログイン情報を使って有料コンテンツを利用することができます。
ユーザーが複数の場所から同じアカウントにログインしたままになるのを防げたらいいと思いませんか?
最近、あるユーザーからこのような質問を受けたとき、私たちはいろいろ探して、同時ログインを防ぐプラグインを見つけました。
WordPressで同時ログインとパスワード共有を防ぐ
動画チュートリアル
動画が気に入らなかったり、もっと説明が必要な場合は、このまま読み進めてください。
まず最初にPrevent Concurrent Loginsプラグインをインストールして有効化します。このプラグインはすぐに動作し、特に設定することはありません。
コンピューター上の2つの異なるブラウザーからWordPressサイトにサインインするか、プライベート/シークレット・モードを使って、プラグインの動作をテストすることができます。
2つ目のブラウザーで同じユーザー名とパスワードでサイトにログインしようとすると、ログインに成功します。ただし、プラグインは古いセッションを終了し、前のブラウザーウィンドウのリンクをクリックするとログインページに移動します。
これですべてです。この投稿が、同時ログインをブロックしてWordPressでユーザーがパスワードを共有するのを阻止する方法を学ぶのにお役に立てば幸いです。また、Simple Historyを使用してWordPressのユーザーアクティビティを監視する方法についてのガイドもご覧ください。
また、念のためお伝えしておきます:パスワードはハッキングされる可能性があります。これを避けたい場合は、WordPressサイトで強力なパスワードを使用する必要があります。また、WordPressサイトのすべてのユーザーに強力なパスワードを強制することもできます。
この投稿が気に入った場合は、WordPressの動画チュートリアルのYouTubeチャンネルを購読してください。Twitterや Google+でもご覧いただけます。
Dwayne
I want to allow the sharing of user credentials, but i want to set how many sessions allowed. So i want to give access to resources, by creating an account 1 account and stating that only 20 active sessions are allowed. If sessions 21 comes in it is denied access. Is there anything that allows that?
Mike
This really doesn’t prevent someone from sharing their username and password with someone else. It only prevents them from being logged in at the same time.
Toon van der Struijk
I’ve tested the plugin ‘Prevent Concurrent Logins’ but am in doubt of really using it.
The thing that bothers me the most, is that every New session is honored in favour of an Old (existing) session.
This means that a user who is successfully logged-in gets locked out as soon as someone else is logging in with the same credentials. In my opinion this not very user friendly, and actually it should work the other way around.
When a user (B) is trying to log in by using the same credentials from a user (A) who is already logged in, user B should get a warning that logging in with these credentials is not possible at the moment because someone else (user A) is using it.
This keeps user A logged in
WPBeginner Staff
Yes that would be a good title too. The post idea came from a user worried that their premium users were sharing passwords with their friends. Which is a major concern for many site owners offering premium content, downloads, and membership sites. We were hoping this title would help them.
Eric Mann
I was a bit confused by this article when I started reading. By “stop users from sharing passwords,” I imagined you were explaining a way to prevent duplicate passwords in the database (which, by itself, would be a massive security vulnerability). I was confused again when you started talking about user sessions, but then everything clicked.
Perhaps a better title would be “How to Stop Users from Sharing Login Sessions”? It’s a bit more on target with what the article is about.
Daryl Griffiths
Just what I needed for my intranet site, to run alongside the ‘idle logout’ plugin.