kerberos关键知识点

本文深入探讨了Kerberos认证机制,包括其在网络通信身份认证中的作用,principal的类型及其构成,以及如何通过编辑acl文件来设置权限。此外,还讨论了Kerberos与LDAP的集成,以及在大数据安全中的应用。

参考以下资料,及《OReilly.Architecting.Modern.Data.Platforms》

https://www.cnblogs.com/wn1m/p/10700466.html

https://www.jianshu.com/p/fc2d2dbd510b

https://help.aliyun.com/document_detail/89886.html?spm=a2c4g.11186623.4.1.37a6b019HkcGLQ

 

kerberos是一个网络通信身份认证,包含user和service的认证。

 

principal分为两种类型:user、service

对于user,一般有三部分组成,例如zhangsan/admin@alibaba.com  名称/角色@域名,可以不要角色直接是zhangsan@alibaba.com

service,如yarn/master2.didot.com@sabon.com

(从上面这个图来看acl定义的范围不限于一个服务,比如将yarn拆成了两个权限控制,所以不能说简单说kerberos就是只能控制到service这一层,而service内部还可继续拆分更细的service。)

 

在KDC上我们需要编辑acl(Access Control List)文件来设置权限,该acl文件的默认路径是 /var/kerberos/krb5kdc/kadm5.acl(也可以在文件kdc.conf中修改)。Kerberos的kadmind daemon会使用该文件来管理对Kerberos database的访问权限。对于那些可能会对pincipal产生影响的操作,acl文件也能控制哪些principal能操作哪些其他pricipals。

https://web.mit.edu/kerberos/krb5-latest/doc/admin/conf_files/kadm5_acl.html?highlight=acl

EXAMPLE

Here is an example of a kadm5.acl file:

*/admin@ATHENA.MIT.EDU    *                               # line 1

joeadmin@ATHENA.MIT.EDU   ADMCIL                          # line 2

joeadmin/*@ATHENA.MIT.EDU i   */root@ATHENA.MIT.EDU       # line 3

*/root@ATHENA.MIT.EDU     ci  *1@ATHENA.MIT.EDU           # line 4

*/root@ATHENA.MIT.EDU     l   *                           # line 5

sms@ATHENA.MIT.EDU        x   * -maxlife 9h -postdateable # line 6

 

    目前来看kerberos是用来做user和service或者service和service之间权限认证的,就是说 A用户是否有权限访问某个服务,或者服务A是否有权限访问服务B,同时这个权限用ticket表示,这个ticket有时间限制。而这个用户在kerberos中用principal表示,有自己个格式要求,如上文所示。我们对于这个用户的创建管理可以用LDAP来实现,所以经常看到的是kerberos+LDAP实现鉴权服务。

    我们对大数据的安全需求似乎更应该叫多租户需求,因为我的需求更像是哪些人具有使用什么服务的权限。

    kerberos+LDAP的网络认证服务应用访问广泛,不仅仅在大数据中,是一种粗粒度、应用范围广的网络用户、服务鉴权协议。

而ranger和sentry是大数据中一个权限组件,是细粒度的权限服务,他们也可以和kerberos集成。

 

 

 

 

 

 

 

 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值