web-dev-qa-db-ja.com

X-Auth-TokenとAuthorizationヘッダーの違いは何ですか?

x-Auth-Token:dadas123sad12とAuthorization:Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ ==ヘッダーの違いは何ですか?どちらが好ましい

23
Deepak

Authorizationは、 RFC 7235 で予測されているHTTPのピアに対してauthenticateするためにクライアントが使用するプライマリヘッダーです。多くの場合、 RFC 7617 に従ってBasic認証スキームにリンクされますが、これは指定されていません。

Basicスキームにより、クライアントはBase64でコーディングされたコロン(:)で区切られたユーザー名とパスワードのペアを提供できます。これがトランスポートコーディングであることを十分に強調することはできません。例えば。あなたから与えられた例は、簡単にAladdin:open sesameに「復号化」できます。

IANA HTTP認証方式レジストリ (参照: RFC 7235、sec。5.1 )を使用すると、Bearer方式(RFC 6750で定義)が見つかります。これはOAuth 2.0と密接に関係しています。 X-Auth-Tokenは、(おそらく)OAuthまたはHTTP認証フレームワークに依存しないため、ここでショートカットを提供しています。

X-Auth-Token未登録ヘッダー である場合、正式な仕様は適用されず、その存在とコンテンツは常にそれぞれのアプリケーションに関連付けられることに注意してください。一般的な仮定はできません。

30
DaSourcerer

'Authorization:Basic'は、基本認証を意味します。ブラウザ/クライアントは、各リクエストでユーザー名/パスワードを提供する必要があります。

「x-auth-token」の場合、ユーザーは初めてユーザー名/パスワードを入力する必要があり、サーバーはヘッダーフィールド「x-auth-token」にアクセストークンを返します。それ以降のセッションでは、ユーザー名/パスワードではなく、このトークンが交換されます。

11
user18853