ldap-rest 0.0.1 → 0.1.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 (62) hide show
  1. package/README.md +38 -0
  2. package/bin/sync-app-accounts.mjs +276 -0
  3. package/dist/abstract/ldapFlat.js +1 -1
  4. package/dist/abstract/plugin.js +1 -1
  5. package/dist/bin/index.js +1 -1
  6. package/dist/config/args.js +1 -1
  7. package/dist/lib/ldapActions.js +1 -1
  8. package/dist/lib/utils.js +1 -1
  9. package/dist/logger/winston.js +1 -1
  10. package/dist/plugins/auth/hmac.js +1 -0
  11. package/dist/plugins/auth/totp.js +1 -0
  12. package/dist/plugins/demo/helloworld.js +1 -1
  13. package/dist/plugins/ldap/groups.js +1 -1
  14. package/dist/plugins/ldap/onChange.js +1 -1
  15. package/dist/plugins/static.js +1 -1
  16. package/dist/plugins/twake/appAccountsApi.js +1 -0
  17. package/dist/plugins/twake/appAccountsConsistency.js +1 -0
  18. package/dist/plugins/twake/james.js +1 -1
  19. package/dist/plugins/weblogs.js +1 -1
  20. package/dist/src/abstract/ldapFlat.d.ts +0 -5
  21. package/dist/src/abstract/plugin.d.ts +1 -0
  22. package/dist/src/bin/index.d.ts +1 -0
  23. package/dist/src/browser/shared/index.d.ts +1 -0
  24. package/dist/src/browser/shared/utils/hmac.d.ts +73 -0
  25. package/dist/src/browser/shared/utils/totp.d.ts +64 -0
  26. package/dist/src/config/args.d.ts +9 -1
  27. package/dist/src/hooks.d.ts +2 -2
  28. package/dist/src/lib/ldapActions.d.ts +3 -7
  29. package/dist/src/lib/utils.d.ts +17 -0
  30. package/dist/src/logger/winston.d.ts +5 -0
  31. package/dist/src/plugins/auth/hmac.d.ts +24 -0
  32. package/dist/src/plugins/auth/totp.d.ts +28 -0
  33. package/dist/src/plugins/ldap/onChange.d.ts +1 -0
  34. package/dist/src/plugins/static.d.ts +4 -0
  35. package/dist/src/plugins/twake/appAccountsApi.d.ts +52 -0
  36. package/dist/src/plugins/twake/appAccountsConsistency.d.ts +58 -0
  37. package/docs/DEVELOPER_GUIDE.md +1 -0
  38. package/docs/PLUGIN_DEPENDENCIES.md +19 -0
  39. package/docs/README.md +76 -30
  40. package/docs/authentication.md +604 -12
  41. package/docs/plugins/DEVELOPMENT.md +162 -76
  42. package/docs/testing-with-embedded-ldap.md +347 -0
  43. package/docs/twakeAppAccountsApi.md +485 -0
  44. package/docs/weblogs.md +37 -8
  45. package/examples/web/README.md +175 -0
  46. package/examples/web/ldap-tree-viewer.html +16 -2
  47. package/examples/web/totp-client.html +541 -0
  48. package/package.json +132 -87
  49. package/static/browser/shared/index.js +1 -0
  50. package/static/browser/shared/index.js.map +1 -1
  51. package/static/browser/shared/utils/hmac.js +202 -0
  52. package/static/browser/shared/utils/hmac.js.map +1 -0
  53. package/static/browser/shared/utils/totp.js +182 -0
  54. package/static/browser/shared/utils/totp.js.map +1 -0
  55. package/static/browser/shared.esm.js +181 -1
  56. package/static/browser/shared.esm.js.map +1 -1
  57. package/static/browser/shared.js +184 -0
  58. package/static/browser/shared.js.map +1 -1
  59. package/static/browser/shared.min.js +1 -1
  60. package/static/browser/shared.min.js.map +1 -1
  61. package/static/schemas/obm/organizations.json +24 -0
  62. package/static/schemas/obm/users.json +192 -0
