1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

OIDCにおける認可コードとアクセストークンの違い

Posted at

認可コード (Authorization Code)

  • 認可コードは、クライアントアプリケーションがリソースオーナー(ユーザー)の同意を得て、認可サーバーから一時的に発行されるコードです。
  • 認可コードはセキュリティ上の理由から、ブラウザやURL経由でクライアントに送信されます。
  • 認可コード自体はリソースに直接アクセスするための権限を持たず、アクセストークンを取得するための中間的なステップです。
  • 認可コードは、通常のシーケンスではクライアントがサーバーと通信してアクセストークンと交換されます。
  • 認可コードは一度だけ使用される短命のコードで、セキュリティを高める役割もあります。

アクセストークン (Access Token)

  • アクセストークンは、クライアントアプリケーションがリソースサーバー(API)に対してユーザーの代わりにリソースアクセスを行うためのトークンです。
  • アクセストークンは認可サーバーから発行され、リソースサーバーがそれを検証することでクライアントにアクセスを許可します。
  • アクセストークンは一定の有効期間を持ち、トークンの有効期限が切れた場合、再度認証が必要になります(またはリフレッシュトークンを使用して更新することが可能)。
  • アクセストークンは認証情報やユーザーの属性に基づいて発行され、APIリクエストのヘッダーに添付してアクセス権限を示します。

簡単な流れ

  1. ユーザーがクライアントアプリケーションにログインを試みると、クライアントは認可サーバーから認可コードを取得します。
  2. クライアントは認可コードを使用して認可サーバーからアクセストークンを取得します。
  3. アクセストークンを用いて、クライアントはリソースサーバーへリクエストを送り、ユーザーのデータやリソースにアクセスします。

まとめ

  • 認可コードはアクセストークンを取得するための一時的なコードで、セキュリティの強化に寄与します。
  • アクセストークンは、リソースアクセス権限を表すトークンで、ユーザーのデータやリソースへのアクセスに使用されます。

この仕組みにより、OIDCはセキュアで効率的な認証とリソースアクセスを実現しています。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?