PageRenderTime 53ms CodeModel.GetById 24ms RepoModel.GetById 0ms app.codeStats 0ms

/iRedMail/samples/iredmail.schema

https://bitbucket.org/dineshkummarc/iredmail
Unknown | 375 lines | 370 code | 5 blank | 0 comment | 0 complexity | 774378b2514e17c5b8bb93ecefe1c082 MD5 | raw file
  1. #---------------------------------------------------------------------
  2. # This file is part of iRedMail, which is an open source mail server
  3. # solution for Red Hat(R) Enterprise Linux, CentOS, Debian and Ubuntu.
  4. #
  5. # iRedMail is free software: you can redistribute it and/or modify
  6. # it under the terms of the GNU General Public License as published by
  7. # the Free Software Foundation, either version 3 of the License, or
  8. # (at your option) any later version.
  9. #
  10. # iRedMail is distributed in the hope that it will be useful,
  11. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  12. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  13. # GNU General Public License for more details.
  14. #
  15. # You should have received a copy of the GNU General Public License
  16. # along with iRedMail. If not, see <http://www.gnu.org/licenses/>.
  17. #---------------------------------------------------------------------
  18. #
  19. # This schema is shipped within iRedMail project:
  20. # http://www.iredmail.org/
  21. #
  22. # It should be localed at:
  23. # - RHEL/CentOS/OpenSuSE: /etc/openldap/schema/iredmail.schema
  24. # - Debian: /etc/ldap/schema/iredmail.schema
  25. # - FreeBSD: /usr/local/etc/openldap/schema/
  26. #
  27. #--------------------------------------------------------------------
  28. # The offical iredmail OID assigned by IANA is 32349, you can find it in url:
  29. # http://www.iana.org/assignments/enterprise-numbers
  30. #
  31. # 1.3.6.1.4.1.32349 OID of iRedMail.org
  32. # 1.3.6.1.4.1.32349.1 iRedMail
  33. # 1.3.6.1.4.1.32349.1.2 iRedMail LDAP Elements
  34. # 1.3.6.1.4.1.32349.1.2.1 AttributeTypes
  35. # 1.3.6.1.4.1.32349.1.2.2 ObjectClasses
  36. #--------------------------------------------------------------------
  37. #
  38. # This schema depends on:
  39. # - core.schema
  40. # - cosine.schema
  41. #
  42. #
  43. # Mail Service: Domain related attributes.
  44. #
  45. attributetype ( 1.3.6.1.4.1.32349.1.2.1.1 NAME 'domainName'
  46. DESC 'Virtual Domain Name'
  47. EQUALITY caseIgnoreIA5Match
  48. SUBSTR caseIgnoreSubstringsMatch
  49. SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{255}
  50. SINGLE-VALUE )
  51. attributetype ( 1.3.6.1.4.1.32349.1.2.1.2 NAME 'mtaTransport'
  52. DESC 'Transport program for Postfix'
  53. EQUALITY caseIgnoreIA5Match
  54. SUBSTR caseIgnoreSubstringsMatch
  55. SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
  56. SINGLE-VALUE )
  57. attributetype ( 1.3.6.1.4.1.32349.1.2.1.3 NAME 'domainStatus'
  58. DESC 'Deprecated since iRedMail-0.4.1, use accountStatus instead'
  59. EQUALITY caseIgnoreIA5Match
  60. SUBSTR caseIgnoreSubstringsMatch
  61. SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
  62. SINGLE-VALUE )
  63. attributetype ( 1.3.6.1.4.1.32349.1.2.1.4 NAME 'domainAdmin'
  64. DESC 'Domain admin'
  65. EQUALITY caseIgnoreIA5Match
  66. SUBSTR caseIgnoreSubstringsMatch
  67. SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{320} )
  68. attributetype ( 1.3.6.1.4.1.32349.1.2.1.5 NAME 'domainGlobalAdmin'
  69. DESC 'Site wide domin admin: yes'
  70. EQUALITY caseIgnoreIA5Match
  71. SUBSTR caseIgnoreSubstringsMatch
  72. SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
  73. SINGLE-VALUE )
  74. attributetype ( 1.3.6.1.4.1.32349.1.2.1.6 NAME 'domainBackupMX'
  75. DESC 'Backup MX: yes, no'
  76. EQUALITY caseIgnoreIA5Match
  77. SUBSTR caseIgnoreSubstringsMatch
  78. SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
  79. SINGLE-VALUE )
  80. attributetype ( 1.3.6.1.4.1.32349.1.2.1.7 NAME 'domainSenderBccAddress'
  81. DESC 'Sender BCC address for whole domain'
  82. EQUALITY caseIgnoreIA5Match
  83. SUBSTR caseIgnoreSubstringsMatch
  84. SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{320}
  85. SINGLE-VALUE )
  86. attributetype ( 1.3.6.1.4.1.32349.1.2.1.8 NAME 'domainRecipientBccAddress'
  87. DESC 'Recipient BCC address for whole domain'
  88. EQUALITY caseIgnoreIA5Match
  89. SUBSTR caseIgnoreSubstringsMatch
  90. SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{320}
  91. SINGLE-VALUE )
  92. attributetype ( 1.3.6.1.4.1.32349.1.2.1.9 NAME 'domainMaxQuotaSize'
  93. DESC 'Obsoleted. Max quota size limit for single domain'
  94. EQUALITY integerMatch
  95. SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
  96. SINGLE-VALUE )
  97. attributetype ( 1.3.6.1.4.1.32349.1.2.1.10 NAME 'domainCurrentQuotaSize'
  98. DESC 'Current quota size limit for single domain'
  99. EQUALITY caseIgnoreIA5Match
  100. SUBSTR caseIgnoreSubstringsMatch
  101. SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
  102. SINGLE-VALUE )
  103. attributetype ( 1.3.6.1.4.1.32349.1.2.1.11 NAME 'domainMaxUserNumber'
  104. DESC 'Obsoleted. Max user number limit for single domain'
  105. EQUALITY integerMatch
  106. SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
  107. SINGLE-VALUE )
  108. attributetype ( 1.3.6.1.4.1.32349.1.2.1.12 NAME 'domainCurrentUserNumber'
  109. DESC 'Current user number limit for single domain'
  110. EQUALITY integerMatch
  111. SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
  112. SINGLE-VALUE )
  113. attributetype ( 1.3.6.1.4.1.32349.1.2.1.13 NAME 'domainMaxAliasNumber'
  114. DESC 'Obsoleted. Max alias number limit for single domain'
  115. EQUALITY integerMatch
  116. SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
  117. SINGLE-VALUE )
  118. attributetype ( 1.3.6.1.4.1.32349.1.2.1.14 NAME 'domainCurrentAliasNumber'
  119. DESC 'Current alias number limit for single domain'
  120. EQUALITY integerMatch
  121. SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
  122. SINGLE-VALUE )
  123. attributetype ( 1.3.6.1.4.1.32349.1.2.1.15 NAME 'domainMaxListNumber'
  124. DESC 'Obsoleted. Max mail list number limit for single domain'
  125. EQUALITY integerMatch
  126. SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
  127. SINGLE-VALUE )
  128. attributetype ( 1.3.6.1.4.1.32349.1.2.1.16 NAME 'domainCurrentListNumber'
  129. DESC 'Current mail list number limit for single domain'
  130. EQUALITY integerMatch
  131. SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
  132. SINGLE-VALUE )
  133. attributetype ( 1.3.6.1.4.1.32349.1.2.1.17 NAME 'disclaimer'
  134. DESC 'Disclaimer text'
  135. EQUALITY caseIgnoreMatch
  136. SUBSTR caseIgnoreSubstringsMatch
  137. SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
  138. SINGLE-VALUE )
  139. attributetype ( 1.3.6.1.4.1.32349.1.2.1.18 NAME 'domainDefaultUserQuota'
  140. DESC 'Default quota for new user'
  141. EQUALITY integerMatch
  142. SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
  143. SINGLE-VALUE )
  144. attributetype ( 1.3.6.1.4.1.32349.1.2.1.19 NAME 'domainAliasName'
  145. DESC 'Domain Alias Name'
  146. EQUALITY caseIgnoreIA5Match
  147. SUBSTR caseIgnoreSubstringsMatch
  148. SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{255} )
  149. attributetype ( 1.3.6.1.4.1.32349.1.2.1.20 NAME 'domainWhitelistIP'
  150. DESC 'Whitelist IP address'
  151. EQUALITY caseIgnoreIA5Match
  152. SUBSTR caseIgnoreSubstringsMatch
  153. SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
  154. attributetype ( 1.3.6.1.4.1.32349.1.2.1.21 NAME 'domainWhitelistSender'
  155. DESC 'Whitelist sender address'
  156. EQUALITY caseIgnoreIA5Match
  157. SUBSTR caseIgnoreSubstringsMatch
  158. SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
  159. attributetype ( 1.3.6.1.4.1.32349.1.2.1.22 NAME 'domainBlacklistIP'
  160. DESC 'Whitelist IP address'
  161. EQUALITY caseIgnoreIA5Match
  162. SUBSTR caseIgnoreSubstringsMatch
  163. SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
  164. attributetype ( 1.3.6.1.4.1.32349.1.2.1.23 NAME 'domainBlacklistSender'
  165. DESC 'Whitelist sender address'
  166. EQUALITY caseIgnoreIA5Match
  167. SUBSTR caseIgnoreSubstringsMatch
  168. SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
  169. #
  170. # Mail Service: User related attributes.
  171. #
  172. attributetype ( 1.3.6.1.4.1.32349.1.2.2.1 NAME 'mailUID'
  173. DESC 'UID of the user on the mailsystem'
  174. EQUALITY integerMatch
  175. SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
  176. SINGLE-VALUE )
  177. attributetype ( 1.3.6.1.4.1.32349.1.2.2.2 NAME 'mailGID'
  178. DESC 'GID of the user on the mailsystem'
  179. EQUALITY integerMatch
  180. SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
  181. SINGLE-VALUE )
  182. attributetype ( 1.3.6.1.4.1.32349.1.2.2.3 NAME 'storageBaseDirectory'
  183. DESC 'Path to mail storage base directory'
  184. EQUALITY caseExactIA5Match
  185. SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
  186. SINGLE-VALUE )
  187. attributetype ( 1.3.6.1.4.1.32349.1.2.2.4 NAME 'mailMessageStore'
  188. DESC 'Path to the maildir/mbox on the mail system'
  189. EQUALITY caseExactIA5Match
  190. SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
  191. SINGLE-VALUE )
  192. attributetype ( 1.3.6.1.4.1.32349.1.2.2.5 NAME 'mailQuota'
  193. DESC 'The amount of space the user can use until all further messages get bounced'
  194. EQUALITY integerMatch
  195. SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
  196. SINGLE-VALUE )
  197. attributetype ( 1.3.6.1.4.1.32349.1.2.2.6 NAME 'mailQuotaMessageLimit'
  198. DESC 'Quota limit in number of messages, 0 means unlimited'
  199. EQUALITY integerMatch
  200. SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
  201. SINGLE-VALUE )
  202. attributetype ( 1.3.6.1.4.1.32349.1.2.2.7 NAME 'mailHost'
  203. DESC 'On which mail server the messagestore of this user is located'
  204. EQUALITY caseIgnoreIA5Match
  205. SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
  206. SINGLE-VALUE )
  207. attributetype ( 1.3.6.1.4.1.32349.1.2.2.8 NAME 'mailForwardingAddress'
  208. DESC 'Address(es) to forward all incoming messages to.'
  209. EQUALITY caseIgnoreIA5Match
  210. SUBSTR caseIgnoreIA5SubstringsMatch
  211. SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{320} )
  212. attributetype ( 1.3.6.1.4.1.32349.1.2.2.9 NAME 'accountStatus'
  213. DESC 'The status of a user account: active, disabled'
  214. EQUALITY caseIgnoreIA5Match
  215. SUBSTR caseIgnoreSubstringsMatch
  216. SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
  217. SINGLE-VALUE )
  218. attributetype ( 1.3.6.1.4.1.32349.1.2.2.10 NAME 'userRecipientBccAddress'
  219. DESC 'Recipient BCC address for single user: must be a valid email address'
  220. EQUALITY caseIgnoreIA5Match
  221. SUBSTR caseIgnoreSubstringsMatch
  222. SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{320}
  223. SINGLE-VALUE )
  224. attributetype ( 1.3.6.1.4.1.32349.1.2.2.11 NAME 'userSenderBccAddress'
  225. DESC 'Sender BCC address for single user: must be a valid email address'
  226. EQUALITY caseIgnoreIA5Match
  227. SUBSTR caseIgnoreSubstringsMatch
  228. SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{320}
  229. SINGLE-VALUE )
  230. attributetype ( 1.3.6.1.4.1.32349.1.2.2.12 NAME 'backupMailAddress'
  231. DESC 'Backup mail address, used to reset password or whatever'
  232. EQUALITY caseIgnoreIA5Match
  233. SUBSTR caseIgnoreSubstringsMatch
  234. SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{320}
  235. SINGLE-VALUE )
  236. attributetype ( 1.3.6.1.4.1.32349.1.2.2.13 NAME 'enabledService'
  237. DESC 'Enabled service: mail, smtp, imap, pop3, deliver, forward, senderbcc, recipientbcc, displayedInGlobalAddressBook'
  238. EQUALITY caseIgnoreIA5Match
  239. SUBSTR caseIgnoreSubstringsMatch
  240. SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
  241. attributetype ( 1.3.6.1.4.1.32349.1.2.2.14 NAME 'memberOfGroup'
  242. DESC 'Group/List name which user belong to, MUST be a valid email address'
  243. EQUALITY caseIgnoreIA5Match
  244. SUBSTR caseIgnoreSubstringsMatch
  245. SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{320} )
  246. attributetype ( 1.3.6.1.4.1.32349.1.2.2.15 NAME 'lastLoginDate'
  247. DESC 'Last login date.'
  248. EQUALITY generalizedTimeMatch
  249. SUBSTR caseIgnoreSubstringsMatch
  250. SYNTAX 1.3.6.1.4.1.1466.115.121.1.24
  251. SINGLE-VALUE )
  252. attributetype ( 1.3.6.1.4.1.32349.1.2.2.16 NAME 'lastLoginIP'
  253. DESC 'Last login ip address.'
  254. EQUALITY caseIgnoreIA5Match
  255. SUBSTR caseIgnoreSubstringsMatch
  256. SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
  257. SINGLE-VALUE )
  258. attributetype ( 1.3.6.1.4.1.32349.1.2.2.17 NAME 'lastLoginProtocol'
  259. DESC 'Mail protocol used in last login: pop3, imap'
  260. EQUALITY caseIgnoreIA5Match
  261. SUBSTR caseIgnoreSubstringsMatch
  262. SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
  263. SINGLE-VALUE )
  264. attributetype ( 1.3.6.1.4.1.32349.1.2.2.18 NAME 'expiredDate'
  265. DESC 'Account expired date.'
  266. EQUALITY generalizedTimeMatch
  267. SYNTAX 1.3.6.1.4.1.1466.115.121.1.24
  268. SINGLE-VALUE )
  269. attributetype ( 1.3.6.1.4.1.32349.1.2.2.19 NAME 'shadowAddress'
  270. DESC 'Shadow address for mail user'
  271. EQUALITY caseIgnoreIA5Match
  272. SUBSTR caseIgnoreSubstringsMatch
  273. SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{320} )
  274. attributetype ( 1.3.6.1.4.1.32349.1.2.2.20 NAME 'accountSetting'
  275. DESC 'Account setting. Default format: var:value'
  276. EQUALITY caseIgnoreIA5Match
  277. SUBSTR caseIgnoreSubstringsMatch
  278. SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
  279. attributetype ( 1.3.6.1.4.1.32349.1.2.2.21 NAME 'userManager'
  280. DESC 'Mail address of manager'
  281. EQUALITY caseIgnoreIA5Match
  282. SUBSTR caseIgnoreSubstringsMatch
  283. SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{320} )
  284. attributetype ( 1.3.6.1.4.1.32349.1.2.2.22 NAME 'mailWhitelistRecipient'
  285. DESC 'Whitelist recipient'
  286. EQUALITY caseIgnoreIA5Match
  287. SUBSTR caseIgnoreSubstringsMatch
  288. SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
  289. attributetype ( 1.3.6.1.4.1.32349.1.2.2.23 NAME 'mailBlacklistRecipient'
  290. DESC 'Blacklist recipient'
  291. EQUALITY caseIgnoreIA5Match
  292. SUBSTR caseIgnoreSubstringsMatch
  293. SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
  294. #
  295. # Mail Service: Mail List related attributes.
  296. #
  297. attributetype ( 1.3.6.1.4.1.32349.1.2.3.1 NAME 'accessPolicy'
  298. DESC 'Mail list access policy: open, domain, allowedOnly, memberOnly'
  299. EQUALITY caseIgnoreIA5Match
  300. SUBSTR caseIgnoreSubstringsMatch
  301. SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
  302. SINGLE-VALUE )
  303. attributetype ( 1.3.6.1.4.1.32349.1.2.3.2 NAME 'hasMember'
  304. DESC 'Group has members: yes, no'
  305. EQUALITY caseIgnoreIA5Match
  306. SUBSTR caseIgnoreSubstringsMatch
  307. SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
  308. SINGLE-VALUE )
  309. attributetype ( 1.3.6.1.4.1.32349.1.2.3.3 NAME 'listAllowedUser'
  310. DESC 'User allowed to mail to list: must be a valid email address for mail deliver'
  311. EQUALITY caseIgnoreIA5Match
  312. SUBSTR caseIgnoreSubstringsMatch
  313. SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{320} )
  314. #
  315. # Object Class Definitions
  316. #
  317. objectclass ( 1.3.6.1.4.1.32349.1.2.4.1 NAME 'mailDomain'
  318. DESC 'Mail Domain' SUP top STRUCTURAL
  319. MUST ( domainName )
  320. MAY ( cn $ mtaTransport $ domainAdmin $ enabledService $
  321. domainBackupMX $ domainStatus $ accountStatus $ mailHost $
  322. domainSenderBccAddress $ domainRecipientBccAddress $
  323. domainMaxQuotaSize $ domainCurrentQuotaSize $
  324. domainMaxUserNumber $ domainCurrentUserNumber $
  325. domainMaxAliasNumber $ domainCurrentAliasNumber $
  326. domainMaxListNumber $ domainCurrentListNumber $
  327. domainDefaultUserQuota $ domainAliasName $ disclaimer $
  328. description $ street $ telephoneNumber $
  329. facsimileTelephoneNumber $ expiredDate $ accountSetting $
  330. domainWhitelistIP $ domainWhitelistSender $
  331. domainBlacklistIP $ domainBlacklistSender ))
  332. objectclass ( 1.3.6.1.4.1.32349.1.2.4.2 NAME 'mailAdmin'
  333. DESC 'Mail Domain Admin' SUP top STRUCTURAL
  334. MUST ( mail )
  335. MAY ( domainGlobalAdmin $ description $ enabledService $
  336. userPassword $ accountStatus $ cn $ sn $ givenName $
  337. preferredLanguage $ givenName $ expiredDate $
  338. mailHost $ lastLoginDate $ accountSetting $ shadowLastChange ))
  339. objectclass ( 1.3.6.1.4.1.32349.1.2.4.3 NAME 'mailUser'
  340. DESC 'Mail User' SUP top AUXILIARY
  341. MUST ( mail $ uid )
  342. MAY ( storageBaseDirectory $ mailMessageStore $ homeDirectory $
  343. userPassword $ mailHost $ mailUID $ mailGID $
  344. mailQuota $ mailQuotaMessageLimit $
  345. mailForwardingAddress $ shadowAddress $ accountStatus $
  346. userRecipientBccAddress $ userSenderBccAddress $
  347. enabledService $ telephoneNumber $ backupMailAddress $
  348. mtaTransport $ memberOfGroup $ expiredDate $
  349. lastLoginDate $ lastLoginIP $ lastLoginProtocol $
  350. preferredLanguage $ disclaimer $ accountSetting $
  351. title $ userManager $
  352. mailWhitelistRecipient $ mailBlacklistRecipient $
  353. domainGlobalAdmin ))
  354. objectclass ( 1.3.6.1.4.1.32349.1.2.4.4 NAME 'mailAlias'
  355. DESC 'Mail Alias' SUP top STRUCTURAL
  356. MUST ( mail )
  357. MAY ( enabledService $ accountStatus $ description $ cn $
  358. mailForwardingAddress $ shadowAddress $ expiredDate $
  359. accountSetting $ mailHost ))
  360. objectclass ( 1.3.6.1.4.1.32349.1.2.4.5 NAME 'mailList'
  361. DESC 'Mail Domain Admin' SUP top STRUCTURAL
  362. MUST ( mail )
  363. MAY ( accountStatus $ description $ accessPolicy $ shadowAddress $
  364. enabledService $ hasMember $ listAllowedUser $ cn $
  365. expiredDate $ accountSetting $ mailHost ))
  366. objectclass ( 1.3.6.1.4.1.32349.1.2.4.6 NAME 'mailExternalUser'
  367. DESC 'Mail External User' SUP top STRUCTURAL
  368. MUST ( memberOfGroup )
  369. MAY ( accountStatus $ mail $ enabledService $ description $
  370. cn $ mailHost $ accountSetting ))