@@ -0,0 +1,192 @@
1
+ {
2
+ "entity": {
3
+ "name": "obmUser",
4
+ "mainAttribute": "uid",
5
+ "objectClass": [
6
+ "top",
7
+ "inetOrgPerson",
8
+ "posixAccount",
9
+ "shadowAccount",
10
+ "sambaSamAccount",
11
+ "obmUser"
12
+ ],
13
+ "singularName": "user",
14
+ "pluralName": "users",
15
+ "base": "ou=users,__ldap_base__"
16
+ },
17
+ "strict": true,
18
+ "attributes": {
19
+ "objectClass": {
20
+ "type": "array",
21
+ "items": {
22
+ "type": "string",
23
+ "test": "^[a-zA-Z][a-zA-Z0-9-]*$"
24
+ },
25
+ "default": [
26
+ "top",
27
+ "inetOrgPerson",
28
+ "posixAccount",
29
+ "shadowAccount",
30
+ "sambaSamAccount",
31
+ "obmUser"
32
+ ],
33
+ "required": true,
34
+ "fixed": true
35
+ },
36
+ "uid": {
37
+ "type": "string",
38
+ "test": "^[a-zA-Z0-9._-]{1,255}$",
39
+ "required": true,
40
+ "role": "identifier"
41
+ },
42
+ "uidNumber": {
43
+ "type": "number",
44
+ "required": true
45
+ },
46
+ "gidNumber": {
47
+ "type": "number",
48
+ "required": true
49
+ },
50
+ "cn": {
51
+ "type": "string",
52
+ "required": true
53
+ },
54
+ "sn": {
55
+ "type": "string",
56
+ "required": true
57
+ },
58
+ "homeDirectory": {
59
+ "type": "string",
60
+ "required": false
61
+ },
62
+ "mail": {
63
+ "type": "string",
64
+ "test": "^[^@\\s]+@[^@\\s]+\\.[^@\\s]+$",
65
+ "required": true,
66
+ "role": "primaryEmail"
67
+ },
68
+ "mailAlias": {
69
+ "type": "array",
70
+ "items": {
71
+ "type": "string",
72
+ "test": "^[^@\\s]+@[^@\\s]+\\.[^@\\s]+$"
73
+ },
74
+ "required": false,
75
+ "role": "emailAliases"
76
+ },
77
+ "givenName": {
78
+ "type": "string",
79
+ "required": true
80
+ },
81
+ "displayName": {
82
+ "type": "string",
83
+ "required": true
84
+ },
85
+ "loginShell": {
86
+ "type": "string",
87
+ "required": false
88
+ },
89
+ "title": {
90
+ "type": "string",
91
+ "required": false
92
+ },
93
+ "personalTitle": {
94
+ "type": "string",
95
+ "required": false
96
+ },
97
+ "ou": {
98
+ "type": "string",
99
+ "required": true
100
+ },
101
+ "webAccess": {
102
+ "type": "string",
103
+ "test": "^(PERMIT|REJECT)$",
104
+ "required": false
105
+ },
106
+ "mailBox": {
107
+ "type": "string",
108
+ "required": true
109
+ },
110
+ "mailBoxServer": {
111
+ "type": "string",
112
+ "required": false
113
+ },
114
+ "mailAccess": {
115
+ "type": "string",
116
+ "test": "^(PERMIT|REJECT)$",
117
+ "required": true
118
+ },
119
+ "registeredAddress": {
120
+ "type": "string",
121
+ "required": false
122
+ },
123
+ "l": {
124
+ "type": "string",
125
+ "required": false
126
+ },
127
+ "hiddenUser": {
128
+ "type": "string",
129
+ "test": "^(TRUE|FALSE)$",
130
+ "required": false
131
+ },
132
+ "obmDomain": {
133
+ "type": "string",
134
+ "required": true
135
+ },
136
+ "telephoneNumber": {
137
+ "type": "array",
138
+ "items": {
139
+ "type": "string"
140
+ },
141
+ "required": false
142
+ },
143
+ "mobile": {
144
+ "type": "string",
145
+ "required": false
146
+ },
147
+ "userPassword": {
148
+ "type": "string",
149
+ "required": false
150
+ },
151
+ "sambaAcctFlags": {
152
+ "type": "string",
153
+ "required": false
154
+ },
155
+ "sambaSID": {
156
+ "type": "string",
157
+ "required": false
158
+ },
159
+ "sambaPrimaryGroupSID": {
160
+ "type": "string",
161
+ "required": false
162
+ },
163
+ "sambaHomeDrive": {
164
+ "type": "string",
165
+ "required": false
166
+ },
167
+ "sambaHomePath": {
168
+ "type": "string",
169
+ "required": false
170
+ },
171
+ "sambaProfilePath": {
172
+ "type": "string",
173
+ "required": false
174
+ },
175
+ "sambaLMPassword": {
176
+ "type": "string",
177
+ "required": false
178
+ },
179
+ "sambaNTPassword": {
180
+ "type": "string",
181
+ "required": false
182
+ },
183
+ "sambaPwdLastSet": {
184
+ "type": "number",
185
+ "required": false
186
+ },
187
+ "jpegPhoto": {
188
+ "type": "string",
189
+ "required": false
190
+ }
191
+ }
192
+ }