PHP может получать данные через POST или GET из вашего сайта и даже через интернет-браузер. Один из методов, используемых для этого, - curl.
К чему вы относитесь к этому вопросу, называется Cross-site request forgery.
Если вы в состоянии, вы должны реализовать использование HTTPS в своем приложении, и это может решить многие проблемы безопасности.
В случае, если вы не можете использовать HTTPS (является ли это дорого или любой другой проблемой):
Вы должны проверить информацию, полученную с помощью POST или GET в вашем PHP, этот языке имеет много возможностей для решения этих "проблемы"; Взгляните на это part официального представителя PHP documentation.
Предположим, вы строите систему входа в систему: Также вы можете добавить на страницу входа скрытый элемент с секретным уникальным кодом, который может произойти только один раз, сохранить этот секретный код в сеансе, так что сценарий входа в систему сеанс для этого кода, сравните с тем, что было отправлено на скрипт, должно продолжаться.
И, если вы хотите, чтобы получить IP-адрес ваших посетителей:
function getRealIpAddr()
{
if (!empty($_SERVER['HTTP_CLIENT_IP'])) //check ip from share internet
{
$ip=$_SERVER['HTTP_CLIENT_IP'];
}
elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) //to check ip is pass from proxy
{
$ip=$_SERVER['HTTP_X_FORWARDED_FOR'];
}
else
{
$ip=$_SERVER['REMOTE_ADDR'];
}
return $ip;
}
Наконец, читайте this.
EDIT
Если вы не можете оплатить сертификат HTTPS, (как Halim Qarroum говорит), вы можете использовать:
Self signed SSL certificates, , которые являются бесплатными. Конечно, это имеет свои преимущества и недостатки.
Если он не использует защищенное соединение «HTTPS», передача данных в ящике может быть потенциально прочитана любым телом по разным типам атак. Если злоумышленник может прочитать, какие данные будут отправлены в его API, он может воспроизвести перехваченный запрос, чтобы веб-служба считала его фактическим приложением для Android. –
Он не спрашивал, как предотвратить эту атаку, просто заметил, что использование HTTPS может решить многие проблемы безопасности, о которых вы только что упоминали. Если он не может оплатить соединение https, он может делать то, о чем я говорил, если он может заплатить, то это решит многие проблемы. –
HTTPS - это не вопрос стоимости. Сторонние подписанные сертификаты могут быть дорогими, но ничто не мешает вам использовать самоподписанные сертификаты в этом случае. Кроме того, он задал вопрос о том, как предотвратить несанкционированный доступ к его службе: «Мой вопрос в том, как я могу предотвратить несанкционированные пользователи, использующие мой веб-сервис?». –