2016-04-15 3 views
-6

Мне нужно решение, как сделать веб-приложение, размещенное на веб-сервере, доступным для определенных компьютерных машин с использованием языка PHP или Java. Мне нужно ограничить веб-приложение на определенные компьютерные машины. Поэтому, пожалуйста, скажите мне, как это можно достичь?Как сделать веб-приложение доступным только с определенных компьютерных машин?

+1

Как вы хотите обеспечить доступ? На основе IP-адреса? Основано на имени хоста? На основе MAC-адреса? Пожалуйста, будьте более конкретными. – Oldskool

+0

Возможный дубликат [htaccess - используя пароль или белый список ip] (http://stackoverflow.com/questions/7667004/htaccess-using-password-or-ip-whitelist) –

+0

@old school, на основе MAC-адреса мне нужно ограничьте его. Как получить MAC-адрес клиентской машины с сервера. –

ответ

0

Вы делаете белый список IP-адресов, разрешенных для подключения к веб-серверу.

Тогда вы можете получить IP-адрес клиента в PHP:

$userIpAddress = $_SERVER['REMOTE_ADDR']; 

или в Java:

String userIpAddress = request.getHeader("Remote_Addr"); 

Обратите внимание, что получение реального IP-адрес пользователя может быть сложно. Смотрите на эти вопросы:

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

1

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

Я не предлагаю использовать IP-аутентификацию tho, потому что это просто небезопасно.

Apache аутентификации: apache documentation

PHP Authentication: PHP Documentation

0

Если вы используете apache web server, то вы можете ограничить определенные IP-адреса в самой конфигурации веб-сервера, как это было предложено here.

Это не только в Apache, но и в любом веб-сервере, вы можете сделать то же самое, но стиль конфигурации отличается.