rubynas 0.1.0.pre.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (112) hide show
  1. data/.gitignore +23 -0
  2. data/.gitmodules +3 -0
  3. data/.rspec +2 -0
  4. data/.ruby-version +1 -0
  5. data/Gemfile +4 -0
  6. data/Gemfile.lock +196 -0
  7. data/Guardfile +8 -0
  8. data/LICENSE.txt +7 -0
  9. data/Procfile +2 -0
  10. data/README.md +151 -0
  11. data/Rakefile +14 -0
  12. data/Vagrantfile +99 -0
  13. data/bin/rubynas +63 -0
  14. data/config.ru +5 -0
  15. data/doc/README_FOR_APP +2 -0
  16. data/doc/macosx_shares.png +0 -0
  17. data/doc/shares_overview.png +0 -0
  18. data/lib/rubynas.rb +35 -0
  19. data/lib/rubynas/apis/group_api.rb +51 -0
  20. data/lib/rubynas/apis/system_information_api.rb +13 -0
  21. data/lib/rubynas/apis/user_api.rb +85 -0
  22. data/lib/rubynas/apis/volume_api.rb +50 -0
  23. data/lib/rubynas/config.rb +63 -0
  24. data/lib/rubynas/db/migrate/20130302164415_devise_create_users.rb +46 -0
  25. data/lib/rubynas/db/migrate/20130322143040_create_volumes.rb +10 -0
  26. data/lib/rubynas/db/migrate/20130331102556_create_shared_folders.rb +10 -0
  27. data/lib/rubynas/db/migrate/20130331103034_create_shared_folder_services.rb +11 -0
  28. data/lib/rubynas/installers/base_installer.rb +70 -0
  29. data/lib/rubynas/installers/debian_installer.rb +199 -0
  30. data/lib/rubynas/installers/ubuntu_installer.rb +2 -0
  31. data/lib/rubynas/installers/ubuntu_precise_installer.rb +2 -0
  32. data/lib/rubynas/models/.gitkeep +0 -0
  33. data/lib/rubynas/models/ldap_group.rb +21 -0
  34. data/lib/rubynas/models/ldap_org_unit.rb +13 -0
  35. data/lib/rubynas/models/ldap_user.rb +31 -0
  36. data/lib/rubynas/models/shared_folder.rb +32 -0
  37. data/lib/rubynas/models/shared_folder_service.rb +15 -0
  38. data/lib/rubynas/models/volume.rb +16 -0
  39. data/lib/rubynas/services/afp_share_service.rb +9 -0
  40. data/lib/rubynas/services/service.rb +4 -0
  41. data/lib/rubynas/services/share_service.rb +3 -0
  42. data/lib/rubynas/version.rb +3 -0
  43. data/rubynas.gemspec +69 -0
  44. data/rubynas.ini +24 -0
  45. data/sandbox/ldap/base.ldif +50 -0
  46. data/sandbox/ldap/data/.gitkeep +0 -0
  47. data/sandbox/ldap/data/dc=rubynas,dc=com.ldif +14 -0
  48. data/sandbox/ldap/local.schema +6 -0
  49. data/sandbox/ldap/schema/README +80 -0
  50. data/sandbox/ldap/schema/apple.schema +1727 -0
  51. data/sandbox/ldap/schema/apple_auxillary.schema +20 -0
  52. data/sandbox/ldap/schema/collective.ldif +48 -0
  53. data/sandbox/ldap/schema/collective.schema +190 -0
  54. data/sandbox/ldap/schema/corba.ldif +42 -0
  55. data/sandbox/ldap/schema/corba.schema +239 -0
  56. data/sandbox/ldap/schema/core.ldif +591 -0
  57. data/sandbox/ldap/schema/core.schema +610 -0
  58. data/sandbox/ldap/schema/cosine.ldif +200 -0
  59. data/sandbox/ldap/schema/cosine.schema +2571 -0
  60. data/sandbox/ldap/schema/duaconf.ldif +83 -0
  61. data/sandbox/ldap/schema/duaconf.schema +261 -0
  62. data/sandbox/ldap/schema/dyngroup.ldif +71 -0
  63. data/sandbox/ldap/schema/dyngroup.schema +91 -0
  64. data/sandbox/ldap/schema/fmserver.schema +60 -0
  65. data/sandbox/ldap/schema/inetorgperson.ldif +69 -0
  66. data/sandbox/ldap/schema/inetorgperson.schema +155 -0
  67. data/sandbox/ldap/schema/java.ldif +59 -0
  68. data/sandbox/ldap/schema/java.schema +403 -0
  69. data/sandbox/ldap/schema/krb5-kdc.schema +134 -0
  70. data/sandbox/ldap/schema/microsoft.ext.schema +5383 -0
  71. data/sandbox/ldap/schema/microsoft.schema +4835 -0
  72. data/sandbox/ldap/schema/microsoft.std.schema +480 -0
  73. data/sandbox/ldap/schema/misc.ldif +45 -0
  74. data/sandbox/ldap/schema/misc.schema +75 -0
  75. data/sandbox/ldap/schema/netinfo.schema +240 -0
  76. data/sandbox/ldap/schema/nis.ldif +120 -0
  77. data/sandbox/ldap/schema/nis.schema +241 -0
  78. data/sandbox/ldap/schema/openldap.ldif +88 -0
  79. data/sandbox/ldap/schema/openldap.schema +54 -0
  80. data/sandbox/ldap/schema/pmi.ldif +123 -0
  81. data/sandbox/ldap/schema/pmi.schema +464 -0
  82. data/sandbox/ldap/schema/ppolicy.ldif +75 -0
  83. data/sandbox/ldap/schema/ppolicy.schema +531 -0
  84. data/sandbox/ldap/schema/samba.schema +179 -0
  85. data/sandbox/ldap/slapd.conf +99 -0
  86. data/spec/apis/group_api_spec.rb +97 -0
  87. data/spec/apis/system_information_api_spec.rb +27 -0
  88. data/spec/apis/user_api_spec.rb +113 -0
  89. data/spec/apis/volume_api_spec.rb +98 -0
  90. data/spec/factories/ldap_group.rb +16 -0
  91. data/spec/factories/ldap_users.rb +24 -0
  92. data/spec/factories/shared_folder_services.rb +9 -0
  93. data/spec/factories/shared_folders.rb +15 -0
  94. data/spec/factories/users.rb +8 -0
  95. data/spec/factories/volumes.rb +10 -0
  96. data/spec/installer/base_installer_spec.rb +35 -0
  97. data/spec/installer/debian_installer_spec.rb +86 -0
  98. data/spec/models/ldap_group_spec.rb +21 -0
  99. data/spec/models/ldap_org_unit_spec.rb +19 -0
  100. data/spec/models/ldap_user_spec.rb +19 -0
  101. data/spec/models/shared_folder_service_spec.rb +25 -0
  102. data/spec/models/shared_folder_spec.rb +27 -0
  103. data/spec/models/volume_spec.rb +5 -0
  104. data/spec/services/afp_share_service_spec.rb +5 -0
  105. data/spec/services/service_spec.rb +5 -0
  106. data/spec/services/share_service_spec.rb +5 -0
  107. data/spec/spec_helper.rb +30 -0
  108. data/spec/support/db_cleaner.rb +16 -0
  109. data/spec/support/factory_girl.rb +7 -0
  110. data/spec/support/logger.rb +1 -0
  111. data/spec/support/rack-test.rb +6 -0
  112. metadata +633 -0
