phpでトップページログインフォームより会員がログインできる仕組みを作りたいと思っています。
この場合、ログイン認証部分のみSSL通信をおこないたいと考えています。
この場合、
トップページをhttps://toppage.html(sあり)とし、
ログインフォームのaction先を、http://check.php(sなし)のように考えていたのですが、
http://q-shu.net/futsukaichi/
こちらのサイトURLは、トップページがhttpになっており、
会員ログインフォームのaction先がhttps:〇〇〇
となっています。
てっきりログインフォームのあるページURLはhttpsでないと暗号化されないと思っていたのですが、
action先がhttpsになっていれば暗号化されてデータは送られるのでしょうか?
ご回答どうかよろしくお願いいたします。
No.2ベストアンサー
- 回答日時:
> phpでトップページログインフォームより会員がログインできる仕組みを作りたいと思っています。
> この場合、ログイン認証部分のみSSL通信をおこないたいと考えています。
こういうことをしても許されるのって2000年代までだと思ってました。
https://www.verisign.co.jp/ssl/first/always-on-s …
その後のページでSSLを使っていないとなると、認証クッキーを盗聴して、なりすましし放題ですよね。
それに、SSLはスループットの良い暗号を選べば、随分CPU負荷が少ないと思います。
> action先がhttpsになっていれば暗号化されてデータは送られるのでしょうか?
はい。https://....と書いてあるなら、HTTPSで接続してデータを送信します。つまり、暗号化されています。本当に暗号化されるか不安ならwiresharkなどで実際の通信をダンプしてみると良いでしょう。
ちなみに、情報セキュリティというと、機密性(Confidential)、完全性(Integrity)、可用性(Availability)を考えます。それぞれ、権限がない人に情報を見せない、情報が改竄されていない、権限がある人が情報を利用できるという意味です。
「暗号化」と機密性にばかり注目しがちかもしれませんが、SSLはこの機密性と完全性の両方を提供するものだと思います。つまり、盗聴対策と改ざん対策です。
> この場合、
> トップページをhttps://toppage.html(sあり)とし、
> ログインフォームのaction先を、http://check.php(sなし)のように考えていたのですが、
これは何をしたいのかわかりませんが、action先がHTTPSでないということは、平文でパスワードなどが送られます。
なんというか、羊頭狗肉ですね。 (SSLを使っているように見せかけて、本当は使っていない)
> こちらのサイトURLは、トップページがhttpになっており、
> 会員ログインフォームのaction先がhttps:〇〇〇
> となっています。
これも典型的な駄目なケースだと思います。
通信経路上でトップページの改ざんが行われた場合や、フィッシング詐欺が行われている場合、攻撃者のサイトにHTTPSで接続してパスワードを送ることになりますよね。
しかも、ブラウザで見る限りは異常が見えないので、ユーザーは攻撃者のサイトにパスワードを送るまで攻撃者のサイトにパスワード送ることに気づけないでしょう。
というわけで、ログインページからログアウトするまでちゃんとHTTPSを使ったほうがよいと思います。
ご回答ありがとうございます。
安全性を考えてすべてのページで使う方向で検討したいと思います。
詳しく説明していただきありがとうございます。
No.3
- 回答日時:
直接の回答はNo1さんの通り。
なお、セキュリティの観点からは、formを表示するページ、action先のページ、両方がhttpsである必要があります。
参考:
http://takagi-hiromitsu.jp/diary/20051130.html
ご回答ありがとうございます。
片方のみhttpsがついているサイトが多かったのでそれに惑わされていました。
教えていただきました参考ページ、とてもわかりやすいです。
ありがとうございます。
No.1
- 回答日時:
> action先がhttpsになっていれば暗号化されてデータは送られるのでしょうか?
その通りです。
ログインフォームが http と https のどちらで表示されようが関係ありません。
送信先(action)が https のときだけ暗号化されます。
受信は送信に使用した接続を使用するので、受信の暗号化有無は送信方法で決まります。
ご回答ありがとうございます。
ログインフォームのあるページがhttpだとhttpsのページへ暗号されずに
POSTされてしまうのではないかと勘違いしていましたがお蔭様で解決できました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP php ログイン 1 2022/11/01 00:24
- PHP 掲示板のセキュリティについてアドバイスお願い致します 1 2023/08/11 20:44
- その他(ソフトウェア) YahooのIDがロックされてしまいました 1 2022/11/25 19:49
- 確定申告 e-taxの暗証番号 4 2023/03/08 01:59
- MySQL 「掲示板のログイン画面」はPHP~MySQLに「データベース認証のシステム」方式です。 1 2022/09/27 05:00
- X(旧Twitter) Twitterの異議申し立てについて 2 2022/07/08 17:46
- JavaScript ラジオボタンによるフォームの開閉を行いたい 3 2022/03/31 21:30
- PHP ここで言うトークンの意味を教えてください。 3 2022/08/24 03:03
- Chrome(クローム) 入力フォームの履歴を消したい 2 2023/06/29 13:02
- スマートフォン・携帯電話 dクレジットカードの暗証番号を忘れてしまって、dCARDサイトの方で暗証番号を変更しようとしたら、こ 4 2022/07/12 15:24
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
フォームを使わずにPOST送信す...
-
PHPで返信メールにチェックボッ...
-
HTMLエスケープすべき場所につ...
-
IFRAME内PHPのセッション変数取...
-
動的にhtmlテーブルを表示
-
リストボックスにテキスト入力...
-
ログイン画面から入って、「戻...
-
phpでの値を受け渡し方法につい...
-
switch()文で値の大小比較
-
「取得先」という表現について
-
【C#】DataGridViewの最大列数...
-
Dosブロンプトでtabを出力したい
-
shシェルスクリプト 空白行の...
-
phpでcookieがうまく保存されない
-
DTOとEntityの差は何ですか。
-
WordでExcelデータを差込...
-
ActiveReportのサブレポート機...
-
DMMの動画を全件取得したのです...
-
wordの差し込み印刷で文字...
-
VBA内でのGetPixelを使用した時...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
php 入力画面から確認表示画面...
-
ログイン画面から入って、「戻...
-
php history.back()の戻るボタ...
-
POSTで受け渡したものを保存し...
-
フォームを使わずにPOST送信す...
-
VBAで重複チェックの仕方を教え...
-
PHPで値を保持する方法
-
ブラウザバックしてもチェック...
-
IFRAME内PHPのセッション変数取...
-
【Java】投稿完了画面リロード...
-
HTMLエスケープ処理とデーター...
-
cURL関数を使用したphpからのpo...
-
asp.netでのセッションを使用し...
-
「ページネーション」で検索キ...
-
php に関して質問です。 各ユー...
-
閉じるボタン「×」を制御したい
-
PHPで名寄せするには?
-
セッションを使用したページ遷移
-
HTMLエスケープすべき場所につ...
-
GETのメリットについて
おすすめ情報