Итак, мой вопрос, почему я должен выбрать тип приложения как веб-сервер и сделать дополнительный шаг, введя URI перенаправления? Какая от этого польза?
Безопасность. Клиент веб-сервера вернет аутентификацию вашему серверу. Установленный вернет его туда, откуда пришел запрос. Если кто-то узнал ваш идентификатор клиента и секрет для веб-приложения, он не смог бы его использовать. Однако, если кто-то получил ваш идентификатор клиента и секрет для установленного приложения, он мог бы легко использовать его, чтобы выдать себя за вашу учетную запись разработчика.
Что такое идентификатор клиента и секрет клиента.
Считайте идентификатор клиента логином, а секрет - паролем. Эти логин и пароль идентифицируют ваш проект для Google, и они идентифицируют разработчика этого проекта как вас.
Вы, как разработчик, несете ответственность за этот логин и пароль. Если он украден, то, насколько Google видит, это ваше приложение, использующее его, у Google нет другого способа узнать об этом. Если логин и пароль для настольного приложения украдены, кто-то может разместить приложение, и, насколько известно, это будет ваше приложение.
Вы создаете супер-классное почтовое приложение, которое дает доступ к учетной записи gmail пользователя. Он становится очень популярным, и многие люди знают его имя. Кто-то крадет ваш идентификатор клиента, и секрет создает приложение, которое выглядит точно так же, как ваше супер-классное почтовое приложение. Никто не может знать, что это не так. Поскольку он настроен как настольное приложение, этот человек может затем установить его и начать сбор авторизации от ваших потенциальных пользователей, даже не подозревая о них. Это похоже на ваше приложение, только ответы будут отправляться на urn: ietf: wg: oauth: 2.0: oob, который является хост-сервером человека, который установил это приложение, чтобы имитировать ваше.
Если ваше приложение не запущено на компьютере пользователя, действительно не рекомендуется использовать установленные учетные данные. При этом их ничто не мешает вам сделать это, так что это сработает.
person
DaImTo
schedule
15.09.2020