Здравствуйте. Я пытаюсь реализовать вход в Google+ на своем веб-сайте, у меня все работает, кроме той части, где php проверит идентификатор пользователя и адрес электронной почты, чтобы узнать, есть ли у них учетная запись или мне нужно создать ее для них.
Проблема, которую я имею, состоит в том, как я могу проверить, что то, что php получает из javascript на клиенте, действительно допустимо? Я имею в виду, что кто-то может легко изменить скрипт, чтобы отправить любой идентификатор пользователя Google и адрес электронной почты, а затем войти в систему как любой. Как мне это предотвратить?
Я следовал этому руководству Google до сих пор https://developers.google.com/+/web/signin/add-button
Они ничего не говорят о том, как проверить на бэкэнде, что пользователь, вошедший в систему, действительно является реальным пользователем или нет, я использую неправильный для своей цели, мне не нужен автономный доступ к информации их учетной записи, только когда они зашли на сайт и активны.
На шаге 5 от вашей ссылки есть объект авторизации результатов успеха. Это содержит access_token
, Этот access_token является секретом, который идентифицирует и предоставляет доступ на основе запрошенных разрешений конкретным пользователям, которые были авторизованы. Передайте этот access_token своему бэкэнду через XHR или другой метод и используйте его для отправки аутентифицированного запроса people.get с идентификатором пользователя, установленным на me
, Это скажет вам, кто пользователь, и если вы запросите email
охват их подтвержденный адрес электронной почты.
Других решений пока нет …