root / pykota / trunk / initscripts / ldap / pykota.schema @ 1017

Revision 1017, 7.1 kB (checked in by jalet, 21 years ago)

New LDAP schema.
Small bug fixes.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
1# $Id$
2#
3# pykota.schema
4#
5# LDAP Schema for Pykota Quota System
6# Version 0.2
7#
8# Written 2003-05-28 by Wayne Godoy and John Flynn <wgodoy =AT= ub -DOT- edu -DOT- bz>
9#
10# Modified by Jerome Alet 2003-06-01
11#
12# 16868.x       => Conseil Internet & Logiciels Libres
13# 16868.1.x     => Pykota
14# 16868.1.1.x   => attributes
15# 16868.1.2.x   => classes
16#
17#
18# Contributors : Leif Johansson
19#
20# THIS IS WORK UNDER HEAVY DEVELOPPMENT !
21#
22# USE AT YOUR OWN RISK, AND ONLY IF YOU PERFECTLY KNOW
23# WHAT YOU ARE DOING.
24#
25# WHEN LDAP SUPPORT WILL BE FINALIZED, YOU'LL KNOW IT !
26#
27
28#       
29# PyKota Attributes Types
30#
31
32# pykotaLimitBy
33attributetype ( 1.3.6.1.4.1.16868.1.1.1 NAME 'pykotaLimitBy'
34        DESC 'How to limit the user/group : quota or balance'
35        EQUALITY caseIgnoreIA5Match
36        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
37
38# pykotaBalance
39attributetype ( 1.3.6.1.4.1.16868.1.1.2 NAME 'pykotaBalance'
40        DESC 'Current account balance for the user, float'
41        EQUALITY caseIgnoreIA5Match
42        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
43
44# pykotaLifeTimePaid
45attributetype ( 1.3.6.1.4.1.16868.1.1.3 NAME 'pykotaLifeTimePaid'
46        DESC 'Total money paid by the user to fill his account balance, float'
47        EQUALITY caseIgnoreIA5Match
48        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
49
50# pykotaPricePerPage
51attributetype ( 1.3.6.1.4.1.16868.1.1.4 NAME 'pykotaPricePerPage'
52        DESC 'Price per page for a printer, float'
53        EQUALITY caseIgnoreIA5Match
54        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
55
56# pykotaPricePerJob
57attributetype ( 1.3.6.1.4.1.16868.1.1.5 NAME 'pykotaPricePerJob'
58        DESC 'Price per job for a printer, float'
59        EQUALITY caseIgnoreIA5Match
60        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
61
62# pykotaSoftLimit
63attributetype ( 1.3.6.1.4.1.16868.1.1.6 NAME 'pykotaSoftLimit'
64        DESC 'Soft limit in maximal number of pages'
65        EQUALITY integerMatch
66        SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
67       
68# pykotaHardLimit       
69attributetype ( 1.3.6.1.4.1.16868.1.1.7 NAME 'pykotaHardLimit'
70        DESC 'Hard limit in maximal number of pages'
71        EQUALITY integerMatch
72        SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
73
74# pykotaDateLimit
75attributetype ( 1.3.6.1.4.1.16868.1.1.8 NAME 'pykotaDateLimit'
76        DESC 'Date at which the soft limit becomes a hard one'
77        EQUALITY caseIgnoreIA5Match
78        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
79
80# pykotaPageCounter
81attributetype ( 1.3.6.1.4.1.16868.1.1.9 NAME 'pykotaPageCounter'
82        DESC 'Current page counter for the user on a particular printer'
83        EQUALITY integerMatch
84        SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
85
86# pykotaLifePageCounter
87attributetype ( 1.3.6.1.4.1.16868.1.1.10 NAME 'pykotaLifePageCounter'
88        DESC 'Total page counter for the user on a particular printer'
89        EQUALITY integerMatch
90        SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
91
92# pykotaJobId
93attributetype ( 1.3.6.1.4.1.16868.1.1.11 NAME 'pykotaJobId'
94        DESC 'Id of a job in a printer history of jobs'
95        EQUALITY caseExactIA5Match
96        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
97
98# pykotaPrinterPageCounter
99attributetype ( 1.3.6.1.4.1.16868.1.1.12 NAME 'pykotaPrinterPageCounter'
100        DESC 'Life time page counter of a printer when the job began'
101        EQUALITY integerMatch
102        SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
103
104# pykotaJobSize
105attributetype ( 1.3.6.1.4.1.16868.1.1.13 NAME 'pykotaJobSize'
106        DESC 'Current job size in number of pages in the history'
107        EQUALITY integerMatch
108        SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
109
110# pykotaAction
111attributetype ( 1.3.6.1.4.1.16868.1.1.14 NAME 'pykotaAction'
112        DESC 'Was the job allowed, or denied'
113        EQUALITY caseIgnoreIA5Match
114        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
115       
116# pykotaPrinterName       
117attributetype ( 1.3.6.1.4.1.16868.1.1.15 NAME 'pykotaPrinterName'
118        DESC 'PyKota printer name as received from the printing subsystem'
119        EQUALITY caseIgnoreIA5Match
120        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
121       
122# pykotaUserName       
123attributetype ( 1.3.6.1.4.1.16868.1.1.16 NAME 'pykotaUserName'
124        DESC 'PyKota user name'
125        EQUALITY caseExactIA5Match
126        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
127       
128# pykotaGroupName       
129attributetype ( 1.3.6.1.4.1.16868.1.1.17 NAME 'pykotaGroupName'
130        DESC 'PyKota group name'
131        EQUALITY caseExactIA5Match
132        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
133       
134# pykotaLastJobUUID       
135attributetype ( 1.3.6.1.4.1.16868.1.1.18 NAME 'pykotaLastJobUUID'
136        DESC 'Last job uuid in the history'
137        EQUALITY caseExactIA5Match
138        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
139       
140#       
141# PyKota Object Classes
142#
143
144# pykotaUser
145objectclass ( 1.3.6.1.4.1.16868.1.2.1 NAME 'pykotaAccount' SUP top AUXILIARY
146        DESC 'PyKota Auxiliary User Account'
147        MUST ( uid $ pykotaUserName )
148        MAY  ( pykotaLimitBy ) )
149       
150# pykotaGroup       
151objectclass ( 1.3.6.1.4.1.16868.1.2.2 NAME 'pykotaGroup' SUP top AUXILIARY
152        DESC 'PyKota Auxiliary Group'
153        MUST ( cn $ pykotaGroupName )
154        MAY  ( pykotaLimitBy $ memberUid ) )
155       
156# pykotaPrinter       
157objectclass ( 1.3.6.1.4.1.16868.1.2.3 NAME 'pykotaPrinter' SUP top AUXILIARY
158        DESC 'PyKota Printer'
159        MUST ( cn $ pykotaPrinterName )
160        MAY  ( pykotaPricePerPage $ pykotaPricePerJob ) )
161       
162# pykotaUserPQuota       
163objectclass ( 1.3.6.1.4.1.16868.1.2.4 NAME 'pykotaUserPQuota' SUP top AUXILIARY
164        DESC 'PyKota User Quota on a Printer'
165        MUST ( cn $ pykotaUserName $ pykotaPrinterName )
166        MAY  ( pykotaPageCounter $ pykotaLifePageCounter $ pykotaSoftLimit $ pykotaHardLimit $ pykotaDateLimit ) )
167       
168# pykotaGroupPQuota       
169objectclass ( 1.3.6.1.4.1.16868.1.2.5 NAME 'pykotaGroupPQuota' SUP top AUXILIARY
170        DESC 'PyKota Group Quota on a Printer'
171        MUST ( cn $ pykotaGroupName $ pykotaPrinterName )
172        MAY  ( pykotaSoftLimit $ pykotaHardLimit $ pykotaDateLimit ) )
173       
174# pykotaJob       
175objectclass ( 1.3.6.1.4.1.16868.1.2.6 NAME 'pykotaJob' SUP top AUXILIARY
176        DESC 'An entry in the job history for a printer'
177        MUST ( cn $ pykotaUserName $ pykotaPrinterName $ pykotaJobId )
178        MAY  ( pykotaPrinterPageCounter $ pykotaJobSize $ pykotaAction ) )
179       
180# pykotaAccountBalance
181objectclass ( 1.3.6.1.4.1.16868.1.2.7 NAME 'pykotaAccountBalance' SUP top AUXILIARY
182        DESC 'PyKota User account balance'
183        MUST ( pykotaUserName )
184        MAY  ( pykotaBalance $ pykotaLifeTimePaid ) )
185       
186# pykotaLastJob       
187objectclass ( 1.3.6.1.4.1.16868.1.2.8 NAME 'pykotaLastJob' SUP top AUXILIARY
188        DESC 'Last job information for a printer'
189        MUST ( pykotaPrinterName $ pykotaLastJobUUID ) )
190       
191# pykotaNamed - Use it if you have to
192objectclass ( 1.3.6.1.4.1.16868.1.2.9 NAME 'pykotaNamed' SUP top STRUCTURAL
193        DESC 'PyKota Named Object'
194        MUST ( cn ) )
195       
196       
Note: See TracBrowser for help on using the browser.