问题描述
LDAP模型通常具有这种格式(此处是属性的定义):
olcAttributeTypes: ( 1.3.6.1.4.1.40805.2.1.3 NAME 'authzAccesstokenEncoding'
DESC 'OAuth 2.0 access token encoding'
EQUALITY caseExactMatch
ORDERING caseExactOrderingMatch
SUBSTR caseExactSubstringsMatch
Syntax 1.3.6.1.4.1.1466.115.121.1.15
SINGLE-VALUE
USAGE userApplications
X-ORIGIN 'OAuth 2.0' )
我对对象OID感兴趣:在这里,属性名称具有OID 1.3.6.1.4.1.40805.2.1.3
,并且引用了带有OID 1.3.6.1.4.1.1466.115.121.1.15
的语法对象,该对象引用了一个字符串。
Wikipedia指出:
树中的每个节点都由分配机构控制,该机构可以在该节点下定义子节点,并为子节点委托分配机构。
在Private Enterprise Number上注册IANA website似乎也很容易。
但是,所有这些对我来说似乎有点过大。
- 仅选择随机OID并使用它们会有什么风险?
- 如果发生OID冲突,会有什么风险?
- LDAP客户端或服务器是否检查了那些OID?
解决方法
是的,服务器和LDAP客户端库使用这些OID来确保架构元素的唯一性,尤其是在架构不断发展的情况下。 因此,不应与OID发生冲突,否则服务器将无法启动。 只要您在私有范围内工作,就可以随意在自己的树下使用随机OID。但是,由于OID是由LDAP以外的许多其他IETF协议构造和使用的,因此您绝不能创建随机的OID树,也不得使用由其他公司注册的OID。