SSL & SASL between RabbitMQ and Keystone (by quqi99)

来源:互联网 发布:ios windows 编辑:程序博客网 时间:2024/04/29 07:35

作者:张华  发表于:2015-06-03
版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本版权声明

http://blog.csdn.net/quqi99 )

用户系统一般分为用户认证与授权两大问题。keystone用一个SQL backend用作认证,它不是一个好的认证系统。
一般用户的密码被存储成MD5存储在DB里,但用户仍然需要输入clear text password去keystone server认证,所以这中间需要配置SSL/TLS来保护密码。
但是这样有可能由一个恶意的keystone管理员修改keystone或者从内存中得到用户的clear text password。所以基于密码的认证系统一般会对密码的强度、修改周期等做一些强制规定,但keystone没有做这些事情。
Keystone + LDAP可以代替Keystone + SQL来解决这个问题。大多数user和group信息是存储在中心化的LDAP服务器里。但是问题依旧,现有的keystone LDAP backend仍然将明文密码发给LDAP端,然后LDAP将密码转成MD5值去比较。所以Keystone与LDAP之间也应该通过SASL加密密码传输。遗憾的是,目前rabbitmq或LDAP都支持SASL,但keystone本身是不支持SASL的。
Keystone也支持通过设置REMOTE_USER环境变量通过Apache HTTP走外部非密码的认证系统(基于token,用户不再发密码到keystone,而是直接先发加密后的密码到外部认证系统获得token),如Kerberso或者X.509客户端证书, 这样密码不需要存储到keystone及LDAP里了,这时候Keystone仅仅用于授权。这样实现了认证提供者(Kernerso)服务提供者的解偶(Keystone),它们两者之间的SSO通信通过基于XML的SAML(安全断言标记语言,Security Assertion Markup Language)标准在不同的安全域之间交换认证和授权数据。这也适合用于Keystone Federation。
Apache HTTPD模块会通过mod_lookup_identity去调用Linux操作系统的SSSD deamon(一个认证的插件系统,它再和各种身份认证服务器打交道,如FreeIPA, Active Directory, LDAP),SSSD的引入大大减轻了keystone实现的复杂性。同理,使用mod_ssl代替mod_auth_kerb就可以改由支持X.509客户证书认证。使用mod_shib或者mod_mellon就可以改由支持SAML。
SSL/TLS是一种通信协议(一般用公钥加密私钥解密,用私钥加密公钥解密叫数字签名,那么采用非对称加密算法来加密对称加密算法的秘钥的叫SSL,见:http://blog.csdn.net/quqi99/article/details/24031201),而SASL是一个框架,集成了其他协议。他们都提供身份验证,数据签名和加密。SASL(Simple Authentication and Security Layer)的本质是一个插件系统在客户端和服务器标准化认证规范(它支持有:plain, 一次一密的otp, digest-md5客户端不在网上传密码只对服务器发过的密码的MD5作一个响应是否正确, 密码可以不用在网络上传输, 也就不用怕密码被窃听,kerberos),而SSL绑定是基于证书做认证. SASL中,您可以选择使用GSSAPI,则Kerberos,NTLM等。所以上面的情况需要在keystone与rabbitmq之间采用SASL以支持加密的密码方式传输(当时设置SSL可以做同样的事情,见:http://lingxiankong.github.io/blog/2014/02/06/openstack-ssl/),但遗憾的是,尽量rabbitmq支持SASL,但keystone不支持。

0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 qq聊天图标粉色钥匙怎么办 和舍友相处不来怎么办 被舍友偷了东西怎么办 体育生没过线怎么办 户主去世房产不能过户怎么办 苍蝇飞到嘴唇上怎么办 苍蝇不小心碰到嘴唇了怎么办 苍蝇老往身上飞怎么办 单位乒乓球比赛有领导参加怎么办 意外看到别人打野战怎么办 骨盆低想顺产要怎么办 右胯比左胯突出怎么办 一岁宝宝骨盆不对称怎么办 入盆了又出来了怎么办 大腿前突小腿后怎么办 英语不好高二了怎么办 断奶后又复吸怎么办 招联金融综合评定不足怎么办 git本地分支比远程高怎么办 娃儿上嘴唇里面破了怎么办 错过了各大招聘怎么办 优秀团员申请表没有获奖情况怎么办 大学生毕业学生登记表涂改了怎么办 c语言挂科了怎么办 吸入腐蚀性气体鼻子流血了怎么办 腰劳损痛的厉害怎么办 两个宝宝斜颈左边力量差怎么办 姿势不正确引起的习惯性斜颈怎么办 一岁宝宝有点斜颈怎么办 六个月宝宝有点斜颈怎么办 5月宝宝有点斜颈怎么办 半岁宝宝头偏怎么办 肌性斜颈成年后怎么办 5个月孩子脖子歪怎么办 宝宝一岁多头歪怎么办 四个月宝宝歪脖子怎么办 1岁宝宝脖子歪怎么办 宝宝脖子是歪的怎么办 小孩脖子睡歪了怎么办 脸部三角区肿了怎么办 面部三角区挤了怎么办