意外と試験にでる「HTTP関連用語」まとめ
現在、4月に受験する情報処理安全確保支援士の勉強中です。
試験に頻出するHTTP関連の用語をまとめました。
多いな、、、;;
ステータスコードとか、何回見ても忘れちゃいますね。^^;
(ページの最後にPDF置いておきます)
2022年11月追記:
私の合格した時の方法を反省し、より効率的な勉強法を紹介しています。
よければ参考にしてください。
【必見】未経験でも合格した情報処理安全確保支援士試験の勉強法
情報処理安全確保支援士試験って役に立つの?実務経験がないと合格は難しい?何時間ぐらい勉強したらいいの?どうやって勉強したらいいの?これらをこの記事で答えていきたいと思います。
HTTP関連用語まとめ
HTTPメッセージの構造
リクエスト行(リクエスト時)/ ステータス行(レスポンス時) | |||
メッセージヘッダ リクエスト/レスポンスの内容に応じたヘッダ情報が入る。 1行(改行コードまで)で一つの意味を持つため、HTTPヘッダインジェクションが引き起こされる。 ※ユーザーの入力データをレスポンスヘッダに含めない対策をする |
|||
空行(CR+LF:改行コード) メッセージヘッダとメッセージボディの境界は改行コードで識別する。 |
|||
メッセージボディ リクエスト時 = POSTメソッドを使用した場合にサーバに送る情報が入る。 ※GETメソッドやHEADメソッドにはない。 レスポンス時 = リクエスト内容とその結果に応じてサーバが返す情報が入る。 ※HTMLデータ、画像データなど |
リクエスト行
メソッド | GET | 入力データやパラメタをURLの後ろに付加して送信する方式。 URIがファイル名の時はそのファイルの中身を、プログラム名の時はそのプログラムの出力を返す。 ・送信可能なデータはテキストのみで、サイズはURLエンコードした状態で255文字まで ・URLから入力データを読み取られたり、改ざんされたりする可能性がある ・入力データがWebサーバのアクセスログに記録される ・Refererログによって入力データが漏えいする可能性がある |
|||
POST | 入力データやパラメタをメッセージボディにセットし、サーバの標準入力を通じて渡す方式。 ・送信データのサイズに制限はない ・バイナリデータの送信も可能 ・入力データがURLに含まれないため、GETメソッドよりも秘匿性が高い ・入力データがWebサーバのアクセスログに記録されない |
||||
HEAD | GETと同じだがHTTPヘッダのみを返す | ||||
PUT | URIで指定したサーバ上のファイルを置き換える | ||||
DELETE | URIで指定したサーバ上のファイルを削除する | ||||
TRACE | サーバが受け取ったリクエスト行とヘッダ行をそのまま送り返す | ||||
URI | 世界中に存在する情報リソースを一意に指し示す識別子(URLの考えを拡張したのもの) | ||||
HTTPバージョン | 通常は”HTTP/1.1” | ||||
クエリストリング | GETメソッドの場合にセットされる(=URLパラメタ) 「?」の後ろに「変数名=値」を「&」で複数つなげられる |
レスポンス行
HTTPステータスコード | 説明 | ||||
100 | Continue | リクエストを継続 | |||
200 | OK | リクエストが正常終了 | |||
301 | Moved Permanently | ページが恒久的に移動 | |||
302 | Found (Moved Temporarily) | ページが一時的に移動 | |||
307 | Temporary Redirect | 一時的なリダイレクト | |||
401 | Unauthorized | 認証が必要 | |||
403 | Forbidden | 要求の実行を拒否 | |||
404 | Not Found | 要求されたページが存在しない | |||
500 | Internal Server Error | サーバ内部でエラーが発生 | |||
503 | Service Unavailable | サービスが一時的に使用不可 |
メッセージヘッダ
通信 | HTTPヘッダ | 内容 | ||||
リクエスト時 | Authrization | 認証方式や認証情報。サーバからのWWW-Authenticateヘッダに答える | ||||
Referer | 現在のページを取得するときにユーザが使ったリンクを含むページのURL | |||||
User-Agent | ブラウザの名称やバージョン情報 | |||||
Cookie | クライアントがWebサーバに提示するCookie | |||||
X-Forwarded-For | プロキシサーバや負荷分散装置等を経由する場合の、実際の送信元ホストのIPアドレス情報 | |||||
レスポンス時 | Server | Webサーバのプログラム名やバージョン情報 | ||||
Set-Cookie | WebサーバがクライアントにセットするCookie | |||||
Location | 次に参照(リダイレクト)させる先のURI情報 | |||||
Strict-Transport-Security | ブラウザに対し、HTTPの代わりにHTTPSを用いて通信を行うよう強制する | |||||
X-Content-Type-Options | ブラウザがファイルの中身からContentTypeを決める機能を無効化し、レスポンスヘッダのContentTypeを常に優先する | |||||
X-Frame-Options | ブラウザがframeやiframeでページを表示することの可否を指定する | |||||
X-XSS-Protection | 反射型クロスサイトスクリプティング(XSS)攻撃を検出したときにページの読み込みを停止する | |||||
リクエスト/ レスポンス時 | Content-Type | 送信するファイルや文字セットの種類 |
Cookieに設定する属性
項目名 | 形式 | 内容 | ||||
有効期限 | expires=日時 | ・Cookieの有効期限を日時で指定する ・期限の指定が無い場合は、メモリの保存されブラウザの終了とともに消滅する ・期限が指定された場合は、ファイルとしてブラウザが終了した以降も保存される |
||||
有効なドメイン | domain=ドメイン名 | ・Cookieが有効となるドメイン名を[.」から始まる形式で指定する(例:.example.co.jp) ・指定があった場合は、そのドメイン名が含まれていることがCookieを送出する条件となる ・指定が無かった場合は、そのCookieを発行したサーバとの通信時のみCookieを送出する |
||||
有効なディレクトリ | path=ディレクトリ名 | ・指定があった場合は、そのディレクトリにアクセスする場合のみCookieを送出する ・指定が無かった場合は、「/」となりそのCookieを送出したページの存在するディレクトリをルートとして、当該ディレクトリとその下にあるすべてのディレクトリで有効となる |
||||
secure属性 | secure | HTTPSで通信している場合のみCookieを送出する ※HTTP通信の盗聴によりCookieが盗まれるのを防ぐ | ||||
HttpOnly属性 | HttpOnly | Cookieの適用範囲を HTTP/HTTPS通信だけに限定し、ブラウザ等で実行されたスクリプトが”document.cookie”を用いてアクセスすることを禁止する ※クロスサイトスクリプティングによりCookieが盗まれるのを防ぐ |
0 件のコメント:
コメントを投稿