PersonalAccessTokenController.php 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. <?php
  2. namespace App\Http\Controllers\Auth;
  3. use Laravel\Passport\Http\Controllers\PersonalAccessTokenController as PassportPatController;
  4. use Illuminate\Http\Request;
  5. use Illuminate\Support\Facades\Gate;
  6. use Symfony\Component\HttpKernel\Exception\AccessDeniedHttpException;
  7. class PersonalAccessTokenController extends PassportPatController
  8. {
  9. /**
  10. * Get all of the personal access tokens for the authenticated user.
  11. *
  12. * @param \Illuminate\Http\Request $request
  13. * @return \Illuminate\Database\Eloquent\Collection<int, \Laravel\Passport\Token>|\Illuminate\Http\JsonResponse
  14. */
  15. public function forUser(Request $request)
  16. {
  17. if (Gate::denies('manage-pat')) {
  18. throw new AccessDeniedHttpException(__('errors.unsupported_with_sso_only'));
  19. }
  20. return parent::forUser($request);
  21. }
  22. /**
  23. * Create a new personal access token for the user.
  24. *
  25. * @param \Illuminate\Http\Request $request
  26. * @return \Laravel\Passport\PersonalAccessTokenResult|\Illuminate\Http\JsonResponse
  27. */
  28. public function store(Request $request)
  29. {
  30. if (Gate::denies('manage-pat')) {
  31. throw new AccessDeniedHttpException(__('errors.unsupported_with_sso_only'));
  32. }
  33. return parent::store($request);
  34. }
  35. /**
  36. * Delete the given token.
  37. *
  38. * @param \Illuminate\Http\Request $request
  39. * @param string $tokenId
  40. * @return \Illuminate\Http\Response|\Illuminate\Http\JsonResponse
  41. */
  42. public function destroy(Request $request, $tokenId)
  43. {
  44. if (Gate::denies('manage-pat')) {
  45. throw new AccessDeniedHttpException(__('errors.unsupported_with_sso_only'));
  46. }
  47. return parent::destroy($request, $tokenId);
  48. }
  49. }