#php #mysql #ios #facebook #facebook-login
#php #mysql #iOS #Facebook #facebook-вход
Вопрос:
В настоящее время мое приложение для iOS подключено к API facebooks для входа пользователей в мое приложение. Я не предоставляю пользователям никакого другого способа входа в систему, поэтому у них сейчас нет локальных паролей в моей базе данных. В настоящее время приложение отправляет идентификатор пользователя facebook на мой сервер, и если он есть в БД, он завершает вход в систему, если нет, он перенаправляет пользователя на регистрацию. Очевидно, что это довольно паршивый способ сделать это, поскольку любой может просто ввести идентификатор пользователя, если он его знает (это общедоступная информация), и войти в мое приложение как кто-то другой. У меня есть операторы if в моем PHP, чтобы убедиться, что пользователь действительно находится в таблице перед публикацией.
Мой вопрос в том, как я могу сделать процесс входа в систему безопасным, чтобы люди не могли просто ввести идентификатор пользователя и получить доступ? Я прочитал API facebook, но я не очень хорошо знаком с программированием и был бы признателен за помощь. Я знаю, что у facebook должно быть что-то для этой цели, я либо пропустил это, потому что я этого не понимаю, либо полностью пропустил.
Заранее спасибо!
Ответ №1:
Получите доступ к токену и сохраните его в своей базе данных. Вместо сохранения идентификатора пользователя.
Токены предоставляются только тогда, когда пользователь предоставляет доступ к приложению, аналогично тому, что вы видите на обычном веб-сайте, который имеет доступ для входа в Facebook.
Дополнительная документация здесь: официальный Fb iOS SDK https://developers.facebook.com/docs/reference/ios/current/class/FBAccessTokenData /