* 仕様書 [REFS[ - [9] [CITE@en[RFC 2617 - HTTP Authentication: Basic and Digest Access Authentication]] ([TIME[2012-01-09 21:04:30 +09:00]] 版) ]REFS] * 構文 [FIG[ [FIGCAPTION[ [2] [[RFC 1945]] / [[RFC 2068]] における [CODE(ABNF)[[[credentials]]]] の構文 ]FIGCAPTION] [PRE(ABNF code)[ credentials = basic-credentials | auth-scheme #auth-param ]PRE] ]FIG] [4] [[Basic認証]]とそれ以外で構文が異なっています。 ;; [11] [[RFC 2617]] の [[ABNF]] 構文ではなぜかそれが省略されています。 [3] [CODE(ABNF)@en[[[auth-scheme]]]] は[[誰何]]でも使われていますが、そちらとは違ってこちらでは [CODE(HTTP)@en[[[realm]]]] [[引数]]のような必須の[[引数]]はありません。 詳しくは [[auth-param]] の項を参照してください。 [12] [CODE(ABNF)@en[[[auth-scheme]]]] と [CODE(ABNF)[[[auth-param]]]] の間には [[LWS]] が必要です。 [[ABNF]] 構文上はそれが省略されていますが、省略されていることが明記されていません・・・。 * 文脈 [7] [[credentials]] は [CODE(HTTP)@en[[[Authorization:]]]] 欄の値として使われます。 * 適用範囲と再利用 [5] [[利用者エージェント]]がある [[credentials]] を自動的に適用できる範囲は、 [[ホスト]]と [CODE(HTTP)@en[[[realm]]]] による保護空間により決まります。 当該 [[creadentials]] 付きの[[要求]]が一旦[[認証]]されれば、 それを同じ空間の別の[[要求]]に対しても、 [[auth-scheme]]、 [[auth-param]]、 あるいは[[利用者]]の設定によって決まる期間、再利用して構いません。 [SRC[>>1, >>8]] [6] [[auth-scheme]] によって特に決められていない限り、 保護空間を[[鯖]]を超えて延長することはできません。 [SRC[>>1, >>8]] * 歴史 ** RFC [REFS[ - [1] [CITE@en[RFC 1945 - Hypertext Transfer Protocol -- HTTP/1.0]] ([TIME[2012-02-18 23:25:56 +09:00]] 版) - [8] [CITE@en[RFC 2068 - Hypertext Transfer Protocol -- HTTP/1.1]] ([TIME[2012-02-18 23:30:14 +09:00]] 版) - [10] [CITE@en[RFC 2617 - HTTP Authentication: Basic and Digest Access Authentication]] ([TIME[2012-01-09 21:04:30 +09:00]] 版) ]REFS]