2014-02-21 6 views
4

Есть ли способ предоставить доступ в зависимости от computer name. Как указать это условие в configuration?Как разрешить доступ к определенным компьютерам?

Также существует способ предоставления доступа в зависимости от идентификатора пользователя (переменная среды). Я использовал это, используя VBA. Однако, поскольку это родной продукт Microsoft, мне пришлось просто рассказать environ. Как насчет tomcat?

Я прочитал это article, но не совсем понял. Я предполагаю, что мне нужно использовать Remote Address Filter, но мне нужно иметь пример кода.

+0

Проверьте этот вопрос: http://stackoverflow.com/questions/1839618/tomcat-valve-settings –

ответ

1

First Point, фильтрация запросов на основе имени хоста DNS «дорогая». Он заставляет tomcat выполнять обратный поиск DNS. Когда запрос появляется, он не содержит DNS-имя, а просто IP-адрес клиента. Поэтому tomcat должен задать системе имя (или имена), которое соответствует IP-адресу клиента.

Если вы хотите принять запрос от определенного имени хоста, вы, возможно, уже знаете IP-адрес (или диапазон IP-адресов), который соответствует имени хоста. Если это так, вы можете использовать Remote Address Filter, чтобы установить для него требуемое значение (IP-адреса).

Вторая точка, используя Remote Address Filter, дает гибкость с двумя атрибутами, allow и deny.

Пример:

ПРИМЕЧАНИЕ: IP-адрес, используемый здесь, чтобы показать, как пример.

Предположим, что есть имя хоста myhostname с диапазоном IP-адресов 134.87.13.0 - 134.87.13.255. Вы хотите разрешить только этот диапазон и отклонить все остальные. Вы бы просмотрели DNS для этого диапазона. Скажем, если вы найдете его как 164.32.90.100.

Тогда вы бы настроить клапан, как:

<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="164\.32\.90\.100, 134\.87\.13\.\d{1,3}" /> 

Теперь предположим, что в пределах диапазона, вы хотите запретить поддиапазон 134.87.13.51 - 134.87.13.60.

Тогда вы бы настроить клапан, как:

<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="164\.32\.90\.100, 134\.87\.13\.\d{1,3}" deny="134\.87\.13\.(5[1-9]|60)" /> 

Настройка динамических значений для allow и deny возможно с помощью регулярных выражений.

Возможно, эти данные помогут вам решить вашу проблему.

Edited

Один последний момент, если вы разрешить/запретить выбор IP-адресов, вы не должны отклонить запрос от «локальный». Поэтому добавьте 127\.0\.0\.1 в свой диапазон разрешений.

Смежные вопросы