Skip to content

feat: implement Infrastructure layer for User Logout / ユーザーログアウトのInfrastructure層実装 #409

Description

@zigzagdev

Parent Issue / 親Issue

#408

Motivation / 目的

Add revokeCurrentToken to TokenServiceInterface and implement it in SanctumTokenService for single-session logout.

ログアウト時に現在のトークンだけを削除するため、TokenServiceInterface にメソッドを追加し、SanctumTokenService に実装します。

What to do / 実施内容

  • TokenServiceInterface.php: revokeCurrentToken(string $plainTextToken): void を追加
  • SanctumTokenService.php: revokeCurrentToken を実装
    • PersonalAccessToken::findToken($plainTextToken) でトークンを検索し削除
    • トークンが存在しない場合は何もしない(冪等)

Note: revokeAllTokens は既に実装済み。今回は現在のセッションのみ削除する revokeCurrentToken を追加する。

Tests / テスト

  • test_revokeCurrentToken_deletes_the_given_token
  • test_revokeCurrentToken_does_nothing_when_token_not_found

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions