Bearerトークン

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

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

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

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

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

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

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

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

参考文献 

 OAUTHで「記名式」トークンを使うもう一つの方法
 Token Bindingについて

脚注 

認証技術