@backstage/plugin-catalog-backend-module-ldap 0.6.2-next.0 → 0.7.0-next.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,25 @@
1
1
  # @backstage/plugin-catalog-backend-module-ldap
2
2
 
3
+ ## 0.7.0-next.1
4
+
5
+ ### Minor Changes
6
+
7
+ - cb32ca7: **BREAKING**: `readLdapOrg` and the `LdapProviderConfig` type now always accept arrays of user and group configs, not just single items.
8
+
9
+ Added support for single ldap catalog provider to provide list and undefined user and group bindings next to standard single one.
10
+
11
+ ### Patch Changes
12
+
13
+ - Updated dependencies
14
+ - @backstage/backend-plugin-api@0.6.22-next.1
15
+ - @backstage/backend-tasks@0.5.27-next.1
16
+ - @backstage/catalog-model@1.5.0
17
+ - @backstage/config@1.2.0
18
+ - @backstage/errors@1.2.4
19
+ - @backstage/types@1.1.1
20
+ - @backstage/plugin-catalog-common@1.0.24
21
+ - @backstage/plugin-catalog-node@1.12.4-next.1
22
+
3
23
  ## 0.6.2-next.0
4
24
 
5
25
  ### Patch Changes
package/config.d.ts CHANGED
@@ -63,180 +63,352 @@ export interface Config {
63
63
  /**
64
64
  * The settings that govern the reading and interpretation of users.
65
65
  */
66
- users: {
67
- /**
68
- * The DN under which users are stored.
69
- *
70
- * E.g. "ou=people,ou=example,dc=example,dc=net"
71
- */
72
- dn: string;
73
- /**
74
- * The search options to use. The default is scope "one" and
75
- * attributes "*" and "+".
76
- *
77
- * It is common to want to specify a filter, to narrow down the set
78
- * of matching items.
79
- */
80
- options: {
81
- scope?: 'base' | 'one' | 'sub';
82
- filter?: string;
83
- attributes?: string | string[];
84
- sizeLimit?: number;
85
- timeLimit?: number;
86
- derefAliases?: number;
87
- typesOnly?: boolean;
88
- paged?:
89
- | boolean
90
- | {
91
- pageSize?: number;
92
- pagePause?: boolean;
93
- };
94
- };
95
- /**
96
- * JSON paths (on a.b.c form) and hard coded values to set on those
97
- * paths.
98
- *
99
- * This can be useful for example if you want to hard code a
100
- * namespace or similar on the generated entities.
101
- */
102
- set?: { [key: string]: JsonValue };
103
- /**
104
- * Mappings from well known entity fields, to LDAP attribute names
105
- */
106
- map?: {
107
- /**
108
- * The name of the attribute that holds the relative
109
- * distinguished name of each entry. Defaults to "uid".
110
- */
111
- rdn?: string;
112
- /**
113
- * The name of the attribute that shall be used for the value of
114
- * the metadata.name field of the entity. Defaults to "uid".
115
- */
116
- name?: string;
117
- /**
118
- * The name of the attribute that shall be used for the value of
119
- * the metadata.description field of the entity.
120
- */
121
- description?: string;
122
- /**
123
- * The name of the attribute that shall be used for the value of
124
- * the spec.profile.displayName field of the entity. Defaults to
125
- * "cn".
126
- */
127
- displayName?: string;
128
- /**
129
- * The name of the attribute that shall be used for the value of
130
- * the spec.profile.email field of the entity. Defaults to
131
- * "mail".
132
- */
133
- email?: string;
134
- /**
135
- * The name of the attribute that shall be used for the value of
136
- * the spec.profile.picture field of the entity.
137
- */
138
- picture?: string;
139
- /**
140
- * The name of the attribute that shall be used for the values of
141
- * the spec.memberOf field of the entity. Defaults to "memberOf".
142
- */
143
- memberOf?: string;
144
- };
145
- };
66
+ users?:
67
+ | {
68
+ /**
69
+ * The DN under which users are stored.
70
+ *
71
+ * E.g. "ou=people,ou=example,dc=example,dc=net"
72
+ */
73
+ dn: string;
74
+ /**
75
+ * The search options to use. The default is scope "one" and
76
+ * attributes "*" and "+".
77
+ *
78
+ * It is common to want to specify a filter, to narrow down the set
79
+ * of matching items.
80
+ */
81
+ options: {
82
+ scope?: 'base' | 'one' | 'sub';
83
+ filter?: string;
84
+ attributes?: string | string[];
85
+ sizeLimit?: number;
86
+ timeLimit?: number;
87
+ derefAliases?: number;
88
+ typesOnly?: boolean;
89
+ paged?:
90
+ | boolean
91
+ | {
92
+ pageSize?: number;
93
+ pagePause?: boolean;
94
+ };
95
+ };
96
+ /**
97
+ * JSON paths (on a.b.c form) and hard coded values to set on those
98
+ * paths.
99
+ *
100
+ * This can be useful for example if you want to hard code a
101
+ * namespace or similar on the generated entities.
102
+ */
103
+ set?: { [key: string]: JsonValue };
104
+ /**
105
+ * Mappings from well known entity fields, to LDAP attribute names
106
+ */
107
+ map?: {
108
+ /**
109
+ * The name of the attribute that holds the relative
110
+ * distinguished name of each entry. Defaults to "uid".
111
+ */
112
+ rdn?: string;
113
+ /**
114
+ * The name of the attribute that shall be used for the value of
115
+ * the metadata.name field of the entity. Defaults to "uid".
116
+ */
117
+ name?: string;
118
+ /**
119
+ * The name of the attribute that shall be used for the value of
120
+ * the metadata.description field of the entity.
121
+ */
122
+ description?: string;
123
+ /**
124
+ * The name of the attribute that shall be used for the value of
125
+ * the spec.profile.displayName field of the entity. Defaults to
126
+ * "cn".
127
+ */
128
+ displayName?: string;
129
+ /**
130
+ * The name of the attribute that shall be used for the value of
131
+ * the spec.profile.email field of the entity. Defaults to
132
+ * "mail".
133
+ */
134
+ email?: string;
135
+ /**
136
+ * The name of the attribute that shall be used for the value of
137
+ * the spec.profile.picture field of the entity.
138
+ */
139
+ picture?: string;
140
+ /**
141
+ * The name of the attribute that shall be used for the values of
142
+ * the spec.memberOf field of the entity. Defaults to "memberOf".
143
+ */
144
+ memberOf?: string;
145
+ };
146
+ }
147
+ | Array<{
148
+ /**
149
+ * The DN under which users are stored.
150
+ *
151
+ * E.g. "ou=people,ou=example,dc=example,dc=net"
152
+ */
153
+ dn: string;
154
+ /**
155
+ * The search options to use. The default is scope "one" and
156
+ * attributes "*" and "+".
157
+ *
158
+ * It is common to want to specify a filter, to narrow down the set
159
+ * of matching items.
160
+ */
161
+ options: {
162
+ scope?: 'base' | 'one' | 'sub';
163
+ filter?: string;
164
+ attributes?: string | string[];
165
+ sizeLimit?: number;
166
+ timeLimit?: number;
167
+ derefAliases?: number;
168
+ typesOnly?: boolean;
169
+ paged?:
170
+ | boolean
171
+ | {
172
+ pageSize?: number;
173
+ pagePause?: boolean;
174
+ };
175
+ };
176
+ /**
177
+ * JSON paths (on a.b.c form) and hard coded values to set on those
178
+ * paths.
179
+ *
180
+ * This can be useful for example if you want to hard code a
181
+ * namespace or similar on the generated entities.
182
+ */
183
+ set?: { [key: string]: JsonValue };
184
+ /**
185
+ * Mappings from well known entity fields, to LDAP attribute names
186
+ */
187
+ map?: {
188
+ /**
189
+ * The name of the attribute that holds the relative
190
+ * distinguished name of each entry. Defaults to "uid".
191
+ */
192
+ rdn?: string;
193
+ /**
194
+ * The name of the attribute that shall be used for the value of
195
+ * the metadata.name field of the entity. Defaults to "uid".
196
+ */
197
+ name?: string;
198
+ /**
199
+ * The name of the attribute that shall be used for the value of
200
+ * the metadata.description field of the entity.
201
+ */
202
+ description?: string;
203
+ /**
204
+ * The name of the attribute that shall be used for the value of
205
+ * the spec.profile.displayName field of the entity. Defaults to
206
+ * "cn".
207
+ */
208
+ displayName?: string;
209
+ /**
210
+ * The name of the attribute that shall be used for the value of
211
+ * the spec.profile.email field of the entity. Defaults to
212
+ * "mail".
213
+ */
214
+ email?: string;
215
+ /**
216
+ * The name of the attribute that shall be used for the value of
217
+ * the spec.profile.picture field of the entity.
218
+ */
219
+ picture?: string;
220
+ /**
221
+ * The name of the attribute that shall be used for the values of
222
+ * the spec.memberOf field of the entity. Defaults to "memberOf".
223
+ */
224
+ memberOf?: string;
225
+ };
226
+ }>;
146
227
 
147
228
  /**
148
229
  * The settings that govern the reading and interpretation of groups.
149
230
  */
150
- groups: {
151
- /**
152
- * The DN under which groups are stored.
153
- *
154
- * E.g. "ou=people,ou=example,dc=example,dc=net"
155
- */
156
- dn: string;
157
- /**
158
- * The search options to use. The default is scope "one" and
159
- * attributes "*" and "+".
160
- *
161
- * It is common to want to specify a filter, to narrow down the set
162
- * of matching items.
163
- */
164
- options: {
165
- scope?: 'base' | 'one' | 'sub';
166
- filter?: string;
167
- attributes?: string | string[];
168
- sizeLimit?: number;
169
- timeLimit?: number;
170
- derefAliases?: number;
171
- typesOnly?: boolean;
172
- paged?:
173
- | boolean
174
- | {
175
- pageSize?: number;
176
- pagePause?: boolean;
177
- };
178
- };
179
- /**
180
- * JSON paths (on a.b.c form) and hard coded values to set on those
181
- * paths.
182
- *
183
- * This can be useful for example if you want to hard code a
184
- * namespace or similar on the generated entities.
185
- */
186
- set?: { [key: string]: JsonValue };
187
- /**
188
- * Mappings from well known entity fields, to LDAP attribute names
189
- */
190
- map?: {
191
- /**
192
- * The name of the attribute that holds the relative
193
- * distinguished name of each entry. Defaults to "cn".
194
- */
195
- rdn?: string;
196
- /**
197
- * The name of the attribute that shall be used for the value of
198
- * the metadata.name field of the entity. Defaults to "cn".
199
- */
200
- name?: string;
201
- /**
202
- * The name of the attribute that shall be used for the value of
203
- * the metadata.description field of the entity. Defaults to
204
- * "description".
205
- */
206
- description?: string;
207
- /**
208
- * The name of the attribute that shall be used for the value of
209
- * the spec.type field of the entity. Defaults to "groupType".
210
- */
211
- type?: string;
212
- /**
213
- * The name of the attribute that shall be used for the value of
214
- * the spec.profile.displayName field of the entity. Defaults to
215
- * "cn".
216
- */
217
- displayName?: string;
218
- /**
219
- * The name of the attribute that shall be used for the value of
220
- * the spec.profile.email field of the entity.
221
- */
222
- email?: string;
223
- /**
224
- * The name of the attribute that shall be used for the value of
225
- * the spec.profile.picture field of the entity.
226
- */
227
- picture?: string;
228
- /**
229
- * The name of the attribute that shall be used for the values of
230
- * the spec.parent field of the entity. Defaults to "memberOf".
231
- */
232
- memberOf?: string;
233
- /**
234
- * The name of the attribute that shall be used for the values of
235
- * the spec.children field of the entity. Defaults to "member".
236
- */
237
- members?: string;
238
- };
239
- };
231
+ groups?:
232
+ | {
233
+ /**
234
+ * The DN under which groups are stored.
235
+ *
236
+ * E.g. "ou=people,ou=example,dc=example,dc=net"
237
+ */
238
+ dn: string;
239
+ /**
240
+ * The search options to use. The default is scope "one" and
241
+ * attributes "*" and "+".
242
+ *
243
+ * It is common to want to specify a filter, to narrow down the set
244
+ * of matching items.
245
+ */
246
+ options: {
247
+ scope?: 'base' | 'one' | 'sub';
248
+ filter?: string;
249
+ attributes?: string | string[];
250
+ sizeLimit?: number;
251
+ timeLimit?: number;
252
+ derefAliases?: number;
253
+ typesOnly?: boolean;
254
+ paged?:
255
+ | boolean
256
+ | {
257
+ pageSize?: number;
258
+ pagePause?: boolean;
259
+ };
260
+ };
261
+ /**
262
+ * JSON paths (on a.b.c form) and hard coded values to set on those
263
+ * paths.
264
+ *
265
+ * This can be useful for example if you want to hard code a
266
+ * namespace or similar on the generated entities.
267
+ */
268
+ set?: { [key: string]: JsonValue };
269
+ /**
270
+ * Mappings from well known entity fields, to LDAP attribute names
271
+ */
272
+ map?: {
273
+ /**
274
+ * The name of the attribute that holds the relative
275
+ * distinguished name of each entry. Defaults to "cn".
276
+ */
277
+ rdn?: string;
278
+ /**
279
+ * The name of the attribute that shall be used for the value of
280
+ * the metadata.name field of the entity. Defaults to "cn".
281
+ */
282
+ name?: string;
283
+ /**
284
+ * The name of the attribute that shall be used for the value of
285
+ * the metadata.description field of the entity. Defaults to
286
+ * "description".
287
+ */
288
+ description?: string;
289
+ /**
290
+ * The name of the attribute that shall be used for the value of
291
+ * the spec.type field of the entity. Defaults to "groupType".
292
+ */
293
+ type?: string;
294
+ /**
295
+ * The name of the attribute that shall be used for the value of
296
+ * the spec.profile.displayName field of the entity. Defaults to
297
+ * "cn".
298
+ */
299
+ displayName?: string;
300
+ /**
301
+ * The name of the attribute that shall be used for the value of
302
+ * the spec.profile.email field of the entity.
303
+ */
304
+ email?: string;
305
+ /**
306
+ * The name of the attribute that shall be used for the value of
307
+ * the spec.profile.picture field of the entity.
308
+ */
309
+ picture?: string;
310
+ /**
311
+ * The name of the attribute that shall be used for the values of
312
+ * the spec.parent field of the entity. Defaults to "memberOf".
313
+ */
314
+ memberOf?: string;
315
+ /**
316
+ * The name of the attribute that shall be used for the values of
317
+ * the spec.children field of the entity. Defaults to "member".
318
+ */
319
+ members?: string;
320
+ };
321
+ }
322
+ | Array<{
323
+ /**
324
+ * The DN under which groups are stored.
325
+ *
326
+ * E.g. "ou=people,ou=example,dc=example,dc=net"
327
+ */
328
+ dn: string;
329
+ /**
330
+ * The search options to use. The default is scope "one" and
331
+ * attributes "*" and "+".
332
+ *
333
+ * It is common to want to specify a filter, to narrow down the set
334
+ * of matching items.
335
+ */
336
+ options: {
337
+ scope?: 'base' | 'one' | 'sub';
338
+ filter?: string;
339
+ attributes?: string | string[];
340
+ sizeLimit?: number;
341
+ timeLimit?: number;
342
+ derefAliases?: number;
343
+ typesOnly?: boolean;
344
+ paged?:
345
+ | boolean
346
+ | {
347
+ pageSize?: number;
348
+ pagePause?: boolean;
349
+ };
350
+ };
351
+ /**
352
+ * JSON paths (on a.b.c form) and hard coded values to set on those
353
+ * paths.
354
+ *
355
+ * This can be useful for example if you want to hard code a
356
+ * namespace or similar on the generated entities.
357
+ */
358
+ set?: { [key: string]: JsonValue };
359
+ /**
360
+ * Mappings from well known entity fields, to LDAP attribute names
361
+ */
362
+ map?: {
363
+ /**
364
+ * The name of the attribute that holds the relative
365
+ * distinguished name of each entry. Defaults to "cn".
366
+ */
367
+ rdn?: string;
368
+ /**
369
+ * The name of the attribute that shall be used for the value of
370
+ * the metadata.name field of the entity. Defaults to "cn".
371
+ */
372
+ name?: string;
373
+ /**
374
+ * The name of the attribute that shall be used for the value of
375
+ * the metadata.description field of the entity. Defaults to
376
+ * "description".
377
+ */
378
+ description?: string;
379
+ /**
380
+ * The name of the attribute that shall be used for the value of
381
+ * the spec.type field of the entity. Defaults to "groupType".
382
+ */
383
+ type?: string;
384
+ /**
385
+ * The name of the attribute that shall be used for the value of
386
+ * the spec.profile.displayName field of the entity. Defaults to
387
+ * "cn".
388
+ */
389
+ displayName?: string;
390
+ /**
391
+ * The name of the attribute that shall be used for the value of
392
+ * the spec.profile.email field of the entity.
393
+ */
394
+ email?: string;
395
+ /**
396
+ * The name of the attribute that shall be used for the value of
397
+ * the spec.profile.picture field of the entity.
398
+ */
399
+ picture?: string;
400
+ /**
401
+ * The name of the attribute that shall be used for the values of
402
+ * the spec.parent field of the entity. Defaults to "memberOf".
403
+ */
404
+ memberOf?: string;
405
+ /**
406
+ * The name of the attribute that shall be used for the values of
407
+ * the spec.children field of the entity. Defaults to "member".
408
+ */
409
+ members?: string;
410
+ };
411
+ }>;
240
412
  }>;
241
413
  };
242
414