Назад | Перейти на главную страницу

различные уровни конфигурации безопасности для Apache SOLR

это то, что нам нужно для нашего экземпляра SOLR

1) все URL-адреса, кроме необходимого IP-адреса, а также ограничения пароля 2) Доступ к выбранному URL-адресу можно получить с любого IP-адреса, но для доступа требуется пароль. этот пароль отличается от пароля, использованного в пункте 1 выше. также, если IP-адрес из нашей внутренней сети, тогда пароль не требуется даже для доступа к выбранному URL-адресу

Короче говоря, нам нужно защищать все, кроме выбора из внешнего мира (ip + пароль). но для select мы хотим предоставить доступ к внешнему миру, поэтому никаких ограничений IP нет, но им нужны имя пользователя и пароль для доступа к нему. однако для выбора, для определенных IP-адресов, нам даже не нужно ограничение имени пользователя и пароля

как этого добиться. заранее спасибо, ребята

Вот как можно фильтровать запросы по IP-адресу пользователя с помощью компонента Tomcat Valve: http://wiki.apache.org/tomcat/FAQ/Security#Q6

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

Web.xml вашего приложения Solr:

 <login-config>
    <auth-method>BASIC</auth-method>
    <realm-name>Admin and Update protection</realm-name>
 </login-config>

 <security-constraint>
    <web-resource-collection>
        <web-resource-name>Hr core administration</web-resource-name>
        <url-pattern>/coreHr/admin/*</url-pattern>
    </web-resource-collection>

    <auth-constraint>
        <role-name>solradmin</role-name>
    </auth-constraint>
 </security-constraint>

 <security-constraint>
    <web-resource-collection>
        <web-resource-name>En core administration</web-resource-name>
        <url-pattern>/coreEn/admin/*</url-pattern>
    </web-resource-collection>

    <auth-constraint>
        <role-name>solradmin</role-name>
    </auth-constraint>
 </security-constraint>

  <security-constraint>
    <web-resource-collection>
        <web-resource-name>Hr core update</web-resource-name>
        <url-pattern>/coreHr/update*</url-pattern>
    </web-resource-collection>

    <auth-constraint>
        <role-name>solradmin</role-name>
    </auth-constraint>
 </security-constraint>

  <security-constraint>
    <web-resource-collection>
        <web-resource-name>En core update</web-resource-name>
        <url-pattern>/coreEn/update*</url-pattern>
    </web-resource-collection>

    <auth-constraint>
        <role-name>solradmin</role-name>
    </auth-constraint>
 </security-constraint>

tomcat-users.xml:

<role rolename="manager"/>
<role rolename="admin"/>
<role rolename="solradmin"/>
<user username="mbo" password="mbo11" roles="manager,admin,solradmin"/>