🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

Q&A

解決済

2回答

1210閲覧

WordPressでログインフォームを経由しないでログインする方法について

sinyon

総合スコア12

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

0グッド

0クリップ

投稿2019/11/07 06:27

編集2019/11/07 09:07

WordPressでは通常ログインフォームを経由して登録済のユーザーがログインして管理画面や会員専用ページなどにアクセスしますが、この際にログインフォームを経由せずにログインさせたいです。

使用方法の想定としては例えば小規模サークルや学校関係者などの仲間内で使うものでそこまで規模が大きくないが、ユーザー登録などに不慣れな層でもURLにアクセスするだけで簡単に使えるサイトを考えています。
登録ユーザー以外にはページやコンテンツを表示させないようにするけど、そこまで厳密にアクセスを排除したいわけでもないという使い方です。
URLを知っている人なら誰でもアクセスしてもいいユーザーAを作って、リンクを送ったり、QRコードから読み取ることで、ユーザーAとしてログインしてアクセスしてもらいます。
その上でサイトへのアクセスの利便性を高めるためにログインフォームを経由せずに初めてサイトを訪問する人や詳しくない人でも簡単に登録ユーザーとしてアクセスしてもらうための仕組みを考えています。

セキュリティやその他の画面遷移など問題点はあるかもしれませんが、WordPressの仕組みに詳しい方ならどのように実装するのか、みなさんの考え方を知りたいです。

追記
実現したいのは、ある特定のURLなどからアクセスしたらログインフォームを介さずにログインした状態でサイトを見れるというようなことです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

WPのログインはwp_set_auth_cookieだけでできちゃうんで
これを実行するプログラムを呼び出すURLを作ればいいだけです

セキュリティー面ではmiyabi_takatsukさんの言う通りトークン付きにして
各QRコードハ一回しか使えないようにするとか期限付きにするとか
推定されにくい乱数を十分に含んだものにするとかした方がいいでしょうね

投稿2019/11/08 01:25

KazuhiroHatano

総合スコア7819

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sinyon

2019/11/08 18:20

回答ありがとうございます。 非常に参考になりました。 ログインを自動化するとしてその後のセキュリティは 検索エンジンにクロールさせないようにしてURL自体を公開しないように運用したり、 ユーザー権限を最低レベルに設定したり、 サイトと管理画面を分けたりすることである程度のセキュリティを保てるとは思うのですが 根本的な解決にはやはりトークンを利用するなどなんらかの仕組みを考えないといけないですね。
guest

0

ベストアンサー

JavaScript使って、Ajaxでformでアカウント情報送信すれば良いのではないでしょうか?
おそらくですが、一度ログインすれば、
しばらくはセッションに残るようにはなるかと思います。

ですが、セキュリティはガバガバなので、悪用されても知りませんし、WordPress自体で許可していない可能性があり、そうだと、お手上げかと思います。

投稿2019/11/07 06:44

miyabi_takatsuk

総合スコア9555

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sinyon

2019/11/07 09:05

回答ありがとうございます。 WordPressでのユーザー権限は最小限に設定して、直接会う人にURLを渡すなどして工夫はするつもりですが、やはりセキュリティ面で何かしら対策を考えないといけませんよね。
miyabi_takatsuk

2019/11/07 10:28 編集

そうです。 いくら直接渡そうが、Webネットワーク上で存在する限り、悪いことしようとしている大人達はそんなセキュリティガバガバなサイトはすぐに見つけてしまいます。 そして、いくら権限を制限しても、ログインできてしまえば、様々な情報を盗めてしまう可能性があります。 まぁ、やるとすれば、一つは、 一時的なトークンを発行し、 トークン付きのURLを載せたメールを出し、そのトークンと、DBに登録したペアの端末情報を照合し、両方が合っていればログインさせる、とかですかね。 とにかく、その仕様のサイトのセキュリティを担保するには、プロレベルの技術が必要でしょう。
sinyon

2019/11/08 18:13

セキュリティトークンの考え方、非常に参考になりました。 トークンを発行して管理してとなると規模が大きくなってくるので、今回のケースには合わないかもしれないので、どのように運用するべきかを煮詰めて見直してみるように提案してみます。 詳細な追記と具体的な方策を提案して頂きましてありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問