VKCOM / vk-android-sdk

Android library for working with VK API, authorization through VK app, using VK functions.
MIT License
458 stars 226 forks source link

Missing authorization code flow #439

Open maxim-sysoev opened 4 years ago

maxim-sysoev commented 4 years ago

Собираетесь ли вы добавлять возможность получения кода для авторизации сервера, как это описано здесь https://vk.com/dev/authcode_flow_user?

guliash commented 3 years ago

Отсутствие этого функционала не позволяет нормально использовать нативное приложение VK для авторизации на бэкенде. Приходится делать через браузер.

Google Sign In, Yandex Passport имеют данный функционал.

guliash commented 3 years ago

Интересно, что добавление VKScope.OFFLINE убирает привязку токена к IP.

libalex commented 3 years ago

Интересно, что добавление VKScope.OFFLINE убирает привязку токена к IP.

Вероятно, дело не в этом. В документации по Authorization Code Flow прямо написано:

Ключ доступа, полученный таким способом, не привязан к IP-адресу, но набор прав, которые может получить приложение, ограничен из соображений безопасности.

guliash commented 3 years ago

@libalex так речь же идет про ключ полученный через мобильное SDK. А это не Authorization Code Flow.

guliash commented 3 years ago

Интересно, что добавление VKScope.OFFLINE убирает привязку токена к IP.

Это кстати логично. Нельзя привязывать токен к IP, так как на мобильном устройстве IP постоянно меняется (например, при смене сети).

libalex commented 3 years ago

@guliash похоже на то. У мобильных устройств IP, как правило, динамичный. А scope offline означает токен без ограничения срока действия. Привязка такого токена к IP ограничила бы срок его действия временем до первой же смены IP.

Semiklit commented 2 years ago

Есть ли какие обновления? Этого функционала не хватает для реализации oauth авторизации через sdk.

Artemych commented 2 years ago

Есть ли какие обновления? Этого функционала не хватает для реализации oauth авторизации через sdk.

в 3.3.0 был фикс

https://github.com/VKCOM/vk-android-sdk/commit/07f2adf0dbb5a4ada01ce0f23be262ce74d4e890#diff-9fe89bca60a110ca7d5a6c8a6a3d4315889c8ee13e41274358b63f415bfb3916L108

Semiklit commented 2 years ago

Речь про Authorization Code Flow. В sdk жестко прописан "response_type" to "token" при авторизации через вебвью, а при авторизации через приложение такого параметра как-будто вообще нет.