Help us understand the problem. What is going on with this article?

LDAP schemaファイルの見方(attribute)

More than 3 years have passed since last update.

/etc/openldap/schemaのcore.schmaを開いたら、暗号すぎてわけがわからなかったので調査

LDAP attribute構成要素は、
attributeのOID(ObjectID),
Description,
attributeを検索する際の照合規則
attributeのデータ型(OIDで指定。StringとかIntegerとか)
から成る。

attributetype 
( 1.1.2.1.1 Name 'myName'
   DESC 'unique name with my company'
   EQUALITY caseIgnoreMatch
   SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)

例えば上の例だと、『OID 1.1.2.1.1、myNameっていう名前の、自社固有のAttributeをString型で定義する。照合条件は大文字小文字を無視。』という意味。

Attributeの構成要素

Type Meaning
OID attributeのObjectID
NAME attributeの名前
DESC DESCription 詳細。
照合規則 EQUALITY(完全一致照合)
ORDERING(順序性照合規則)
SUBSTR(部分一致照合)
のいずれか、あるいは複数を規定する
SYNTAX attributeのデータ型をOIDで指定する。
例えば文字列型なら、1.3.6.1.4.1.1466.115.121.1.12

照合規則

EQUALITY(どういった条件で一致とみなすか)
ORDERING(大小検索照合)
SUBSTR(文字列部分一致の照合)
の3つがある。規則によって適用できるattributeは異なる。
当たり前だけど、integerMatchとかなら、INTEGER型のattributeに設定しないと無意味。

EQUALITY(同値性)

どんな場合に一致しているとみなすか

EQUALITY Meaning attribute
Syntax
booleanMatch True/Falseで一致 Boolean
caseIgnoreMatch 大文字小文字を区別しない、スペース無視 Directory
String
caseExactMatch 大文字小文字区別、スペース無視 Directory
String
distinguished
NameMatch
識別名一致 Distinguished Name syntax
integerMatch 整数一致 Integer
octetStringMatch オクテット文字列一致 OctetString

ORDERING

大小関係や辞書順で照合する際に適用される

ORDERING Meaning attribute
Syntax
caseIgnore
OrderingMatch
大文字小文字区別なし。スペース無視。辞書順で大小比較 Directory
String
caseExact
OrderingMatch
大文字小文字区別有。スペース無視。辞書順で大小比較 Directory
String
integer
OrderingMatch
整数で比較 Integer
numericString
OrderingMatch
数値で比較 Numeric
String

SUBSTR

部分一致照合

SUBSTR Meaning attribute
Syntax
caseIgnore
SubstringsMatch
大文字小文字区別なし。スペース無視 Directory
String
caseExact
SubStringMatch
大文字小文字区別有。スペース無視 Directory
String

SYNTAXの種類

ここはITUとかに規定されているので、全世界共通。最悪1.3.6.1.4.1.1466.115.121.1.5とかで丸ごとググれば、何の型だか分かる。

SYNTAX OID 属性 説明
1.3.6.1.4.1.1466.115.121.1.5 Binary
1.3.6.1.4.1.1466.115.121.1.8 Certificate
1.3.6.1.4.1.1466.115.121.1.9 Certificate List
1.3.6.1.4.1.1466.115.121.1.10 Certificate Pair
1.3.6.1.4.1.1466.115.121.1.11 Country String
1.3.6.1.4.1.1466.115.121.1.12 Distinguished Name(DN) dnを入れられる。
EX:cn=UserA,o=ABC_Corp,dc=com
1.3.6.1.4.1.1466.115.121.1.15 Directory String
1.3.6.1.4.1.1466.115.121.1.20 Enhanced Guide
1.3.6.1.4.1.1466.115.121.1.21 Fax Tel No
1.3.6.1.4.1.1466.115.121.1.22 Fax
1.3.6.1.4.1.1466.115.121.1.23 Generalized Time
1.3.6.1.4.1.1466.115.121.1.24 Guide
1.3.6.1.4.1.1466.115.121.1.25 IA5 String
1.3.6.1.4.1.1466.115.121.1.26 Integer
1.3.6.1.4.1.1466.115.121.1.27 JPEG
1.3.6.1.4.1.1466.115.121.1.28 LDAP Syntax Description
okiami123
日々困ったことを綴ります 自分で忘れないために
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした