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

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

Minor glitches

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