📄 rfc2829.txt
字号:
组织:中国互动出版网(http://www.china-pub.com/)
RFC文档中文翻译计划(http://www.china-pub.com/compters/emook/aboutemook.htm)
E-mail:ouyang@china-pub.com
译者:张海斌(netdebug internetdebug@elong.com )
译文发布时间:2001-12-14
版权:本中文翻译文档版权归中国互动出版网所有。可以用于非商业用途自由转载,但必须
保留本文档的翻译及版权信息。
Network Working Group M. Wahl
Request for Comments: 2829 Sun Microsystems, Inc.
Category: Standards Track H. Alvestrand
EDB Maxware
J. Hodges
Oblix, Inc.
R. Morgan
University of Washington
May 2000
针对LDAP的验证方法
(RFC2829——Authentication Methods for LDAP)
备忘录状况
这份文档为Internet社区指定为Internet标准(轨迹)协议,并且为进一步改进需要讨论
和建议。这份协议的标准化状态和状况请参阅"Internet官方协议标准(Internet Official Protocol
Standards )"(STD 1)的当前版。这份备忘录的分发不受限制。
版权声明
Copyright (C) The Internet Society (2000)。版权所有。
摘要
这篇文档针对在LDAP [1]实现工具(implementations)中被需求和推荐的安全机制
(security mechanisms)的特定结合。
目录
0.译者的话 2
1. 引论 3
2. 样例展开脚本(Example deployment scenarios) 4
3. 认证和授权:定义和概念 5
3.1. 存取控制策略Access Control Policy 5
3.2. 存取控制因素Access Control Factors 5
3.3. 认证(Authentication)、证明(Credentials)、身份标识(Identity) 5
3.4. 授权身份标识(Authorization Identity) 6
4. 必须的安全机制 6
5. 匿名认证 7
5.1. 匿名认证过程 8
5.2. 匿名认证和TLS 8
6. 基于口令的认证 8
6.1. 文摘认证 8
6.2. TLS加密下的简单认证选择("simple" authentication choice) 9
6.3. 随TLS的其它认证选择 9
7. 基于证书的认证(Certificate-based authentication) 10
7.1. 随TLS基于证书的认证 10
8. 其他机制 10
9. 授权标识 11
10. TLS 密码适配组 12
11. 对于LDAP的SASL服务名字 13
12. 安全考虑 13
13. 确认 13
14. 文献 13
15. 作者的地址 14
16.完整版权声明 15
确认 16
0.译者的话
译者在翻译这份文档的时候,采取直译的方式,尽量保证原文的原意。同时也尽量考虑
了中文的语义顺畅,便于中文读者阅读,译者在译文中加入了一些修饰语和译注,修饰语一
般在括号中写明,而译注均有“译者注”字样。由于译者翻译本篇文挡时间有限,译文中一
定会存在许多理解有误、用词不当之处,欢迎读者来信指正,共同学习。
1. 引论
LDAP版本3是针对目录(服务)功能强大的访问协议。
它提供了搜索(searching)、获取(fetching)和操作(manipulating)目录内容的方
法,以及丰富的安全函数集合的访问方法。
为了Internet 运转的更好,这些安全功能能够很好的交互是至关重要的(vital);因
此应该存在一个对所有需求LDAPv3 一致性的工具(LDAPv3)通用的最小安全功能子集。
对LDAP目录服务基本的威胁包括:
(1) 通过数据获取(data-fetching)操作非特许存取数据,
(2) 通过监听(monitoring)其他的访问(通道)非特许存取可再用的客户(身份)
证明信息,
(3) 通过监听其他的访问(通道)非特许存取数据,
(4) 未经授权的数据修改,
(5) 未经授权的配置修改,
(6) 未经授权的或者过分的资源使用(拒绝服务),以及
(7) 目录的电子欺骗:欺骗客户(client)相信信息来自目录(directory)而实际
上没有,或者在转接中修改数据或者错误指引客户的连接。
威胁(1), (4), (5)和(6)针对恶意的(hostile)客户(clients)。威胁(2), (3)和(7)
针对恶意的在客户端和服务端(传输)路径上的代理,或者冒充服务端。
LDAP协议组(protocol suite)能通过下面的安全机制得到保护:
(1) 客户(身份)证明利用SASL [2]机制设置,或者依靠(backed by)TLS证明扩
展机制,
(2) 客户授权利用依靠于请求者证明的身份(标识)存取控制,
(3) 数据完整性保护(Data integrity)利用TLS协议或者数据完整(data-integrity)
SASL机制,
(4) 避免窥探者(snooping)损害的保护利用TLS协议或者数据加密
(data-encrypting)SASL机制,
(5) 资源限制利用基于服务控制(service controls)的管理限制,以及
(6) 服务(身份)证明利用TLS协议或者SASL机制。
译者注:SASL:Simple Authentication and Security Layer
同时,存取控制的强制(执行)(imposition)利用LDAP协议范围以外的(机制)完成。
在本文中,术语"user"代表其是使用目录获取或者存储信息的LDAP客户的任何应用
(application)。
在本文中的关键字"MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT","SHOULD",
"SHOULD NOT", "RECOMMENDED", "MAY",和"OPTIONAL"在RFC 2119 [3]中的描述来作解释。
2. 样例展开脚本(Example deployment
scenarios)
下面的脚本是在Internet上针对LDAP目录服务的典型的有不同安全需求的样例。(在下
面的样例中,"sensitive"(敏感的)意味着数据如果暴露(revealed)将对拥有者带来真正
的损害;也有受保护的数据但不是敏感的)。这里不是为了列举广泛的综合的脚本为目的,其
他脚本是可能的,特别是在物理保护的网络上。
(1) 只读目录(服务),不包含敏感数据,对任何人("anyone")访问公开,并且
TCP连接拦截或者IP欺骗不是问题。这个目录不需要安全功能,除非管理服务
的限制。
(2) 只读目录(服务)不包含敏感数据;读访问基于身份(标识)授权。TCP连接
拦截在当前不是问题。这个脚本需要安全认证(authentication)功能。
(3) 只读目录(服务)不包含敏感数据;并且客户(程序)需要确保目录数据是经
过服务(程序)验证的和在从服务(程序)返回中没有修改。
(4) 读写目录(服务),不包含敏感数据;读访问对任何人("anyone")有效,更新
访问只针对适当授权的人。TCP连接拦截当前不是问题。这个脚本需要安全认
证功能。
(5) 目录包含敏感数据。这个脚本需要会话(session)秘密性保护和(AND)安全
认证。
3. 认证和授权:定义和概念
这部分定义基本的术语,概念,和认证(authentication)、授权(authorization)、证
明(credentials)及身份(标识)(identity)相关状态(interrelationships)。这些概念
被使用在描述客户(程序)认证和授权中利用的多少种不同的安全进路(approaches)。
3.1. 存取控制策略Access Control Policy
存取控制策略是定义资源的保护、个人或者其他实体(entities)存取这些资源能力的
术语通常规则。存取控制策略的公用表达式(common expression)是存取控制表(access
control list)。安全的对象和机制,就像这里描述的那些能够存取控制策略表达和实施
(enforcement)。 存取控制策略是在下文描述的存取控制属性术语的典型表示。
3.2. 存取控制因素Access Control Factors
一个请求,当被服务(程序)处理过的时候,可以和各种各样的安全相关
(security-related)因素关联(参见[1]中部分4.2)。服务(程序)使用这些因素决定是
否或者如何处理请求。这些被称作存取控制因素(ACFs)。他们将包括源IP地址、加密强度
(encryption strength)、被请求操作的类型、时间日期等等。一些因素可以针对请求自身
所有,其他可以是通过请求被传送的连接关联、另一些(例如,时间日期)可以是环境
("environmental")(相关的)。
存取控制策略是存取控制因素术语的表示。例如,请求有ACFs (存取控制因素)i,j,k
能够执行在资源Z 上的Y操作。这套术语其服务(程序)使这样的表达可用(available)
是工具相关的(implementation-specific)。
3.3. 认证(Authentication)、证明(Credentials)、身份
标识(Identity)
认证证明是通过一方提供给另一方的证据(evidence),断言提供者一方(例如,一用户)
的身份标识,其试图与另一方(典型为一服务器)建立关联。认证是产生(generating)、传
递(transmitting)和核实(verifying)这些证明的过程,这样(它们)断言了身份标识。
认证身份标识是存在于证明中的名字(name)。
存在许多认证证明的形式——使用的形式依赖于通过双方协商的特定认证机制。例如:
X.509证书、Kerberos tickets、简单身份标识和口令对(password pairs)。注意认证机制
可以强制随着它使用的认证身份标识的形式。
3.4. 授权身份标识(Authorization Identity)
授权身份标识是存取控制因素的一种。它是用户或者其他实体的名字(name),其请求操
作被执行。存取控制策略经常表达在授权身份标识术语中;例如,实体X能够在资源Z上执
行操作Y。
授权身份标识属于一协会(bound to an association),其经常与通过客户提出的认证
身份标识完全地相同,但是它可以是不同的。SASL允许客户具体指定在客户证明中区别于认
证身份标识的授权身份标识。这个许可主体(permits agents)正如使用它们自己的证明认
证的代理服务器(proxy servers),然而(要求)赋予它们的代理[2]请求身份标识的存取特
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -