solr kerberos java_solr添加kerberos认证及授权
solr添加kerberos认证及授权
@(OTHERS)[solr]
一、kerberos
(一)添加用户
在kdc中添加solr用户:
root@kdc:/# kadmin.local
kadmin.local: addprinc HTTP/192.168.0.107
kadmin.local: ktadd -k /tmp/107.keytab HTTP/192.168.0.107
kadmin.local: quit
(二)创建security.json
server/scripts/cloud-scripts/zkcli.sh -zkhost localhost:2181 -cmd put
/security.json '{"authentication":{"class":
"org.apache.solr.security.KerberosPlugin"}}'
或者以文件的形式上传
(三)创建jaas文件
Client {
com.sun.security.auth.module.Krb5LoginModule required
useKeyTab=true
keyTab="/keytabs/107.keytab"
storeKey=true
useTicketCache=true
debug=true
principal="HTTP/192.168.0.107@EXAMPLE.COM";
};
放到哪里?
(四)在solr.in.sh中添加以下内容
SOLR_AUTHENTICATION_CLIENT_CONFIGURER=org.apache.solr.client.solrj.impl.Krb5HttplientConfigurer
SOLR_AUTHENTICATION_OPTS="-Djava.security.auth.login.config=/home/foo/jaas-client.co
nf -Dsolr.kerberos.cookie.domain=192.168.0.107 -Dsolr.kerberos.cookie.portaware=true -Dsolr.kerberos.principal=HTTP/192.168.0.107@EXAMPLE.COM -Dsolr.kerberos.keytab=/keytabs/107.keytab"
对于tomcat的启动方式也一样?
(五)启动solr
bin/solr -c -z server1:2181,server2:2181,server3:2181/solr
tomcat 不是这样子。
二、授权
(一)启用plugin
{
"authentication":{
"class":"solr.BasicAuthPlugin",
"blockUnknown": true,
"credentials":{"solr":"IV0EHq1OnNrj6gvRCwvFwTrZ1+z1oBbnQdiVC3otuq0=
Ndd7LKvVBAaZIF0QAVi1ekCfAJXr1GGfLtRUXhgrF8c="}
},
"authorization":{
"class":"solr.RuleBasedAuthorizationPlugin",
"permissions":[{"name":"security-edit",
"role":"admin"}]
"user-role":{"solr":"admin"}
}}
(二)授权
curl --user solr:SolrRocks -H 'Content-type:application/json' -d '{
"set-permission": {"name":"collection-mgr",
"collection": null,
"path":"/admin/collections",
"params":{"action":[LIST, CREATE]},
"before": "read",
"role": "admin"}
}' http://localhost:8983/solr/admin/authorization
三、solrJ的认证
To use Kerberos authentication in a SolrJ application, you need the following two lines before you create a SolrClient:
System.setProperty("java.security.auth.login.config", "/home/foo/jaas-client.conf");
HttpClientUtil.setConfigurer(new Krb5HttpClientConfigurer());
You need to specify a Kerberos service principal for the client and a corresponding keytab in the JAAS client configuration file above. Here’s an example:
SolrJClient {
com.sun.security.auth.module.Krb5LoginModule required
useKeyTab=true
keyTab="/keytabs/foo.keytab"
storeKey=true
useTicketCache=true
debug=true
principal="foo@EXAMPLE.COM";
};
solr kerberos java_solr添加kerberos认证及授权相关推荐
- EMR集群安全认证和授权管理
简介:介绍EMR高安全集群如何使用Kerberos和Apache Ranger进行鉴权和访问授权管理 直达最佳实践:[EMR集群安全认证和授权管理] 最佳实践频道:[点击查看更多上云最佳实践] 这里有 ...
- solr添加kerberos认证及授权
solr添加kerberos认证及授权 @(OTHERS)[solr] 一.kerberos (一)添加用户 在kdc中添加solr用户: root@kdc:/# kadmin.local kadmi ...
- impala添加kerberos认证
impala添加kerberos认证 impala添加kerberos认证 背景 环境 配置 kerberos操作 集群配置 问题 impalad启动报错 catalog启动报错 注意 参考 impa ...
- Kafka 认证三:添加 Kerberos 认证详细流程
背景 上一章节介绍了 Kerberos 服务端和客户端的部署过程,本章节继续介绍 Kafka 添加 Kerberos 认证的部署流程,及 Java API 操作的注意事项. sasl.kerberos ...
- 信息系统安全实验(七):使用Kerberos实现网络身份认证
这是信息系统安全实验系列的第七篇~ 1. 背景知识 (1)概述 Kerberos又指麻省理工学院为这个协议开发的一套计算机网络安全系统.系统设计上采用客户端/服务器结构与DES加密技术,并且能够进行相 ...
- 为CDH 5.7集群添加Kerberos身份验证及Sentry权限控制
转载请注明出处:http://www.cnblogs.com/xiaodf/ 4. 为CDH 5集群添加Kerberos身份验证 4.1 安装sentry 1.点击"操作",&qu ...
- linux认证授权系统,linux系统用户认证与授权管理.pptx
Linux系统用户认证与授权管理;什么是用户认证/权限PAM认证机制Kerberos认证协议LDAP目录访问协议;出于系统安全考虑,Linux提供的安全机制主要有:身份标识与鉴别.文件访问控制.特权管 ...
- 在现网中使用AAA 认证、授权、计费的详细教程
文章目录 认证. 授权. 计费 前言 一.配置命令 1.启用 AAA 功能 2.指定一台或多台 AAA 服务器 3.使用 AAA 认证( authentication) 4.使用 AAA 授权( au ...
- 《Spring Boot 实战派》--10.集成安全框架,实现安全 认证和授权
第10章 集成安全框架,实现安全 认证和授权 本章首先介绍如何使用Spring Security创建独立验证的管理员权限系统.会员系统,讲解如 何进行分表.分权限' 分登录入口.分认证接口.多注册接口 ...
最新文章
- 关于python的一些好的书籍推荐-推荐几本关于的Python好书
- 【Android 安装包优化】Android 中使用 7zr 可执行程序 压缩文件
- java表单提交包含文件_如何同时提交表单中的文件和文本
- ios注销所有通知_您一直想了解的有关iOS中通知的所有信息
- scm中mysql作用_scm项目问题
- STM32硬件复位时间
- UE4 Pak 相关知识总结
- 开氏温度与摄氏度换算_温度是怎么来的,有没有物质没有温度?
- 让Vim打造成强大的IDE,附_vimrc的配置和使用
- [国家集训队2011]跳跳棋
- iOS 各种手势用法
- 2019计算机考研各科目时间安排,2019考研时间安排
- Cannot read property bindings of null 解决方法
- springdatajpa之初识hibernate(一)
- 人头识别与计数_基于人头检测的人数统计算法研究
- 通过CND方式引入elementui,vue,vuex,vue-router
- 如何给电脑安装Windows双系统
- 32.768kHz晶振
- GPU大百科全书 最终章:33毫秒的咏叹调
- 2021-12-20 WPF上位机 120-三菱PLC协议之读写方法流程解析
热门文章
- OSPF HELLO数据包
- android 虚拟机快捷键中英列表
- xmlHttpRequest避免缓存的办法
- BCH测试网上出现第一个UTXO证明
- 关于使用sudo命令后找不到JAVA_HOME的问题
- ACM ICPC 2011-2012 Northeastern European Regional Contest(NEERC)A ASCII Area
- 2021年SDN和NFV的支出将超1580亿美元!
- Amazon Aurora 升级, 兼容 PostgreSQL
- 实体框架高级应用之动态过滤 EntityFramework DynamicFilters
- iptables 定义规则