読んで欲しい人
- 「トークンって何?」と聞かれても、答えられない人
- 上の質問をされて、黙り込んでしまった過去の自分
トークンとは?
トークンとは|「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典
天下無双のぴよぴよ先生は
分野や文脈次第で何を指しているか変わってくるから、一言で説明できるものじゃないよ。その分野ごとの意味を調べてね
と、おっしゃっていますが
IT、プログラム界隈におけるトークンとしては暗号化された文字列と表現しても差し支えないと思います
大体トークンって、セキュリティトークンとか認証トークンの脈絡で使用されるケースが多いと思うので、今回は「認証トークン」を説明します
認証トークンとは?
アクセス制御を目的としたデジタル形式の認証情報のことを言います
ユーザーが特定のアプリケーションにアクセスする際の通行証のようなものをイメージしてください
認証トークンの何が良いのか
- セキュリティの向上
- 通常のログインIDやパスワードよりも複雑かつ漏洩しにくいので、悪い奴が入って来にくくなります
- ユーザー体験向上
- アクセスするたびに「パスワードを入力してください」と言われると、めんどいです。トークンならユーザーはパスワードを入力する必要がありません
認証トークンの仕組み
トークンの生成
ユーザーが最初にアプリにログインすると、サーバーはその人専用の「トークン」を発行してくれます。
トークンには、有効期限やアクセス権限などの情報が含まれています
トークンの検証
ユーザーはパスワードを入力しない代わりに、このトークンをサーバーに見せつけてアクセスします。
サーバーはそのトークンが有効であればアクセスを許可して、無効であればアクセスを許可しません
有効期限が切れたり、トークンを削除した場合は再度パスワードでアクセスをして、トークンの再発行を行います(仕様によりますが)
感想
- 「いつも言ってるトークンってなんなの?」と質問されて回答できなかったのが悔しかったです。
- いつ何時でも人に話せて「理解」ですね
参考