scimgateway 4.4.2 → 4.4.3

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/README.md CHANGED
@@ -339,14 +339,14 @@ Definitions in `endpoint` object are customized according to our plugin code. Pl
339
339
 
340
340
  - **port** - Gateway will listen on this port number. Clients (e.g. Provisioning Server) will be using this port number for communicating with the gateway.
341
341
 
342
- - **localhostonly** - true or false. False means gateway accepts incoming requests from all clients. True means traffic from only localhost (127.0.0.1) is accepted (gateway must then be installed on the CA Connector Server).
342
+ - **localhostonly** - true or false. False means gateway accepts incoming requests from all clients. True means traffic from only localhost (127.0.0.1) is accepted.
343
343
 
344
344
  - **payloadSize** - if not defined, default "1mb" will be used. There are cases which large groups could exceed default size and you may want to increase by setting your own size
345
345
 
346
- - **scim.version** - "1.1" or "2.0". Default is "2.0". For Symantec/Broadcom/CA Identity Manager "1.1" should be used.
346
+ - **scim.version** - "1.1" or "2.0". Default is "2.0".
347
347
 
348
348
  - **scim.customSchema** - filename of JSON file located in `<package-root>\config\schemas` containing custom schema attributes, see configuration notes
349
- **additional information**: Schemas, ServiceProviderConfig and ResourceType can be customized if `lib/scimdef-v2.js (or scimdef-v1.js)` exists. Original scimdef-v2.js/scimdef-v1.js can be copied from node_modules/scimgateway/lib to your plugin/lib and customized.
349
+ **Note, scim.customSchema is obsolete, instead use:**: Schemas, ServiceProviderConfig and ResourceType can be customized if `lib/scimdef-v2.js (or scimdef-v1.js)` exists. Original scimdef-v2.js/scimdef-v1.js can be copied from node_modules/scimgateway/lib to your plugin/lib and customized.
350
350
 
351
351
  - **scim.skipTypeConvert** - true or false, default false. Multivalue attributes supporting types e.g. emails, phoneNumbers, ims, photos, addresses, entitlements and x509Certificates (but not roles, groups and members) will be become "type converted objects" when sent to modifyUser and createUser. This for simplicity of checking attributes included and also for the endpointMapper method (used by plugin-ldap and plugin-entra-id), e.g.:
352
352
 
@@ -406,7 +406,7 @@ Definitions in `endpoint` object are customized according to our plugin code. Pl
406
406
 
407
407
  `<FQDN>` is Fully Qualified Domain Name of the host having SCIM Gateway installed
408
408
 
409
- Note, when using Broadcom/CA Provisioning, the "certificate authority - CA" also have to be imported on the Connector Server. For self-signed certificate CA and the certificate (public key) is the same.
409
+ Note, when using Symantec/Broadcom/CA Provisioning, the "certificate authority - CA" also have to be imported on the Connector Server. For self-signed certificate CA and the certificate (public key) is the same.
410
410
 
411
411
  PFX / PKCS#12 bundle can be used instead of key/cert/ca e.g:
412
412
 
@@ -498,62 +498,7 @@ Definitions in `endpoint` object are customized according to our plugin code. Pl
498
498
  "plugin-soap.endpoint.password": "secret"
499
499
  }
500
500
 
