Как проверить идентификатор пользователя Facebook при создании записей в формате Ajax на php в приложении Facebook

Я ищу способ проверить идентификатор пользователя Facebook при публикации пользовательских данных с помощью ajax.

Я хочу иметь возможность проверить правильность идентификатора пользователя Facebook при публикации данных с использованием ajax.

Проблема в том, что если я опубликую идентификатор Facebook как часть моих данных AJAX, его можно отредактировать в JavaScript. Я мог бы сделать вызов графа на стороне сервера, но он действительно медленный, поэтому я хочу свести к минимуму вызовы графа. Желательно только позвонить в начале.

Кто-нибудь может предложить эффективный / безопасный метод?

2 ответа

Решение

В конце концов, моим решением было получить идентификатор пользователя Facebook через php sdk и создать его хеш, добавив соль и кодировав его с помощью md5. При публикации формы я включаю и идентификатор Facebook, и хэш. Затем я могу использовать то же значение соли, чтобы дважды проверить правильность идеи Facebook перед ее использованием. Кажется, это обеспечивает достаточную безопасность для моих нужд.

Я знаю, что вы хотите избежать вызовов графа, но вы также можете сделать вызов на стороне клиента и вызвать API Facebook:

FB.api('/me', function(response) {
  // Check that response.id matches the submitting user id
});

Это позволит вам проверить по идентификатору пользователя в Facebook. Нет никакого способа, которым вы можете действительно изменить что-либо в javascript, чтобы "подделка" была другой, вошедшей в систему пользователем Facebook.

В противном случае, я не уверен, как еще вы можете проверить идентификатор, если у вас нет целой системы входа в систему, где вы можете сопоставить данные сеанса с сохраненными данными пользователя в базе данных на стороне сервера.

Другие вопросы по тегам