当前位置: 首页 > news >正文

03、全文检索 -- Solr -- Solr 身份验证配置(给 Solr 启动身份验证、添加用户、删除用户)

目录

  • 全文检索 -- Solr -- Solr 身份验证配置
    • 启用身份验证:
    • 添加用户:
    • 删除用户:

全文检索 – Solr – Solr 身份验证配置


学习之前需要先启动 Solr

执行如下命令即可启动Solr:

solr start -p <端口>

如果不指定端口,Solr 默认的端口是8983

直接输入 solr start 启动就可以了;

显示:在8983端口上启动Solr服务器,等待长达30分钟。寻找快乐!

在这里插入图片描述



启用身份验证:


Solr为了支持权限控制,提供如下几种身份验证插件:

 - Kerberos Authentication Plugin:Kerberos身份验证插件。- Basic Authentication Plugin:基本身份验证插件。- Hadoop Authentication Plugin:Hadoop身份验证插件。- JWT Authentication Plugin:JWT身份验证插件。 



启用基本身份验证插件:

(1)在Solr安装路径下的server\solr子目录下添加一个security.json文件,可在该文件中定义角色、用户。

在这里插入图片描述

security.json 文件内容如下:

在这里插入图片描述


(2)修改了 security 文件,需要打开小黑窗重启Solr,再次访问Web控制台则要求用户登录。
超级用户账户密码:root 32147
在这里插入图片描述

在这里插入图片描述



添加用户:


用curl命令

向 Solr 的 RESTful 接口发送添加用户的请求即可:

 curl --user root:32147 -X POST ^http://localhost:8983/solr/admin/authentication ^-H 'Content-type:application/json' -d @users.json其中users.json文件内容如下:{"set-user": {"crazyit":"32147"}}

用 Postman

向 http://localhost:8983/solr/admin/authentication 发送POST请求,

请求的JSON数据为:{“set-user”: {“ljh”:“123456”}}

Postman 演示:

输入这个

在这里插入图片描述

再输入这个

在这里插入图片描述

添加用户成功后,可以看到 security.json 配置文件被修改了

如果直接在security文件里面把 root 用户的密码改成123456(如图,把 ljh 的123456这个密码的加盐加密后的字符串复制给root 就行)。
在配置文件改 root 用户的密码后, solr 需要重启才能生效

在postman 新增成功的 ljh 用户,就不需要重启solr就可直接登录成功,因为这个 ljh 用户的添加不是通过修改security文件得来的。

在这里插入图片描述


在postman新增的ljh用户,就不需要重启solr,可以直接登录

在这里插入图片描述

root 在配置文件该密码后,需要重启,才能生效:
重启后重新登录

在这里插入图片描述



删除用户:


用curl命令

 向Solr的RESTful接口发送删除用户的请求即可:curl --user root:32147 -X POST ^http://localhost:8983/solr/admin/authentication ^-H 'Content-type:application/json' -d @delete.json其中delete.json文件内容如下:{"delete-user": ["crazyit"]}

用Postman

向 http://localhost:8983/solr/admin/authentication 发送 POST 请求,请求的 JSON 数据为:{“delete-user”: [“ljh”]}

其实所有用户最终都是放在security.json文件中管理的,该文件中只有密码不能直接修改,其他都可以直接修改。因为密码是加盐加密的。


Postman 演示:

在这里插入图片描述



请求类型是 DELETE 好像不支持,所以改成 POST 请求。

成功删除 ljh 这个用户

在这里插入图片描述

如图,security 配置文件的ljh用户的信息就没了

在这里插入图片描述



提示:

除了添加用户(添加用户需要输入加盐加密的密码),对用户的其他操作(如 删除用户、为用户添加权限等)都可以通过直接修改 security.json 文件来实现。

相关文章:

  • 速盾:海外服务器用了cdn还是卡怎么办
  • 【FTP讲解】
  • 安卓价值1-如何在电脑上运行ADB
  • 【Linux学习】生产者-消费者模型
  • Day 44 | 动态规划 完全背包、518. 零钱兑换 II 、 377. 组合总和 Ⅳ
  • 使用Xdisplay将ipad作为扩展显示器Agent闪退问题
  • openstack(T版)公有云--Dashboard服务
  • whisperspeech 英文TTS的实现
  • Python学习之路-爬虫进阶:爬虫框架
  • 11.JavaScript 中如何进行隐式类型转换?
  • 2024年华为OD机试真题-计算面积-Python-OD统一考试(C卷)
  • C语言静态库深入剖析
  • Apache Kafka: 强大消息队列系统的介绍与使用
  • OpenGL-ES 学习(1)---- AlphaBlend
  • nodejs学习计划--(十)会话控制及https补充
  • 07.Android之多媒体问题
  • Angular 响应式表单 基础例子
  • Apache Spark Streaming 使用实例
  • ES10 特性的完整指南
  • JavaScript DOM 10 - 滚动
  • JavaScript新鲜事·第5期
  • js操作时间(持续更新)
  • Perseus-BERT——业内性能极致优化的BERT训练方案
  • Python实现BT种子转化为磁力链接【实战】
  • SpiderData 2019年2月23日 DApp数据排行榜
  • Spring-boot 启动时碰到的错误
  • TypeScript实现数据结构(一)栈,队列,链表
  • vagrant 添加本地 box 安装 laravel homestead
  • zookeeper系列(七)实战分布式命名服务
  • 从setTimeout-setInterval看JS线程
  • 来,膜拜下android roadmap,强大的执行力
  • 浅谈JavaScript的面向对象和它的封装、继承、多态
  • 入门到放弃node系列之Hello Word篇
  • 想使用 MongoDB ,你应该了解这8个方面!
  • ​力扣解法汇总1802. 有界数组中指定下标处的最大值
  • #AngularJS#$sce.trustAsResourceUrl
  • (0)Nginx 功能特性
  • (03)光刻——半导体电路的绘制
  • (day 2)JavaScript学习笔记(基础之变量、常量和注释)
  • (echarts)echarts使用时重新加载数据之前的数据存留在图上的问题
  • (读书笔记)Javascript高级程序设计---ECMAScript基础
  • (二)【Jmeter】专栏实战项目靶场drupal部署
  • (二)基于wpr_simulation 的Ros机器人运动控制,gazebo仿真
  • (六)软件测试分工
  • (三维重建学习)已有位姿放入colmap和3D Gaussian Splatting训练
  • (四)鸿鹄云架构一服务注册中心
  • (原創) 人會胖會瘦,都是自我要求的結果 (日記)
  • (转)大型网站架构演变和知识体系
  • .chm格式文件如何阅读
  • .desktop 桌面快捷_Linux桌面环境那么多,这几款优秀的任你选
  • .java 9 找不到符号_java找不到符号
  • .net core 6 集成 elasticsearch 并 使用分词器
  • .net core 6 集成和使用 mongodb
  • .net core IResultFilter 的 OnResultExecuted和OnResultExecuting的区别
  • .Net MVC4 上传大文件,并保存表单