Назначение пользователя токенам не работает в системе Symfony 4 & FOSOAuthServerBundle
, которую я сейчас использую.
Я понимаю управление токеном на контроллере и использую FOSUserBundle
для проверки пользователя.
Я проверю userdata с контроллером и другим файлом.
в Security.yml
security:
encoders:
FOS\UserBundle\Model\UserInterface: bcrypt
providers:
fos_userbundle:
id: fos_user.user_provider.username
firewalls:
api:
pattern: ^/api/v2
fos_oauth: true
stateless: true
oauth_token:
pattern: ^/oauth/v2/token
security: false
main:
pattern: ^/
form_login:
provider: fos_userbundle
csrf_token_generator: security.csrf.token_manager
logout: true
anonymous: false
oauth_authorize:
pattern: ^/oauth/v2/auth
form_login:
provider: fos_userbundle
check_path: /oauth/v2/auth_login_check
login_path: /oauth/v2/auth_login
anonymous: true
access_control:
- { path: ^/api, roles: [ IS_AUTHENTICATED_FULLY ] }
ПОЛУЧИТЬ ОТВЕТ НА АВТОМОБИЛЬ
// http://localhost:8000/oauth/v2/token?client_id=CLIENT_ID&client_secret=SECRET&grant_type=password&username=username&password=password
{
"access_token":"Token",
"expires_in": 3600,
"token_type": "bearer",
"scope": null,
"refresh_token":"Token"
}
Контроллер
/**
* @param Request $request
* @Route("/Task")
* @return Response
*/
public function getData(Request $request):Response
{
return $this->json( $this->get("security.token_storage")->getToken());
}
Результат выглядит следующим образом:
{
"token": "Token",
"credentials": "Token",
"roles": [
],
"username": "",
"user": null,
"authenticated": true,
"attributes": [
]
}
Пожалуйста, помогите мне в этом.