2 ## schema file for OpenLDAP 2.0.x
3 ## Schema for storing Samba's smbpasswd file in LDAP
4 ## OIDs are owned by the Samba Team
6 ## Prerequisite schemas - uid (cosine.schema)
7 ## - displayName (inetorgperson.schema)
9 ## 1.3.6.1.4.1.7165.2.1.x - attributetypes
10 ## 1.3.6.1.4.1.7165.2.2.x - objectclasses
16 attributetype ( 1.3.6.1.4.1.7165.2.1.1 NAME 'lmPassword'
17 DESC 'LanManager Passwd'
18 EQUALITY caseIgnoreIA5Match
19 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{32} SINGLE-VALUE )
21 attributetype ( 1.3.6.1.4.1.7165.2.1.2 NAME 'ntPassword'
23 EQUALITY caseIgnoreIA5Match
24 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{32} SINGLE-VALUE )
27 ## Account flags in string format ([UWDX ])
29 attributetype ( 1.3.6.1.4.1.7165.2.1.4 NAME 'acctFlags'
31 EQUALITY caseIgnoreIA5Match
32 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{16} SINGLE-VALUE )
35 ## Password timestamps & policies
37 attributetype ( 1.3.6.1.4.1.7165.2.1.3 NAME 'pwdLastSet'
40 SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
42 attributetype ( 1.3.6.1.4.1.7165.2.1.5 NAME 'logonTime'
45 SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
47 attributetype ( 1.3.6.1.4.1.7165.2.1.6 NAME 'logoffTime'
50 SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
52 attributetype ( 1.3.6.1.4.1.7165.2.1.7 NAME 'kickoffTime'
55 SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
57 attributetype ( 1.3.6.1.4.1.7165.2.1.8 NAME 'pwdCanChange'
58 DESC 'NT pwdCanChange'
60 SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
62 attributetype ( 1.3.6.1.4.1.7165.2.1.9 NAME 'pwdMustChange'
63 DESC 'NT pwdMustChange'
65 SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
70 attributetype ( 1.3.6.1.4.1.7165.2.1.10 NAME 'homeDrive'
72 EQUALITY caseIgnoreIA5Match
73 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{4} SINGLE-VALUE )
75 attributetype ( 1.3.6.1.4.1.7165.2.1.11 NAME 'scriptPath'
77 EQUALITY caseIgnoreIA5Match
78 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{255} SINGLE-VALUE )
80 attributetype ( 1.3.6.1.4.1.7165.2.1.12 NAME 'profilePath'
82 EQUALITY caseIgnoreIA5Match
83 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{255} SINGLE-VALUE )
85 attributetype ( 1.3.6.1.4.1.7165.2.1.13 NAME 'userWorkstations'
86 DESC 'userWorkstations'
87 EQUALITY caseIgnoreIA5Match
88 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{255} SINGLE-VALUE )
90 attributetype ( 1.3.6.1.4.1.7165.2.1.17 NAME 'smbHome'
92 EQUALITY caseIgnoreIA5Match
93 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{128} )
95 attributetype ( 1.3.6.1.4.1.7165.2.1.18 NAME 'domain'
96 DESC 'Windows NT domain to which the user belongs'
97 EQUALITY caseIgnoreIA5Match
98 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{128} )
101 ## user and group RID
103 attributetype ( 1.3.6.1.4.1.7165.2.1.14 NAME 'rid'
105 EQUALITY integerMatch
106 SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
108 attributetype ( 1.3.6.1.4.1.7165.2.1.15 NAME 'primaryGroupID'
110 EQUALITY integerMatch
111 SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
117 attributetype ( 1.3.6.1.4.1.7165.2.1.20 NAME 'ntSid'
119 EQUALITY caseIgnoreIA5Match
120 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{64} SINGLE-VALUE )
123 ## group mapping attributes
125 attributetype ( 1.3.6.1.4.1.7165.2.1.19 NAME 'ntGroupType'
127 EQUALITY integerMatch
128 SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
131 ## Store info on the domain
134 attributetype ( 1.3.6.1.4.1.7165.2.1.21 NAME 'nextUserRid'
135 DESC 'Next NT rid to give our for users'
136 EQUALITY integerMatch
137 SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
139 attributetype ( 1.3.6.1.4.1.7165.2.1.22 NAME 'nextGroupRid'
140 DESC 'Next NT rid to give out for groups'
141 EQUALITY integerMatch
142 SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
145 ## The smbPasswordEntry objectclass has been depreciated in favor of the
146 ## sambaAccount objectclass
148 #objectclass ( 1.3.6.1.4.1.7165.2.2.1 NAME 'smbPasswordEntry' SUP top AUXILIARY
149 # DESC 'Samba smbpasswd entry'
150 # MUST ( uid $ uidNumber )
151 # MAY ( lmPassword $ ntPassword $ pwdLastSet $ acctFlags ))
153 #objectclass ( 1.3.6.1.4.1.7165.2.2.2 NAME 'sambaAccount' SUP top STRUCTURAL
154 # DESC 'Samba Account'
156 # MAY ( cn $ lmPassword $ ntPassword $ pwdLastSet $ logonTime $
157 # logoffTime $ kickoffTime $ pwdCanChange $ pwdMustChange $ acctFlags $
158 # displayName $ smbHome $ homeDrive $ scriptPath $ profilePath $
159 # description $ userWorkstations $ primaryGroupID $ domain ))
161 ## The X.500 data model (and therefore LDAPv3) says that each entry can
162 ## only have one structural objectclass. OpenLDAP 2.0 does not enforce
163 ## this currently but will in v2.1
165 objectclass ( 1.3.6.1.4.1.7165.2.2.3 NAME 'sambaAccount' SUP top AUXILIARY
166 DESC 'Samba Auxilary Account'
168 MAY ( cn $ lmPassword $ ntPassword $ pwdLastSet $ logonTime $
169 logoffTime $ kickoffTime $ pwdCanChange $ pwdMustChange $ acctFlags $
170 displayName $ smbHome $ homeDrive $ scriptPath $ profilePath $
171 description $ userWorkstations $ primaryGroupID $ domain ))
173 ############################################################################
175 ## Please note that this schema is really experimental and might
176 ## change before the 3.0 release.
178 ############################################################################
181 ## Whole-of-domain info
184 objectclass ( 1.3.6.1.4.1.7165.2.2.5 NAME 'sambaDomain' SUP top STRUCTURAL
185 DESC 'Samba Domain Information'
186 MUST ( domain $ nextGroupRid $ nextUserRid $ ntSid))
189 ## Group mapping info
191 objectclass ( 1.3.6.1.4.1.7165.2.2.4 NAME 'sambaGroupMapping' SUP top AUXILIARY
192 DESC 'Samba Group Mapping'
193 MUST ( gidNumber $ ntSid $ ntGroupType )
194 MAY ( displayName $ description ))
197 ## Used for Winbind experimentation
199 #objectclass ( 1.3.6.1.4.1.7165.1.2.2.3 NAME 'uidPool' SUP top AUXILIARY
200 # DESC 'Pool for allocating UNIX uids'
201 # MUST ( uidNumber ) )
203 #objectclass ( 1.3.6.1.4.1.7165.1.2.2.4 NAME 'gidPool' SUP top AUXILIARY
204 # DESC 'Pool for allocating UNIX gids'
205 # MUST ( gidNumber ) )