OAuth徹底入門(3)

OAuthのコンポーネントの役割

1. Client(クライアント)

主な役割:

  • リソースオーナーに代わって、保護されたリソースにアクセスするためのトークンを要求します。

やるべきこと:

  • リソースオーナーからの明確な同意を取得する。
  • AuthServerにリダイレクトして、認可コードまたはトークンを取得する。
  • 認可コードを使用してアクセストークンを取得する際には、クライアントの認証を行う。
  • アクセストークンを使用して、保護されたリソースにアクセスする。

2. Authorization Server (AuthServer)

主な役割:

  • 認証および認可の両方のプロセスを管理し、適切なトークンをクライアントに発行する。

やるべきこと:

  • リソースオーナーの認証を行う。
  • リソースオーナーからクライアントへのアクセスの承認を得る。
  • 認可コードやアクセストークンをクライアントに発行する。
  • クライアントの認証を行う(特に認可コードフローにおいて)。
  • トークンの有効期限や範囲を管理する。

3. Protected Resource(保護されたリソース)

主な役割:

  • 適切なアクセストークンを持つクライアントのみにリソースへのアクセスを許可する。

やるべきこと:

  • クライアントからのリクエストに添付されたアクセストークンの検証。
  • トークンが有効であれば、要求されたリソースを提供する。
  • トークンが無効または期限切れであれば、アクセスを拒否し、適切なエラーレスポンスを返す。

学習教材

関連記事