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で質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
閉じるボタン「×」を制御したい
-
VBAで重複チェックの仕方を教え...
-
PHPで名寄せするには?
-
PHPでアクセスログ管理システム
-
ログイン画面から入って、「戻...
-
Dosブロンプトでtabを出力したい
-
wordの差し込み印刷で文字...
-
DTOとEntityの差は何ですか。
-
バッチファイルでpingの結果を...
-
EXCEL、マクロ-改ページ行番号...
-
fwriteで改行出来ない
-
http://www.なんとか.com/ に...
-
ローカルのコンピュータ名を取...
-
syntax error, unexpected 'ech...
-
php mysql SELECT文でテーブル...
-
バッチファイルで、全てのウィ...
-
開始と終了を指定して、その間...
-
「次の10件を表示する」のよ...
-
phpでcookieがうまく保存されない
-
逆順表示したい?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
POSTで受け渡したものを保存し...
-
cURL関数を使用したphpからのpo...
-
ログイン画面から入って、「戻...
-
IFRAME内PHPのセッション変数取...
-
【ExcelVBA】検索したデータを...
-
フォームを使わずにPOST送信す...
-
php 入力画面から確認表示画面...
-
会員登録システム 仮登録のメ...
-
VBAで重複チェックの仕方を教え...
-
HTMLエスケープすべき場所につ...
-
セッション使用時のフォームの...
-
HTMLエスケープ処理とデーター...
-
PHPで値を保持する方法
-
データベースの登録失敗の時の...
-
asp.netでのセッションを使用し...
-
会員制サイトを作成しました。...
-
ブラウザバックしてもチェック...
-
検索フォームのセッション管理...
-
GETのメリットについて
-
PHPで返信メールにチェックボッ...
おすすめ情報