Из проекта OAuth, неявной section:Client олицетворение в приложении OAuth с неявной авторизацией
При выдаче маркеров доступа во время неявного потока гранта, сервер авторизации не выполняет проверку подлинности клиента.
Теперь, давайте предположим, что это:
- У меня есть Android или IOS приложение.
- Я использую неявное разрешение OAuth, чтобы получить токен доступа к некоторому ресурсу. Это произойдет через веб-представление.
- Пользователь разрешил мое приложение некоторым ресурсам. Это означает:
- Он аутентифицирован в оригинальной службе, у которой есть ресурс.
- И веб-просмотр будет содержать его там.
- Существует злонамеренный Android или IOS приложение, которое пытается получить маркер доступа, используя тот же
client_id
, что я использую в моем приложении (client impersonating). У него также есть тот жеredirect_uri
, который в родных приложениях может быть как-то вродеfb://blabla
. - Как я понимаю, это вредоносное приложение может получить токен доступа, который первоначально принадлежит моему
client_id
, используя веб-представление. Это происходит потому, что пользователь даже не осознает используемогоclient_id
, который является моим, из-за 3.1 и 3.2. - Он может делать с ним вредные вещи, помимо ограничения скорости (у нескольких поставщиков, таких как FB и Twitter), которые мой клиент будет вынужден из-за чрезмерного использования.
Есть ли способ предотвратить это?