🎉
【3分間HTTP&メールプロトコル基礎講座】第15,16回HTTPの弱点と認証、基本認証とダイジェスト認証
HTTPの弱点
- 相手を確かめない=ユーザ認証,サーバ認証がない
- サーバー側から見れば、誰が要求してるのかわからない
- クライアント側から見れば、要求したサーバになりすまされて、別のサーバが応答してもわからない
- 平文での通信=暗号化されてない
- 応答を盗聴されると、メッセージは全て平文なので中を読まれてします
- 改竄防止がない=メッセージ認証がない
- 要求または応答のHTTPメッセージの中身を書き返されてもわからない
- WWWでは通常誰でもアクセスできるよう匿名ログインを行う
基本認証とダイジェスト認証
基本認証
- 普通に要求を送る
- 「401Unauthorized」の際にサーバー側はWWW-Authenticate*メッセージヘッダに入れて応答する。
- それに対してUA側はAuthorizationメッセージヘッダにユーザーIDとパスワードを入れて要求する
- WWW-Authenticateの時、realm(レルム)と呼ばれる認証によってアクセスが保護される範囲を識別する名前を入れる
- ページが移動するたびにユーザーIDやパスワードを入れる必要があるし、要求、401、要求、応答を繰り返すハメになるので、そうならないように同じリクエストURIのパスを持ったリソースを要求するなら、Authorizationをつけて送ることになる。
Discussion