Как использовать поставщиков удостоверений в REST API keycloak?

#reactjs #rest #oauth #keycloak

#reactjs #rest #oauth #keycloak

Вопрос:

В настоящее время я переключаюсь с моей собственной «собранной» системы аутентификации на keycloak. В настоящее время я немного затрудняюсь, пытаясь понять, как использовать поставщиков удостоверений для входа в систему с помощью keycloak. До сих пор я мог легко добавлять поставщиков удостоверений, используя rest API: http://localhost:8080/auth/admin/realms/test/users

 {"firstName":"FIRSTNAME","lastName":"LASTNAME", "enabled":"true", "username":"app-user", "federatedIdentities": [{"identityProvider": "google", "userId": "XXXXXXXXXXXXXX", "userName": "XXXX XXXXXXXXXXXX"}]}
 

И после перехода в панель администратора и входа в систему через их веб-интерфейс все, кажется, работает.

В настоящее время я пытаюсь использовать REST API для входа в систему, но я продолжаю получать следующую ошибку

 {
    "error": "invalid_grant",
    "error_description": "Code not valid"
}
 

используя следующий URL-адрес и параметры

 http://localhost:8080/auth/realms/test/protocol/openid-connect/token
clinet_id=test
grant_type=authorization_code
code=XXXX(pulled from frontend using react-social-login)
redirect_uri=http://localhost:8080/redirect
client_secret=XXXXXX
 

Любая помощь была бы признательна, так как я хотел бы иметь возможность выполнять все входы в систему с помощью REST API, если вы также рекомендуете переключиться на что-то, что лучше всего подходит моему приложению (передача информации из внешнего интерфейса и авторизация ее в серверной части), пожалуйста, дайте мне знать.