skillup

技術ブログ

プログラミング全般

アクセストークンの分類について

投稿日:

認可情報を取得する際に、ID &パスワードではなく、アクセストークンで認証を行うサービスは多いと思うのですが、アクセストークンにも色々ありますので、再度まとめておこうと思います。

以前まとめたもの

Oauthについて

JWT(ジョット)の認証に関して

アクセストークンの分類について

アクセストークンといっても色々なタイプがあるようなのでここでまとめておこうと思います。

識別子型(ハンドル型)

アクセストークンですが、単純にDBの中に入っており、照合する使い捨ての文字列をハッシュ化したものですね。このパターンは多いと思うのですが、有効期限の短いパスワードみたいなものでしょうかね。

この場合、アクセストークンを認可サーバーとリソースサーバー両方に登録する必要が出てきます。

アクセストークン自体の有効期限は30分〜1時間程度になるため、運用方法を考えないとDBを圧迫することになりますが、認可サーバー(トークンを発行するサーバー)とリソースサーバー(個人情報が入っているサーバー)が同一のものであれば、こちらの方がセキュリティのレベルが高いため、こちらを使われることが多いかと思います。

内包型

認可サーバーとリソースサーバーが分離されている場合、認可サーバーで発行されたアクセストークンが正しいかどうかを検証するすべがありません。

この問題の解決手段としてアクセストークン自体に情報を埋め込んでしまおうという手法でJWT「JSON Web Token」という手段が用いられることがあり、これを複合化して、情報を受け取ります。

サンプルを作ったりして動かしたのですが、使い所自体がわかっていませんでした・・

確かに認可サーバーとリソースサーバーが分離している場合、トークン自体の整合を取ることができないので、トークン自体に情報を含まないとダメですね・・・

参考リンク

【連載】世界一わかりみの深いOAuth入門 〜 その2:アクセストークンとリフレッシュトークン 〜

OAuth アクセストークンの実装に関する考察

OAuth 2.0 におけるアクセストークン実装方法の検討

ここがわかりやすく・・というかそのまま勉強させてもらったので、リスペクトの意味をこめて貼っときます。

 

-プログラミング全般
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

メモリに関して 静的領域、スタック、ヒープなど

実務でメモリの調査をしましたが、肝心のメモリについてほとんどわかっていないのでメモ。 メモリの領域を大きく分けると静的、スタック、ヒープに別れる。 Contents1 静的2 スタック3 ヒープ4 そ …

no image

コードの抽象化

リーダブルコードも終盤に少しずつ近づいてきました。 今まではどちらかというとコードの点や線の技術に注目してきましたが、これからは面的な要素に注目していきます。 リーダブルコードでは「無関係の下位問題を …

no image

ユーザーに見せるエラーメッセージに関する考察

プログラムで難しいことの3つは テスト ログ エラーハンドリング とかいてきましたが、ユーザー側に見せるエラーメッセージについて考察して見ました。 Contents1 ログとエラーメッセージの違い2 …

no image

コーディングについての気づき

現在の現場でコーディング関連で勉強になっているポイントについてまとめてみようかと思います。 Contents1 自動化2 命名3 責務の分離4 その他 自動化 規約エラーなどなるべく自動化できるものは …

no image

PHPの例外クラスについて

PHPの例外クラスについて今まで一方的にExceptionで受けており、それ自体は問題なさそうですが、 一応再度確認。 Contents1 エラークラスの分類2 Throwableに関して3 Exce …

アーカイブ