Bearerトークン

ウィキペディアから

Bearerトークンは、セキュリティトークンのうちその利用可否が「トークンの所有」のみで決定されるものである[1]。持参人トークン・署名なしトークンとも呼ばれる。

概要

セキュリティトークンとはある対象へのアクセス制御(利用可否など)を担うトークン・許可証であり、Bearerトークンはその一形態である。Bearerとは「持参人」すなわち「トークンを持ってきた存在」を意味する。BearerトークンはBearer(それを持ってきた存在)にアクセス権限を与える特性を持つ。

Bearerトークンはしばしば切符に例えられる。切符は乗り物への乗車=アクセスを制御するトークンである。切符の利用権利は単純に「切符を持ってきた人=Bearer」に付与される。誰が切符を購入し管理していたかは関係がない。極端な例では拾った切符であっても(切符の権利者でなくても)持ってきた人=Bearerに乗車権利が付与される。このように切符はBearerトークンと同じ性質を持っている。

Bearerトークンの対比としてproof-of-possessionトークン(PoPトークン、「所有の証明」トークン、記名式トークン)が挙げられる。PoPトークンはトークンの所有に追加してトークン権利を所有することの証明を必要とする[1]。Bearerトークンは切符に例えられるが、PoPトークンは国際線飛行機チケットに例えられる。国際線飛行機はチケットを提示するだけではなく、チケットに記された氏名の確認、すなわち権利所有者であることの証明が必要である(パスポートを利用する)。Bearerトークンは単純にトークンの所有のみが求められる点でPoPトークンと異なる。

Bearerトークンの具体例としてGoogleサインインが挙げられる。GoogleサインインをおこなうとGoogleはユーザーに対してBearerトークンを発行する。Bearerトークンはブラウザに保存されており、Googleのサービス例えばGmailを利用する際、Bearerトークンをリクエストに付与する形で持参することにより、Gmailへのアクセス権を得ている。

Bearerトークンを用いたWeb認証はBearer認証あるいはトークン認証と呼ばれる[2]OAuth2.0、OpenID ConnectはBearerトークンによる認証/認可をサポートしている。

HTTP認証

HTTP認証でBearer認証を行う場合、認証スキーム名としてBearerを用いる。この認証スキーム名は、RFC 6750 の 6.1.1. The "Bearer" OAuth Access Token Type("Bearer" OAuth アクセストークンタイプ)により登録されている[3]

流出と不正アクセス

Bearerトークンはその所有のみによって権利付与をおこなうため、Bearerトークンは決して外部で流出させてはならない。なぜなら、拾った切符は利用できてしまうのと同様に、流出したBearerトークンによって第三者がアクセス権を得てしまうからである。

参考文献

脚注

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.