Каким должен быть OAuth2 redirect_uri для настольного (не веб-приложения)?

Я пишу приложение, которое будет интегрировать веб-приложение (например, Harvest). Веб-приложение поддерживает авторизацию через OAuth2.

Рабочий процесс выглядит следующим образом:

  1. Направьте пользователя на определенный URL-адрес, где он может пройти аутентификацию и дать разрешение моему приложению.

  2. В этом первом запросе я должен указать URI обратного вызова, который получит токен авторизации.

  3. Используйте отправленный токен авторизации для отправки запросов от имени пользователя.

Первая часть кажется достаточно простой, но каким должен быть URI обратного вызова? Это не веб-сайт, у него нет открытого веб-интерфейса.


person Brendan Abel    schedule 21.09.2016    source источник
comment
Возможный дубликат OAuth 2.0 для настольных и мобильных приложений   -  person metatoaster    schedule 21.09.2016
comment
Хотя в качестве альтернативы ваше приложение может прослушивать локальный хост, согласно руководству Google для разработчиков.   -  person metatoaster    schedule 21.09.2016
comment
@metatoaster Да, на этот другой вопрос на самом деле не было ответа, просто ссылка на предложение 6-летней давности исправить OAuth, чтобы он действительно работал с нативными приложениями, а также несколько обходных путей, которые, похоже, требуют запуска веб-сервер где-то. Я надеялся, что за последние 6 лет что-то изменилось.   -  person Brendan Abel    schedule 21.09.2016
comment
Если под redirect_uri вы подразумеваете callback_uri, это необязательно в соответствии с RFC 6749, раздел 4.1.1, с разделом 9 полностью обсудите, что вам нужно сделать для собственное приложение, которое также обсуждалось в руководстве разработчика, на которое я ссылался ранее. Вы должны проделать работу, чтобы выяснить, какое из этих решений лучше для вас.   -  person metatoaster    schedule 21.09.2016
comment
Кроме того, принятый ответ в дубликате, который я предложил, также явно указал регистрацию пользовательского URI в операционной системе настольного компьютера, который также взят из RFC (в котором указан URI перенаправления со схемой, зарегистрированной в операционной системе). Это в основном так же хорошо, как ответ, который вы получите на эти общие вопросы типа протокола.   -  person metatoaster    schedule 21.09.2016
comment
Я использовал callback_uri для отправки AuthCode, а затем запустил свое приложение в качестве параметров командной строки, чтобы вы могли общаться с вашим удаленным сервером. Я использовал github.com/Microsoft/cpprestsdk/wiki/Getting-Started-Tutorial< /а>. если вы хотите знать, как запустить ваше приложение, я пришлю вам метод   -  person abdulrhmanOmran    schedule 29.11.2019