@@ -0,0 +1,241 @@
1
+ # $OpenLDAP$
2
+ ## This work is part of OpenLDAP Software <http://www.openldap.org/>.
3
+ ##
4
+ ## Copyright 1998-2011 The OpenLDAP Foundation.
5
+ ## All rights reserved.
6
+ ##
7
+ ## Redistribution and use in source and binary forms, with or without
8
+ ## modification, are permitted only as authorized by the OpenLDAP
9
+ ## Public License.
10
+ ##
11
+ ## A copy of this license is available in the file LICENSE in the
12
+ ## top-level directory of the distribution or, alternatively, at
13
+ ## <http://www.OpenLDAP.org/license.html>.
14
+
15
+ # Definitions from RFC2307 (Experimental)
16
+ # An Approach for Using LDAP as a Network Information Service
17
+
18
+ # Depends upon core.schema and cosine.schema
19
+
20
+ # Note: The definitions in RFC2307 are given in syntaxes closely related
21
+ # to those in RFC2252, however, some liberties are taken that are not
22
+ # supported by RFC2252. This file has been written following RFC2252
23
+ # strictly.
24
+
25
+ # OID Base is iso(1) org(3) dod(6) internet(1) directory(1) nisSchema(1).
26
+ # i.e. nisSchema in RFC2307 is 1.3.6.1.1.1
27
+ #
28
+ # Syntaxes are under 1.3.6.1.1.1.0 (two new syntaxes are defined)
29
+ # validaters for these syntaxes are incomplete, they only
30
+ # implement printable string validation (which is good as the
31
+ # common use of these syntaxes violates the specification).
32
+ # Attribute types are under 1.3.6.1.1.1.1
33
+ # Object classes are under 1.3.6.1.1.1.2
34
+
35
+ # Attribute Type Definitions
36
+
37
+ # builtin
38
+ #attributetype ( 1.3.6.1.1.1.1.0 NAME 'uidNumber'
39
+ # DESC 'An integer uniquely identifying a user in an administrative domain'
40
+ # EQUALITY integerMatch
41
+ # SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
42
+
43
+ # builtin
44
+ #attributetype ( 1.3.6.1.1.1.1.1 NAME 'gidNumber'
45
+ # DESC 'An integer uniquely identifying a group in an administrative domain'
46
+ # EQUALITY integerMatch
47
+ # SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
48
+
49
+ attributetype ( 1.3.6.1.1.1.1.2 NAME 'gecos'
50
+ DESC 'The GECOS field; the common name'
51
+ EQUALITY caseIgnoreIA5Match
52
+ SUBSTR caseIgnoreIA5SubstringsMatch
53
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
54
+
55
+ #attributetype ( 1.3.6.1.1.1.1.3 NAME 'homeDirectory'
56
+ # DESC 'The absolute path to the home directory'
57
+ # EQUALITY caseExactIA5Match
58
+ # SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
59
+ attributetype ( 1.3.6.1.4.1.63.1000.1.1.1.1.99 NAME 'homeDirectory'
60
+ DESC 'The absolute path to the home directory'
61
+ EQUALITY caseExactMatch
62
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
63
+
64
+ attributetype ( 1.3.6.1.1.1.1.4 NAME 'loginShell'
65
+ DESC 'The path to the login shell'
66
+ EQUALITY caseExactIA5Match
67
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
68
+
69
+ attributetype ( 1.3.6.1.1.1.1.5 NAME 'shadowLastChange'
70
+ EQUALITY integerMatch
71
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
72
+
73
+ attributetype ( 1.3.6.1.1.1.1.6 NAME 'shadowMin'
74
+ EQUALITY integerMatch
75
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
76
+
77
+ attributetype ( 1.3.6.1.1.1.1.7 NAME 'shadowMax'
78
+ EQUALITY integerMatch
79
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
80
+
81
+ attributetype ( 1.3.6.1.1.1.1.8 NAME 'shadowWarning'
82
+ EQUALITY integerMatch
83
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
84
+
85
+ attributetype ( 1.3.6.1.1.1.1.9 NAME 'shadowInactive'
86
+ EQUALITY integerMatch
87
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
88
+
89
+ attributetype ( 1.3.6.1.1.1.1.10 NAME 'shadowExpire'
90
+ EQUALITY integerMatch
91
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
92
+
93
+ attributetype ( 1.3.6.1.1.1.1.11 NAME 'shadowFlag'
94
+ EQUALITY integerMatch
95
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
96
+
97
+ attributetype ( 1.3.6.1.1.1.1.12 NAME 'memberUid'
98
+ EQUALITY caseIgnoreIA5Match
99
+ SUBSTR caseIgnoreIA5SubstringsMatch
100
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
101
+
102
+ attributetype ( 1.3.6.1.1.1.1.13 NAME 'memberNisNetgroup'
103
+ EQUALITY caseExactIA5Match
104
+ SUBSTR caseExactIA5SubstringsMatch
105
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
106
+
107
+ attributetype ( 1.3.6.1.1.1.1.14 NAME 'nisNetgroupTriple'
108
+ DESC 'Netgroup triple'
109
+ SYNTAX 1.3.6.1.1.1.0.0 )
110
+
111
+ attributetype ( 1.3.6.1.1.1.1.15 NAME 'ipServicePort'
112
+ EQUALITY integerMatch
113
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
114
+
115
+ attributetype ( 1.3.6.1.1.1.1.16 NAME 'ipServiceProtocol'
116
+ SUP name )
117
+
118
+ attributetype ( 1.3.6.1.1.1.1.17 NAME 'ipProtocolNumber'
119
+ EQUALITY integerMatch
120
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
121
+
122
+ attributetype ( 1.3.6.1.1.1.1.18 NAME 'oncRpcNumber'
123
+ EQUALITY integerMatch
124
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
125
+
126
+ attributetype ( 1.3.6.1.1.1.1.19 NAME 'ipHostNumber'
127
+ DESC 'IP address'
128
+ EQUALITY caseIgnoreIA5Match
129
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{128} )
130
+
131
+ attributetype ( 1.3.6.1.1.1.1.20 NAME 'ipNetworkNumber'
132
+ DESC 'IP network'
133
+ EQUALITY caseIgnoreIA5Match
134
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{128} SINGLE-VALUE )
135
+
136
+ attributetype ( 1.3.6.1.1.1.1.21 NAME 'ipNetmaskNumber'
137
+ DESC 'IP netmask'
138
+ EQUALITY caseIgnoreIA5Match
139
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{128} SINGLE-VALUE )
140
+
141
+ attributetype ( 1.3.6.1.1.1.1.22 NAME 'macAddress'
142
+ DESC 'MAC address'
143
+ EQUALITY caseIgnoreIA5Match
144
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{128} )
145
+
146
+ attributetype ( 1.3.6.1.1.1.1.23 NAME 'bootParameter'
147
+ DESC 'rpc.bootparamd parameter'
148
+ SYNTAX 1.3.6.1.1.1.0.1 )
149
+
150
+ attributetype ( 1.3.6.1.1.1.1.24 NAME 'bootFile'
151
+ DESC 'Boot image name'
152
+ EQUALITY caseExactIA5Match
153
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
154
+
155
+ attributetype ( 1.3.6.1.1.1.1.26 NAME 'nisMapName'
156
+ SUP name )
157
+
158
+ attributetype ( 1.3.6.1.1.1.1.27 NAME 'nisMapEntry'
159
+ EQUALITY caseExactIA5Match
160
+ SUBSTR caseExactIA5SubstringsMatch
161
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{1024} SINGLE-VALUE )
162
+
163
+ # Object Class Definitions
164
+
165
+ objectclass ( 1.3.6.1.1.1.2.0 NAME 'posixAccount'
166
+ DESC 'Abstraction of an account with POSIX attributes'
167
+ SUP top AUXILIARY
168
+ MUST ( cn $ uid $ uidNumber $ gidNumber $ homeDirectory )
169
+ MAY ( userPassword $ loginShell $ gecos $ description ) )
170
+
171
+ objectclass ( 1.3.6.1.1.1.2.1 NAME 'shadowAccount'
172
+ DESC 'Additional attributes for shadow passwords'
173
+ SUP top AUXILIARY
174
+ MUST uid
175
+ MAY ( userPassword $ shadowLastChange $ shadowMin $
176
+ shadowMax $ shadowWarning $ shadowInactive $
177
+ shadowExpire $ shadowFlag $ description ) )
178
+
179
+ objectclass ( 1.3.6.1.1.1.2.2 NAME 'posixGroup'
180
+ DESC 'Abstraction of a group of accounts'
181
+ SUP top STRUCTURAL
182
+ MUST ( cn $ gidNumber )
183
+ MAY ( userPassword $ memberUid $ description ) )
184
+
185
+ objectclass ( 1.3.6.1.1.1.2.3 NAME 'ipService'
186
+ DESC 'Abstraction an Internet Protocol service'
187
+ SUP top STRUCTURAL
188
+ MUST ( cn $ ipServicePort $ ipServiceProtocol )
189
+ MAY ( description ) )
190
+
191
+ objectclass ( 1.3.6.1.1.1.2.4 NAME 'ipProtocol'
192
+ DESC 'Abstraction of an IP protocol'
193
+ SUP top STRUCTURAL
194
+ MUST ( cn $ ipProtocolNumber $ description )
195
+ MAY description )
196
+
197
+ objectclass ( 1.3.6.1.1.1.2.5 NAME 'oncRpc'
198
+ DESC 'Abstraction of an ONC/RPC binding'
199
+ SUP top STRUCTURAL
200
+ MUST ( cn $ oncRpcNumber $ description )
201
+ MAY description )
202
+
203
+ objectclass ( 1.3.6.1.1.1.2.6 NAME 'ipHost'
204
+ DESC 'Abstraction of a host, an IP device'
205
+ SUP top AUXILIARY
206
+ MUST ( cn $ ipHostNumber )
207
+ MAY ( l $ description $ manager ) )
208
+
209
+ objectclass ( 1.3.6.1.1.1.2.7 NAME 'ipNetwork'
210
+ DESC 'Abstraction of an IP network'
211
+ SUP top STRUCTURAL
212
+ MUST ( cn $ ipNetworkNumber )
213
+ MAY ( ipNetmaskNumber $ l $ description $ manager ) )
214
+
215
+ objectclass ( 1.3.6.1.1.1.2.8 NAME 'nisNetgroup'
216
+ DESC 'Abstraction of a netgroup'
217
+ SUP top STRUCTURAL
218
+ MUST cn
219
+ MAY ( nisNetgroupTriple $ memberNisNetgroup $ description ) )
220
+
221
+ objectclass ( 1.3.6.1.1.1.2.9 NAME 'nisMap'
222
+ DESC 'A generic abstraction of a NIS map'
223
+ SUP top STRUCTURAL
224
+ MUST nisMapName
225
+ MAY description )
226
+
227
+ objectclass ( 1.3.6.1.1.1.2.10 NAME 'nisObject'
228
+ DESC 'An entry in a NIS map'
229
+ SUP top STRUCTURAL
230
+ MUST ( cn $ nisMapEntry $ nisMapName )
231
+ MAY description )
232
+
233
+ objectclass ( 1.3.6.1.1.1.2.11 NAME 'ieee802Device'
234
+ DESC 'A device with a MAC address'
235
+ SUP top AUXILIARY
236
+ MAY macAddress )
237
+
238
+ objectclass ( 1.3.6.1.1.1.2.12 NAME 'bootableDevice'
239
+ DESC 'A device with boot parameters'
240
+ SUP top AUXILIARY
241
+ MAY ( bootFile $ bootParameter ) )
@@ -0,0 +1,88 @@
1
+ # $OpenLDAP$
2
+ ## This work is part of OpenLDAP Software <http://www.openldap.org/>.
3
+ ##
4
+ ## Copyright 1998-2011 The OpenLDAP Foundation.
5
+ ## All rights reserved.
6
+ ##
7
+ ## Redistribution and use in source and binary forms, with or without
8
+ ## modification, are permitted only as authorized by the OpenLDAP
9
+ ## Public License.
10
+ ##
11
+ ## A copy of this license is available in the file LICENSE in the
12
+ ## top-level directory of the distribution or, alternatively, at
13
+ ## <http://www.OpenLDAP.org/license.html>.
14
+ #
15
+ #
16
+ # OpenLDAP Project's directory schema items
17
+ #
18
+ # depends upon:
19
+ # core.schema
20
+ # cosine.schema
21
+ # inetorgperson.schema
22
+ #
23
+ # These are provided for informational purposes only.
24
+ #
25
+ # This openldap.ldif file is provided as a demonstration of how to
26
+ # convert a *.schema file into *.ldif format. The key points:
27
+ # In LDIF, a blank line terminates an entry. Blank lines in a *.schema
28
+ # file should be replaced with a single '#' to turn them into
29
+ # comments, or they should just be removed.
30
+ # In addition to the actual schema directives, the file needs a small
31
+ # header to make it a valid LDAP entry. This header must provide the
32
+ # dn of the entry, the objectClass, and the cn, as shown here:
33
+ #
34
+ dn: cn=openldap,cn=schema,cn=config
35
+ objectClass: olcSchemaConfig
36
+ cn: openldap
37
+ #
38
+ # The schema directives need to be changed to LDAP Attributes.
39
+ # First a basic string substitution can be done on each of the keywords:
40
+ # objectIdentifier -> olcObjectIdentifier:
41
+ # objectClass -> olcObjectClasses:
42
+ # attributeType -> olcAttributeTypes:
43
+ # Then leading whitespace must be fixed. The slapd.conf format allows
44
+ # tabs or spaces to denote line continuation, while LDIF only allows
45
+ # the space character.
46
+ # Also slapd.conf preserves the continuation character, while LDIF strips
47
+ # it out. So a single TAB/SPACE in slapd.conf must be replaced with
48
+ # two SPACEs in LDIF, otherwise the continued text may get joined as
49
+ # a single word.
50
+ # The directives must be listed in a proper sequence:
51
+ # All olcObjectIdentifiers must be first, so they may be referenced by
52
+ # any following definitions.
53
+ # All olcAttributeTypes must be next, so they may be referenced by any
54
+ # following objectClass definitions.
55
+ # All olcObjectClasses must be after the olcAttributeTypes.
56
+ # And of course, any superior must occur before anything that inherits
57
+ # from it.
58
+ #
59
+ olcObjectIdentifier: OpenLDAProot 1.3.6.1.4.1.4203
60
+ #
61
+ olcObjectIdentifier: OpenLDAP OpenLDAProot:1
62
+ olcObjectIdentifier: OpenLDAPattributeType OpenLDAP:3
63
+ olcObjectIdentifier: OpenLDAPobjectClass OpenLDAP:4
64
+ #
65
+ olcObjectClasses: ( OpenLDAPobjectClass:3
66
+ NAME 'OpenLDAPorg'
67
+ DESC 'OpenLDAP Organizational Object'
68
+ SUP organization
69
+ MAY ( buildingName $ displayName $ labeledURI ) )
70
+ #
71
+ olcObjectClasses: ( OpenLDAPobjectClass:4
72
+ NAME 'OpenLDAPou'
73
+ DESC 'OpenLDAP Organizational Unit Object'
74
+ SUP organizationalUnit
75
+ MAY ( buildingName $ displayName $ labeledURI $ o ) )
76
+ #
77
+ olcObjectClasses: ( OpenLDAPobjectClass:5
78
+ NAME 'OpenLDAPperson'
79
+ DESC 'OpenLDAP Person'
80
+ SUP ( pilotPerson $ inetOrgPerson )
81
+ MUST ( uid $ cn )
82
+ MAY ( givenName $ labeledURI $ o ) )
83
+ #
84
+ olcObjectClasses: ( OpenLDAPobjectClass:6
85
+ NAME 'OpenLDAPdisplayableObject'
86
+ DESC 'OpenLDAP Displayable Object'
87
+ AUXILIARY
88
+ MAY displayName )
@@ -0,0 +1,54 @@
1
+ # $OpenLDAP$
2
+ ## This work is part of OpenLDAP Software <http://www.openldap.org/>.
3
+ ##
4
+ ## Copyright 1998-2011 The OpenLDAP Foundation.
5
+ ## All rights reserved.
6
+ ##
7
+ ## Redistribution and use in source and binary forms, with or without
8
+ ## modification, are permitted only as authorized by the OpenLDAP
9
+ ## Public License.
10
+ ##
11
+ ## A copy of this license is available in the file LICENSE in the
12
+ ## top-level directory of the distribution or, alternatively, at
13
+ ## <http://www.OpenLDAP.org/license.html>.
14
+
15
+ #
16
+ # OpenLDAP Project's directory schema items
17
+ #
18
+ # depends upon:
19
+ # core.schema
20
+ # cosine.schema
21
+ # inetorgperson.schema
22
+ #
23
+ # These are provided for informational purposes only.
24
+
25
+ objectIdentifier OpenLDAProot 1.3.6.1.4.1.4203
26
+
27
+ objectIdentifier OpenLDAP OpenLDAProot:1
28
+ objectIdentifier OpenLDAPattributeType OpenLDAP:3
29
+ objectIdentifier OpenLDAPobjectClass OpenLDAP:4
30
+
31
+ objectClass ( OpenLDAPobjectClass:3
32
+ NAME 'OpenLDAPorg'
33
+ DESC 'OpenLDAP Organizational Object'
34
+ SUP organization
35
+ MAY ( buildingName $ displayName $ labeledURI ) )
36
+
37
+ objectClass ( OpenLDAPobjectClass:4
38
+ NAME 'OpenLDAPou'
39
+ DESC 'OpenLDAP Organizational Unit Object'
40
+ SUP organizationalUnit
41
+ MAY ( buildingName $ displayName $ labeledURI $ o ) )
42
+
43
+ objectClass ( OpenLDAPobjectClass:5
44
+ NAME 'OpenLDAPperson'
45
+ DESC 'OpenLDAP Person'
46
+ SUP ( pilotPerson $ inetOrgPerson )
47
+ MUST ( uid $ cn )
48
+ MAY ( givenName $ labeledURI $ o ) )
49
+
50
+ objectClass ( OpenLDAPobjectClass:6
51
+ NAME 'OpenLDAPdisplayableObject'
52
+ DESC 'OpenLDAP Displayable Object'
53
+ AUXILIARY
54
+ MAY displayName )
@@ -0,0 +1,123 @@
1
+ # OpenLDAP X.509 PMI schema
2
+ # $OpenLDAP$
3
+ ## This work is part of OpenLDAP Software <http://www.openldap.org/>.
4
+ ##
5
+ ## Copyright 1998-2011 The OpenLDAP Foundation.
6
+ ## All rights reserved.
7
+ ##
8
+ ## Redistribution and use in source and binary forms, with or without
9
+ ## modification, are permitted only as authorized by the OpenLDAP
10
+ ## Public License.
11
+ ##
12
+ ## A copy of this license is available in the file LICENSE in the
13
+ ## top-level directory of the distribution or, alternatively, at
14
+ ## <http://www.OpenLDAP.org/license.html>.
15
+ #
16
+ ## Portions Copyright (C) The Internet Society (1997-2006).
17
+ ## All Rights Reserved.
18
+ #
19
+ # Includes LDAPv3 schema items from:
20
+ # ITU X.509 (08/2005)
21
+ #
22
+ # This file was automatically generated from pmi.schema; see that file
23
+ # for complete references.
24
+ #
25
+ dn: cn=pmi,cn=schema,cn=config
26
+ objectClass: olcSchemaConfig
27
+ cn: pmi
28
+ olcObjectIdentifier: {0}id-oc-pmiUser 2.5.6.24
29
+ olcObjectIdentifier: {1}id-oc-pmiAA 2.5.6.25
30
+ olcObjectIdentifier: {2}id-oc-pmiSOA 2.5.6.26
31
+ olcObjectIdentifier: {3}id-oc-attCertCRLDistributionPts 2.5.6.27
32
+ olcObjectIdentifier: {4}id-oc-privilegePolicy 2.5.6.32
33
+ olcObjectIdentifier: {5}id-oc-pmiDelegationPath 2.5.6.33
34
+ olcObjectIdentifier: {6}id-oc-protectedPrivilegePolicy 2.5.6.34
35
+ olcObjectIdentifier: {7}id-at-attributeCertificate 2.5.4.58
36
+ olcObjectIdentifier: {8}id-at-attributeCertificateRevocationList 2.5.4.59
37
+ olcObjectIdentifier: {9}id-at-aACertificate 2.5.4.61
38
+ olcObjectIdentifier: {10}id-at-attributeDescriptorCertificate 2.5.4.62
39
+ olcObjectIdentifier: {11}id-at-attributeAuthorityRevocationList 2.5.4.63
40
+ olcObjectIdentifier: {12}id-at-privPolicy 2.5.4.71
41
+ olcObjectIdentifier: {13}id-at-role 2.5.4.72
42
+ olcObjectIdentifier: {14}id-at-delegationPath 2.5.4.73
43
+ olcObjectIdentifier: {15}id-at-protPrivPolicy 2.5.4.74
44
+ olcObjectIdentifier: {16}id-at-xMLPrivilegeInfo 2.5.4.75
45
+ olcObjectIdentifier: {17}id-at-xMLPprotPrivPolicy 2.5.4.76
46
+ olcObjectIdentifier: {18}id-mr 2.5.13
47
+ olcObjectIdentifier: {19}id-mr-attributeCertificateMatch id-mr:42
48
+ olcObjectIdentifier: {20}id-mr-attributeCertificateExactMatch id-mr:45
49
+ olcObjectIdentifier: {21}id-mr-holderIssuerMatch id-mr:46
50
+ olcObjectIdentifier: {22}id-mr-authAttIdMatch id-mr:53
51
+ olcObjectIdentifier: {23}id-mr-roleSpecCertIdMatch id-mr:54
52
+ olcObjectIdentifier: {24}id-mr-basicAttConstraintsMatch id-mr:55
53
+ olcObjectIdentifier: {25}id-mr-delegatedNameConstraintsMatch id-mr:56
54
+ olcObjectIdentifier: {26}id-mr-timeSpecMatch id-mr:57
55
+ olcObjectIdentifier: {27}id-mr-attDescriptorMatch id-mr:58
56
+ olcObjectIdentifier: {28}id-mr-acceptableCertPoliciesMatch id-mr:59
57
+ olcObjectIdentifier: {29}id-mr-delegationPathMatch id-mr:61
58
+ olcObjectIdentifier: {30}id-mr-sOAIdentifierMatch id-mr:66
59
+ olcObjectIdentifier: {31}id-mr-indirectIssuerMatch id-mr:67
60
+ olcObjectIdentifier: {32}AttributeCertificate 1.3.6.1.4.1.4203.666.11.10.2.1
61
+ olcObjectIdentifier: {33}CertificateList 1.3.6.1.4.1.1466.115.121.1.9
62
+ olcObjectIdentifier: {34}AttCertPath 1.3.6.1.4.1.4203.666.11.10.2.4
63
+ olcObjectIdentifier: {35}PolicySyntax 1.3.6.1.4.1.4203.666.11.10.2.5
64
+ olcObjectIdentifier: {36}RoleSyntax 1.3.6.1.4.1.4203.666.11.10.2.6
65
+ olcLdapSyntaxes: {0}( 1.3.6.1.4.1.4203.666.11.10.2.4 DESC 'X.509 PMI attribute
66
+ cartificate path: SEQUENCE OF AttributeCertificate' X-SUBST '1.3.6.1.4.1.146
67
+ 6.115.121.1.15' )
68
+ olcLdapSyntaxes: {1}( 1.3.6.1.4.1.4203.666.11.10.2.5 DESC 'X.509 PMI policy sy
69
+ ntax' X-SUBST '1.3.6.1.4.1.1466.115.121.1.15' )
70
+ olcLdapSyntaxes: {2}( 1.3.6.1.4.1.4203.666.11.10.2.6 DESC 'X.509 PMI role synt
71
+ ax' X-SUBST '1.3.6.1.4.1.1466.115.121.1.15' )
72
+ olcAttributeTypes: {0}( id-at-role NAME 'role' DESC 'X.509 Role attribute, use
73
+ ;binary' SYNTAX RoleSyntax )
74
+ olcAttributeTypes: {1}( id-at-xMLPrivilegeInfo NAME 'xmlPrivilegeInfo' DESC 'X
75
+ .509 XML privilege information attribute' SYNTAX 1.3.6.1.4.1.1466.115.121.1.1
76
+ 5 )
77
+ olcAttributeTypes: {2}( id-at-attributeCertificate NAME 'attributeCertificateA
78
+ ttribute' DESC 'X.509 Attribute certificate attribute, use ;binary' EQUALITY
79
+ attributeCertificateExactMatch SYNTAX AttributeCertificate )
80
+ olcAttributeTypes: {3}( id-at-aACertificate NAME 'aACertificate' DESC 'X.509 A
81
+ A certificate attribute, use ;binary' EQUALITY attributeCertificateExactMatch
82
+ SYNTAX AttributeCertificate )
83
+ olcAttributeTypes: {4}( id-at-attributeDescriptorCertificate NAME 'attributeDe
84
+ scriptorCertificate' DESC 'X.509 Attribute descriptor certificate attribute,
85
+ use ;binary' EQUALITY attributeCertificateExactMatch SYNTAX AttributeCertific
86
+ ate )
87
+ olcAttributeTypes: {5}( id-at-attributeCertificateRevocationList NAME 'attribu
88
+ teCertificateRevocationList' DESC 'X.509 Attribute certificate revocation lis
89
+ t attribute, use ;binary' SYNTAX CertificateList X-EQUALITY 'certificateListE
90
+ xactMatch, not implemented yet' )
91
+ olcAttributeTypes: {6}( id-at-attributeAuthorityRevocationList NAME 'attribute
92
+ AuthorityRevocationList' DESC 'X.509 AA certificate revocation list attribute
93
+ , use ;binary' SYNTAX CertificateList X-EQUALITY 'certificateListExactMatch,
94
+ not implemented yet' )
95
+ olcAttributeTypes: {7}( id-at-delegationPath NAME 'delegationPath' DESC 'X.509
96
+ Delegation path attribute, use ;binary' SYNTAX AttCertPath )
97
+ olcAttributeTypes: {8}( id-at-privPolicy NAME 'privPolicy' DESC 'X.509 Privile
98
+ ge policy attribute, use ;binary' SYNTAX PolicySyntax )
99
+ olcAttributeTypes: {9}( id-at-protPrivPolicy NAME 'protPrivPolicy' DESC 'X.509
100
+ Protected privilege policy attribute, use ;binary' EQUALITY attributeCertifi
101
+ cateExactMatch SYNTAX AttributeCertificate )
102
+ olcAttributeTypes: {10}( id-at-xMLPprotPrivPolicy NAME 'xmlPrivPolicy' DESC 'X
103
+ .509 XML Protected privilege policy attribute' SYNTAX 1.3.6.1.4.1.1466.115.12
104
+ 1.1.15 )
105
+ olcObjectClasses: {0}( id-oc-pmiUser NAME 'pmiUser' DESC 'X.509 PMI user objec
106
+ t class' SUP top AUXILIARY MAY attributeCertificateAttribute )
107
+ olcObjectClasses: {1}( id-oc-pmiAA NAME 'pmiAA' DESC 'X.509 PMI AA object clas
108
+ s' SUP top AUXILIARY MAY ( aACertificate $ attributeCertificateRevocationList
109
+ $ attributeAuthorityRevocationList ) )
110
+ olcObjectClasses: {2}( id-oc-pmiSOA NAME 'pmiSOA' DESC 'X.509 PMI SOA object c
111
+ lass' SUP top AUXILIARY MAY ( attributeCertificateRevocationList $ attributeA
112
+ uthorityRevocationList $ attributeDescriptorCertificate ) )
113
+ olcObjectClasses: {3}( id-oc-attCertCRLDistributionPts NAME 'attCertCRLDistrib
114
+ utionPt' DESC 'X.509 Attribute certificate CRL distribution point object clas
115
+ s' SUP top AUXILIARY MAY ( attributeCertificateRevocationList $ attributeAuth
116
+ orityRevocationList ) )
117
+ olcObjectClasses: {4}( id-oc-pmiDelegationPath NAME 'pmiDelegationPath' DESC '
118
+ X.509 PMI delegation path' SUP top AUXILIARY MAY delegationPath )
119
+ olcObjectClasses: {5}( id-oc-privilegePolicy NAME 'privilegePolicy' DESC 'X.50
120
+ 9 Privilege policy object class' SUP top AUXILIARY MAY privPolicy )
121
+ olcObjectClasses: {6}( id-oc-protectedPrivilegePolicy NAME 'protectedPrivilege
122
+ Policy' DESC 'X.509 Protected privilege policy object class' SUP top AUXILIAR
123
+ Y MAY protPrivPolicy )