devise_token_authとは
新規登録やログイン、ログアウトなどを実装するときに使うgemです。
deviseというgemを使えば上記のようなユーザーの認証機能を実装できます。
●公式ドキュメントです。
Headersとは
本題ですがdevise_token_authの中でもHeadersというものがあります。
このheaderにアプリの操作などをするときにユーザーの認証情報を送り、
アプリを動かすことができます。
Headersはpostmanの中でも確認できます。
headerの認証サンプル
headersの中には認証サンプルがあります。
公式ドキュメントに載っているものを紹介します。
●access-token
リクエストごとに認証パスワードとして使用
されます。
この値のハッシュなどはデータベースに保管されるみたいです。
⚫︎client
それぞれ違うクライアント(リクエストを送る側)が同時に
session(通信などの処理の流れ)を管理できるもの
です。
pcと携帯で同時認証を受けたいときに使うみたいです。
⚫︎sessionのわかりやすい説明はこちら
⚫︎expirly
sessionの失効日
です。
クライアントがAPIのリクエストを期限切れのトークンとして無効にするためのものです。
●uid
ユーザーを識別するためのものです。
なぜこの機能があるかというとtiming attack
を防止するためのものです。
timing attackとはサイドチャネル攻撃といって、暗号鍵などを推測する手法みたいです。
まとめ
今回紹介したのはdevise_token_authの一部です。
公式ドキュメントや下の参考資料からいろいろと調べてみてください。
公式ドキュメントの和訳
参考資料