501
- - Custom schema attributes can be added by plugin configuration `scim.customSchema` having value set to filename of a JSON schema-file located in `<package-root>/config/schemas` e.g:
502
-
503
- "scim": {
504
- "version": "2.0",
505
- "customSchema": "plugin-soap-schema.json"
506
- },
507
-
508
- JSON file have following syntax:
509
-
510
- [
511
- {
512
- "name": "User",
513
- "attributes": [...]
514
- },
515
- {
516
- "name": "Group",
517
- "attributes": [...]
518
- }
519
- ]
520
-
521
- Where array `attributes` contains custom attribute objects according to SCIM 1.1 or 2.0 spesification e.g:
522
-
523
- "attributes": [
524
- {
525
- "name": "musicPreference",
526
- "type": "string",
527
- "multiValued": false,
528
- "description": "Music Preferences",
529
- "readOnly": false,
530
- "required": false,
531
- "caseExact": false
532
- },
533
- {
534
- "name": "populations",
535
- "type": "complex",
536
- "multiValued": true,
537
- "multiValuedAttributeChildName": "population",
538
- "description": "Population array",
539
- "readOnly": false,
540
- "required": false,
541
- "caseExact": false,
542
- "subAttributes": [
543
- {
544
- "name": "value",
545
- "type": "string",
546
- "multiValued": false,
547
- "description": "Population value",
548
- "readOnly": false,
549
- "required": true,
550
- "caseExact": false
551
- }
552
- ]
553
- }
554
- ]
555
-
556
- Note, custom schema attributes will be merged into core:1.0/2.0 schema, and names must not conflict with standard SCIM attribute names.
501
+ - Custom Schemas, ServiceProviderConfig and ResourceType will be used if `lib/scimdef-v2.js or scimdef-v1.js` exists. Original scimdef-v2.js/scimdef-v1.js can be copied from node_modules/scimgateway/lib to your plugin/lib and customized.
557
502
 
558
503
 
559
504
  ## Manual startup
@@ -745,7 +690,7 @@ Some notes related to Entra ID:
745
690
 
746
691
  ## CA Identity Manager as IdP using SCIM Gateway
747
692
 
748
- Using Symantec/Broadcom/CA Identity Manger, plugin configuration file must include **SCIM Version "1.1"** (scimgateway.scim.version).
693
+ Using Symantec/Broadcom/CA Identity Manger, plugin configuration might have to use **SCIM Version "1.1"** (scimgateway.scim.version).
749
694
 
750
695
  In the Provisioning Manager we have to use
751
696
 
@@ -1199,6 +1144,12 @@ MIT © [Jarle Elshaug](https://www.elshaug.xyz)
1199
1144
 
1200
1145
  ## Change log
1201
1146
 
1147
+ ### v4.4.3
1148
+
1149
+ [Added]
1150
+
1151
+ - Dependencies bump
1152
+
1202
1153
  ### v4.4.2
1203
1154
 
1204
1155
  [Added]
@@ -36,7 +36,8 @@ const ScimGateway = function () {
36
36
  const startTime = utils.timestamp()
37
37
  const stack = callsite()
38
38
  const requester = stack[1].getFileName()
39
- const pluginName = path.basename(requester, '.js')
39
+ let pluginName = path.basename(requester)
40
+ pluginName = pluginName.substring(0, pluginName.lastIndexOf('.')) || pluginName
40
41
  const pluginDir = path.dirname(requester)
41
42
  const configDir = path.join(pluginDir, '..', 'config')
42
43
  const configFile = path.join(`${configDir}`, `${pluginName}.json`) // config name prefix same as pluging name prefix
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "scimgateway",
3
- "version": "4.4.2",
3
+ "version": "4.4.3",
4
4
  "description": "Using SCIM protocol as a gateway for user provisioning to other endpoints",
5
5
  "author": "Jarle Elshaug <jarle.elshaug@gmail.com> (https://elshaug.xyz)",
6
6
  "homepage": "https://elshaug.xyz",
@@ -43,9 +43,9 @@
43
43
  "ldapjs": "^3.0.7",
44
44
  "lokijs": "^1.5.12",
45
45
  "mongodb": "^6.3.0",
46
- "nats": "^2.18.0",
46
+ "nats": "^2.19.0",
47
47
  "node-machine-id": "1.1.9",
48
- "nodemailer": "^6.9.8",
48
+ "nodemailer": "^6.9.9",
49
49
  "passport": "^0.7.0",
50
50
  "passport-azure-ad": "^4.3.5",
51
51
  "tedious": "^16.6.1",