首页 > 其他分享 >kerberos认证(面试)

kerberos认证(面试)

时间:2024-10-30 17:09:39浏览次数:5  
标签:Kerberos 配置文件 kerberos kafka 面试 认证 客户端

kerberos认证主要用来解决身份认证的问题,避免非法用户去操作我们kafka里面的数据。
kerberos它是一个服务,是需要我们搭建的。

image

AD:主要用来存储用户名和密码、秘钥、包括用户所有的一些权限。

KDC里面包含两个角色。

用户鉴权流程:

首先客户端通过用户名、密码或者是keytab(秘钥)来访问KDC(秘钥分发中心)里面的鉴权服务申请鉴权。

鉴权服务验证客户端的身份没有问题之后,会发放TGT票据。

然后客户端拿上TGT票据向票据验证服务申请验证TGT。如果验证没有问题,这个时候会发放访问对应服务的票据ST。

最后客户端拿上对应的票据ST就可以访问对应的服务了。

我们**平台作为客户端(也就是消费端),主要修改了kafka集群的IP地址,zookeeper集群的IP地址。krb认证中心的IP地址。

主要涉及以下这么三个文件:

deploy kerberos.txt(这个没啥用,主要是用来部署的)

cdprealtime.keytab

krb5.conf

其中

krb5.conf是Kerberos认证环境下的配置文件。定义了Kerberos集群和连接配置,配置项的说明请参见Kerberos文档

KDC服务器:KDC服务器域名和IP地址定义在krb5.conf配置文件中。

keytab文件包含用户的身份验证凭据,用于向Kerberos服务器认证身份。(说白了里面放的一个秘钥)。

如果想要在java客户端进行kerberos认证一定要需要有一个与之匹配的kerberos服务端的访问程序文件:kafka_client_jaas.conf.

image

如果想要在java程序里面配置kerberos的认证处理操作则需要将以上配置文件的路径引入到项目之中:

​ 。要求在系统属性之中增加配置。

image

服务端的配置

kafka正是因为推出了kerberos认证,才表示kafka真正由实验阶段变成了实际的生产环境。虽然kafka可以使用SSL认证(速度很慢),但是对于SSL的认证处理是非常复杂的。所以在实际的开发过程中,更多的开发者会选择利用kerberos这种认证机制同时结合jaas的配置文件进行更加有效的安全认证处理。

Kerberos这一名词来源于希腊神话"个头的狗---地狱之门守护者”。

系统设计上采用客户端/服务器结构与DES加密技术,并且能够进行相互认证即客户端和服务器端均可对对方进行身份认证。

可以用于防止窃听、防止replay攻击、保护数据完整性等场合是一种应用对称密钥体制进行密钥管理的系统。

同时也支持单点登录。

怎样给面试官讲:

先介绍一下kerberos是干啥的,然后介绍一下kerberos涉及到的组件。再介绍一下kerberos的工作流程。最后再简单描述一下自己项目中是怎样配置kerberos的。

标签:Kerberos,配置文件,kerberos,kafka,面试,认证,客户端
From: https://www.cnblogs.com/dongyaotou/p/18516197

相关文章

  • 【GiraKoo】面试者如何忽悠一个不懂技术的面试官
    萌新面试者如何忽悠一个不懂技术的面试官由于公司业务需要,做了几天Android的面试官。作为一个完全没有做过Android项目的开发者,我无法问出具体的框架,技术细节。对于萌新,新公司,新业务往往公司无法派出一个技术大牛来面试一个萌新。很多情况下,是其他搞技术的人,或者项目经理直接......
  • 后台管理系统的通用权限解决方案(八)认证机制介绍、JWT介绍与jjwt框架的使用
    文章目录1认证机制介绍1.1HTTPBasicAuth1.2Cookie-SessionAuth1.3OAuth1.4TokenAuth2JWT2.1JWT介绍2.2JWT的数据结构2.2.1JWT头2.2.2JWT有效载荷2.2.3JWT签名3jjwt3.1jjwt介绍3.2jjwt案例1认证机制介绍1.1HTTPBasicAuthHTTPBasicAuth......
  • C++接口集成、身份实名认证-游戏防沉迷,保障未成年人健康
    随着互联网的快速发展,网络游戏在年轻人中越来越受欢迎。然而,未成年玩家长时间沉迷游戏的问题却引发了社会的广泛关注。为了应对这一现象,各大网络游戏平台纷纷引入翔云身份证实名认证接口,以有效辨别用户身份,建立完善的防沉迷系统,从而更好地保护未成年玩家的身心健康。......
  • 面试总结-技术罗列
    1、JVM原理及优化:JVM调优:https://www.cnblogs.com/stubborn-dude/p/15522475.html【GC收集器】和【内存分配与回收的策略】:https://www.cnblogs.com/stubborn-dude/p/14889157.htmljvm总结:https://www.cnblogs.com/stubborn-dude/p/14707682.html2、分布式事务:https://zhuan......
  • 面试官:Spring Boot 控制层中,@Service 可以完全替代 @Controller 吗?90% 都会答错!
    作者:毅航来源:juejin.cn/post/7393533304505204787在SpringBoot开发中,@Controller和@Service基本上是日常开发中使用的最频繁的两个注解。但你有没考虑过@Service代替@Controller注解来标注到控制层的场景?换言之,经过@Service标注的控制层能否实现将用户请求分发到服务层的功能?......
  • 面试题-单词分割及排序
    题目SortalistofwordsbasedonnumberofcharactersandignoretheasteriskseparatorbetweenthemExampleInput:This*is*a***Hello**World***example**to*demo*your****coding*ability“ExampleOutput:aistoThisdemoyourHelloWorldcodingabilityexamp......
  • 2025秋招LLM大模型多模态面试题(十三)- rag(检索增强生成)技术
    1.基本概念检索增强LLM(RetrievalAugmentedLLM),简单来说,就是给LLM提供外部数据库,对于用户问题(Query),通过一些信息检索(InformationRetrieval,IR)的技术,先从外部数据库中检索出和用户问题相关的信息,然后让LLM结合这些相关信息来生成结果。下图是一个检......
  • 《Java 大厂面试基础真题及解析 —— 来自一位程序员的心得分享》
    作为一名Java程序员,在经历了众多面试后,深知Java基础在大厂面试中的重要性。以下是我总结的一些常被问到的Java基础面试题及解析,希望对大家有所帮助。2024Javaoffer收割指南分享一、面向对象的三大特性(一)封装概念封装是将数据和操作数据的方法绑定在一起,形成一个......
  • Java面试题之HashMap
    前言本来想着给自己放松一下,刷刷博客,突然被几道面试题难倒!说说Hashtable与HashMap的区别?HashMap中的key我们可以使用任何类作为key吗?HashMap的长度为什么是2的N次方呢?HashMap与ConcurrentHashMap的异同?红黑树有哪几个特征?似乎有点模糊了,那就大概看一下面试......
  • Java常见面试真题之中级进阶(HashMap篇)
    前言本来想着给自己放松一下,刷刷博客,突然被几道面试题难倒!说说Hashtable与HashMap的区别?HashMap中的key我们可以使用任何类作为key吗?HashMap的长度为什么是2的N次方呢?HashMap与ConcurrentHashMap的异同?红黑树有哪几个特征?似乎有点模糊了,那就大概看一下面试题吧。......