1. ホーム
  2. http

[解決済み] カスタムHTTP認証ヘッダー

2022-07-14 08:56:09

質問

HTTP 認証ヘッダーにカスタム データを置くことが許容されるかどうか疑問に思っていました。私たちは RESTful API を設計しており、認証のカスタム メソッドを指定する方法が必要な場合があります。例として、それを FIRE-TOKEN 認証とします。

このようなものは、仕様によれば有効であり、許可されるのでしょうか。 Authorization: FIRE-TOKEN 0PN5J17HBGZHT7JJ3X82:frJIUN8DYpKDtOLCwo//yllqDzg=

2番目の文字列の最初の部分(':'の前)はAPIキーで、2番目の部分はクエリ文字列のハッシュである。

どのように解決するのですか?

で定義された書式は RFC2617 credentials = auth-scheme #auth-param . というわけで、fumanchuさんと同意見で、修正された認証スキームは次のようになると思います。

Authorization: FIRE-TOKEN apikey="0PN5J17HBGZHT7JJ3X82", hash="frJIUN8DYpKDtOLCwo//yllqDzg="

ここで FIRE-TOKEN がスキームで、2つのキーと値のペアが認証パラメータです。引用符はオプションだと思いますが...(p7-auth-19の付録Bより)。

auth-param = token BWS "=" BWS ( token / quoted-string )

これは最新の標準に適合しており、すでに使用されており(下記参照)、(追加のパラメータが必要な場合)簡単な拡張のためのキー-バリュー形式を提供すると考えています。

このauth-paramの構文のいくつかの例は、ここで見ることができます...

https://datatracker.ietf.org/doc/html/draft-ietf-httpbis-p7-auth-19#section-4.4

https://developers.google.com/youtube/2.0/developers_guide_protocol_clientlogin

https://developers.google.com/accounts/docs/AuthSub#WorkingAuthSub