手把手教你 对 solr8 配置用户登录验证

超、凢脫俗 2022-01-25 15:41 822阅读 0赞

首先下载最新版solr应用服务器压缩包,下载地址:点此下载

下载完毕后解压缩,目录结构变化不大,如图:

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTE1NjEzMzU_size_16_color_FFFFFF_t_70

接着我们就开始进行登录的一系列配置操作。

打开路径:solr-8.1\server\etc,如图:

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTE1NjEzMzU_size_16_color_FFFFFF_t_70 1

在此目录下新建verify.properties 配置文件(名字随意),如图:

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTE1NjEzMzU_size_16_color_FFFFFF_t_70 2

打开文件进行编辑 , 内容如下:

  1. #用户名 密码 权限
  2. user:pass,admin

格式为:用户名:密码,权限

也可配置多用户,内容如下:

  1. #用户名 密码 权限
  2. user: pass,admin
  3. user1: pass,admin
  4. user3: pass,admin

接着找到目录:solr-8.1\server\contexts,文件列表如图:

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTE1NjEzMzU_size_16_color_FFFFFF_t_70 3

打开文件进行编辑,文件内容如下:

  1. <?xml version="1.0"?>
  2. <!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure_9_0.dtd">
  3. <Configure class="org.eclipse.jetty.webapp.WebAppContext">
  4. <Set name="contextPath"><Property name="hostContext" default="/solr"/></Set>
  5. <Set name="war"><Property name="jetty.base"/>/solr-webapp/webapp</Set>
  6. <Set name="defaultsDescriptor"><Property name="jetty.base"/>/etc/webdefault.xml</Set>
  7. <Set name="extractWAR">false</Set>
  8. </Configure>

在文件configure中添加获取用户文件的配置,内容如下:

  1. <Get name="securityHandler">
  2. <Set name="loginService">
  3. <New class="org.eclipse.jetty.security.HashLoginService">
  4. <Set name="name">verify—name</Set>
  5. <Set name="config"><SystemProperty name="jetty.home" default="."/>/etc/verify.properties</Set>
  6. </New>
  7. </Set>
  8. </Get>

第三处需要修改的地方为web.xml,如图:

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTE1NjEzMzU_size_16_color_FFFFFF_t_70 4

在文件中找到security-constraint的配置,内容如下:

  1. <!-- Get rid of error message -->
  2. <security-constraint>
  3. <web-resource-collection>
  4. <web-resource-name>Disable TRACE</web-resource-name>
  5. <url-pattern>/</url-pattern>
  6. <http-method>TRACE</http-method>
  7. </web-resource-collection>
  8. <auth-constraint/>
  9. </security-constraint>
  10. <security-constraint>
  11. <web-resource-collection>
  12. <web-resource-name>Enable everything but TRACE</web-resource-name>
  13. <url-pattern>/</url-pattern>
  14. <http-method-omission>TRACE</http-method-omission>
  15. </web-resource-collection>
  16. </security-constraint>

在之后追加 security-resource-collection (删除security-constraint,会导致登录的配置无效),具体配置如下,

在auth-constraint节点添加角色 admin,并添加登录配置,如图:

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTE1NjEzMzU_size_16_color_FFFFFF_t_70 5

  1. <security-constraint>
  2. <web-resource-collection>
  3. <web-resource-name>Solr</web-resource-name>
  4. <url-pattern>/</url-pattern>
  5. </web-resource-collection>
  6. <auth-constraint>
  7. <role-name>admin</role-name>
  8. </auth-constraint>
  9. </security-constraint>
  10. <login-config>
  11. <auth-method>BASIC</auth-method>
  12. <realm-name>verify-name</realm-name>
  13. </login-config>

之后启动solr,访问solr地址:

  1. http://localhost:8088/solr/

主界面如图:

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTE1NjEzMzU_size_16_color_FFFFFF_t_70 6

另外我们也可以通过solr地址中加入用户名密码的方式登录,直接进入主界面,地址如下:

  1. http://user:pass@localhost:8088/solr/

如有疑问可在下面留言。

参考博文:https://blog.csdn.net/ddfcloi/article/details/79898039

发表评论

表情:
评论列表 (有 0 条评论,822人围观)

还没有评论,来说两句吧...

相关阅读

    相关 手把手验证码检验的登录

    在网站实际应用过程中,为了防止网站登录接口被机器人轻易地使用,产生一些没有意义的用户数据,所以,采用验证码进行一定程度上的拦截,当然,我们采用的还是一个数字与字母结合的图片验证

    相关 手把手实现验证码功能

    前言 不少网站为了防止用户利用机器人自动注册、登录、灌水,都采用了验证码技术。所谓验证码,就是将一串随机产生的数字或符号,生成一幅图片,图片里加上一些干扰象素(防止OCR