Как получить доступ к потоку кода авторизации, неявному потоку и гибридному потоку в Django oauth toolkit
Я хочу реализовать OpenID connect в своем проекте.
Итак, я начал использовать Django Oauth Toolkit.
Я смог внести изменения в меню Dajango Rest framework и смог протестировать поток на основе пароля владельца ресурса с помощью команды curl
curl -X POST -d "grant_type=password&username=<user_name>&password=<password>" -u"<client_id>:<client_secret>" http://localhost:8000/o/token/
После этого я сделал все изменения, как указано в меню OpenId Connect.
У меня есть
- Сгенерирован закрытый ключ RSA
- Добавил изменения, как указано в документации
- Затем я зарегистрировал приложения для каждого потока, как указано в документации.
Затем возникла проблема. Я попробовал протестировать эти потоки так же, как я тестировал поток на основе пароля владельца ресурса например:
- Для потока кода авторизации
curl -X POST -d "grant_type=password&username=user&password=aryan123&scope=openid" -u "rwOah6DU7PXPbpE7CWVokh16YeMIFsPCE4zv1ZUk: 5p186YD3Wvf0nMz4bfXd9UJXbQnACMfpVzHwJ6AuneoPqnjJuoPUz4CiEM653gUIhCOMtV96Yymr1kLnAimdyfxWZMP2hOzslEH9kMpfoqyOorwviY8f1rs1BqcTSUtn" http://localhost:8000/o/token/
.
I'm getting the error:
{
"error": "invalid_grant",
"error_description": "Invalid credentials given."
}
- Для неявного потока
curl -X POST -d "grant_type=password&username=user&password=aryan123&scope=openid&response_type=id_token" -u "qKgH4Bx5QzOdSdRo5h7vUSpSaivHk0SaccMa0coH: DyNdcoS52JuanNhjjqqbRnemGaq27sQrwa43C6ieYahxCdHYXXJt4Y5ZdwXVbNZdZmt89XoAJ7kBuFoDZanZvhCCza3WMLWlCwSy5qv09W1QyJsLmTEGUzRHkytU21s1" http://localhost:8000/o/token/
.
I'm getting the error:
{
"error": "invalid_grant",
"error_description": "Invalid credentials given."
}
- Для гибридного потока
curl -X POST -d "grant_type=password&username=user&password=aryan123" -u "YpKesUZnxyvOysKje4H2NNFhs45roO8z0SBu58Y5: Yf2IAsMRoLCbLrEUHsgPByLLnmFrNYPvqtYXuaZAJV5HbHioFZtbsTzh6Oj1W7jgWOKVU0PLsUwBPO0j5y7fhOLbUFiH2X9ZhdnQ3wJ7KxFOjTHYu2Cd52IxGO7U3iF3" http://localhost:8000/o/token/
.
I'm getting the error:
{
"error": "invalid_grant",
"error_description": "Invalid credentials given."
}
Для целей разработки я сгенерировал закрытый ключ и сохранил его в файле python следующим образом Примечание: В закрытом ключе было несколько пробелов, которые я удалил из-за ошибки
Я запутался в параметрах, которые нужно передать в curl. Возможно, проблема в этом или в чем-то другом, что я не могу определить
Нужен ваш взгляд на этот вопрос. Спасибо...