scimgateway 6.1.14 → 6.1.16

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
@@ -1301,9 +1301,20 @@ In code editor (e.g., Visual Studio Code), method details and documentation are
1301
1301
 
1302
1302
  MIT © [Jarle Elshaug](https://www.elshaug.xyz)
1303
1303
 
1304
+ ### v6.1.16
1305
+
1306
+ [Improved]
1307
+
1308
+ - plugin-entra-id: `GET /Entitlements` using derivedIncludes, fully flattened (recursive expansion of previous includes).
1304
1309
 
1305
1310
  ## Change log
1306
1311
 
1312
+ ### v6.1.15
1313
+
1314
+ [Fixed]
1315
+
1316
+ - plugin-entra-id: fixed `filter=entitlements pr`
1317
+
1307
1318
  ### v6.1.14
1308
1319
 
1309
1320
  [Improved]
@@ -1,22 +1,24 @@
1
1
  {
2
2
  "AAD_BASIC":{"displayName":"Azure Active Directory Basic","category":"Entra","licenseCategory":"Free","isBillable":false,"priceUSD":0,"includes":[]},
3
3
  "AAD_PREMIUM":{"displayName":"Microsoft Entra ID P1","category":"Entra","licenseCategory":"Paid","isBillable":true,"priceUSD":6,"includes":[]},
4
- "AAD_PREMIUM_P2":{"displayName":"Microsoft Entra ID P2","category":"Entra","licenseCategory":"Paid","isBillable":true,"priceUSD":9,"includes":["AAD_PREMIUM"]},
5
- "EMS":{"displayName":"Enterprise Mobility + Security E3","category":"Security","licenseCategory":"Paid","isBillable":true,"priceUSD":10,"includes":["AAD_PREMIUM","INTUNE_A","RMS_S_ENTERPRISE"]},
6
- "EMSPREMIUM":{"displayName":"Enterprise Mobility + Security E5","category":"Security","licenseCategory":"Paid","isBillable":true,"priceUSD":16,"includes":["AAD_PREMIUM_P2","INTUNE_A","IDENTITY_THREAT_PROTECTION","DEFENDER_CLOUD_APPS"]},
7
- "ENTERPRISEPACK":{"displayName":"Microsoft 365 E3","category":"Microsoft 365","licenseCategory":"Paid","isBillable":true,"priceUSD":36,"includes":["EXCHANGEENTERPRISE","SHAREPOINTENTERPRISE","MCOSTANDARD","ONEDRIVESTANDARD","INTUNE_A","AAD_PREMIUM"]},
8
- "ENTERPRISEPREMIUM":{"displayName":"Microsoft 365 E5","category":"Microsoft 365","licenseCategory":"Paid","isBillable":true,"priceUSD":57,"includes":["ENTERPRISEPACK","MDE_ADVANCED","DEFENDER_OFFICE_365","POWER_BI_PRO","IDENTITY_THREAT_PROTECTION","DEFENDER_CLOUD_APPS"]},
9
- "SPE_E3":{"displayName":"Microsoft 365 E3 (SPE)","category":"Microsoft 365","licenseCategory":"Paid","isBillable":true,"priceUSD":36,"includes":["EXCHANGEENTERPRISE","SHAREPOINTENTERPRISE","MCOSTANDARD","ONEDRIVESTANDARD","INTUNE_A","AAD_PREMIUM"]},
10
- "SPE_E5":{"displayName":"Microsoft 365 E5","category":"Microsoft 365","licenseCategory":"Paid","isBillable":true,"priceUSD":57,"includes":["SPE_E3","MDE_ADVANCED","DEFENDER_OFFICE_365","POWER_BI_PRO","IDENTITY_THREAT_PROTECTION"]},
11
- "M365_E3":{"displayName":"Microsoft 365 E3","category":"Microsoft 365","licenseCategory":"Paid","isBillable":true,"priceUSD":36,"includes":["EXCHANGEENTERPRISE","SHAREPOINTENTERPRISE","MCOSTANDARD","ONEDRIVESTANDARD","INTUNE_A","AAD_PREMIUM"]},
12
- "M365_E5":{"displayName":"Microsoft 365 E5","category":"Microsoft 365","licenseCategory":"Paid","isBillable":true,"priceUSD":57,"includes":["M365_E3","MDE_ADVANCED","DEFENDER_OFFICE_365","POWER_BI_PRO","IDENTITY_THREAT_PROTECTION","DEFENDER_CLOUD_APPS"]},
13
- "STANDARDPACK":{"displayName":"Office 365 E1","category":"Microsoft 365","licenseCategory":"Paid","isBillable":true,"priceUSD":8,"includes":["EXCHANGESTANDARD","SHAREPOINTSTANDARD","MCOSTANDARD","ONEDRIVESTANDARD"]},
14
- "STANDARDWOFFPACK":{"displayName":"Office 365 E2","category":"Microsoft 365","licenseCategory":"Paid","isBillable":true,"priceUSD":15,"includes":["EXCHANGESTANDARD","SHAREPOINTSTANDARD","MCOSTANDARD","ONEDRIVESTANDARD"]},
15
- "ENTERPRISEPACKLRG":{"displayName":"Office 365 E3","category":"Microsoft 365","licenseCategory":"Paid","isBillable":true,"priceUSD":23,"includes":["EXCHANGEENTERPRISE","SHAREPOINTENTERPRISE","MCOSTANDARD","ONEDRIVESTANDARD"]},
16
- "ENTERPRISEWITHSCAL":{"displayName":"Office 365 E4 (retired)","category":"Microsoft 365","licenseCategory":"Paid","isBillable":true,"priceUSD":30,"includes":["EXCHANGEENTERPRISE","SHAREPOINTENTERPRISE","MCOSTANDARD","ONEDRIVESTANDARD"]},
17
- "DESKLESSPACK":{"displayName":"Microsoft 365 F3","category":"Microsoft 365","licenseCategory":"Paid","isBillable":true,"priceUSD":8,"includes":["EXCHANGESTANDARD","SHAREPOINTSTANDARD","MCOSTANDARD","ONEDRIVESTANDARD"]},
18
- "Microsoft_Entra_Suite": { "displayName": "Microsoft Entra Suite", "category": "Entra", "licenseCategory": "Paid", "isBillable": true, "priceUSD": 9.00, "includes": ["AAD_PREMIUM_P1","AAD_PREMIUM_P2"] },
19
- "O365_w/o_Teams_Bundle_M5": { "displayName": "Office 365 without Teams Bundle M5", "category": "Microsoft 365", "licenseCategory": "Paid", "isBillable": true, "priceUSD": 28.00, "includes": ["ENTERPRISEPACK","EXCHANGESTANDARD","SHAREPOINTSTANDARD"] },
4
+ "AAD_PREMIUM_P2":{"displayName":"Microsoft Entra ID P2","category":"Entra","licenseCategory":"Paid","isBillable":true,"priceUSD":9,"includes":["AAD_PREMIUM"],"derivedIncludes":["AAD_PREMIUM"]},
5
+ "EMS":{"displayName":"Enterprise Mobility + Security E3","category":"Security","licenseCategory":"Paid","isBillable":true,"priceUSD":10,"includes":["AAD_PREMIUM","INTUNE_A","RMS_S_ENTERPRISE"],"derivedIncludes":["AAD_PREMIUM","INTUNE_A","RMS_S_ENTERPRISE"]},
6
+ "EMSPREMIUM":{"displayName":"Enterprise Mobility + Security E5","category":"Security","licenseCategory":"Paid","isBillable":true,"priceUSD":16,"includes":["AAD_PREMIUM_P2","INTUNE_A","IDENTITY_THREAT_PROTECTION","DEFENDER_CLOUD_APPS"],"derivedIncludes":["AAD_PREMIUM_P2","AAD_PREMIUM","INTUNE_A","IDENTITY_THREAT_PROTECTION","DEFENDER_CLOUD_APPS"]},
7
+ "ENTERPRISEPACK":{"displayName":"Microsoft 365 E3","category":"Microsoft 365","licenseCategory":"Paid","isBillable":true,"priceUSD":36,"includes":["EXCHANGEENTERPRISE","SHAREPOINTENTERPRISE","MCOSTANDARD","ONEDRIVESTANDARD","INTUNE_A","AAD_PREMIUM"],"derivedIncludes":["EXCHANGEENTERPRISE","SHAREPOINTENTERPRISE","MCOSTANDARD","ONEDRIVESTANDARD","INTUNE_A","AAD_PREMIUM"]},
8
+ "ENTERPRISEPREMIUM":{"displayName":"Microsoft 365 E5","category":"Microsoft 365","licenseCategory":"Paid","isBillable":true,"priceUSD":57,"includes":["ENTERPRISEPACK","MDE_ADVANCED","DEFENDER_OFFICE_365","POWER_BI_PRO","IDENTITY_THREAT_PROTECTION","DEFENDER_CLOUD_APPS","AAD_PREMIUM_P2"],"derivedIncludes":["ENTERPRISEPACK","EXCHANGEENTERPRISE","SHAREPOINTENTERPRISE","MCOSTANDARD","ONEDRIVESTANDARD","INTUNE_A","AAD_PREMIUM","AAD_PREMIUM_P2","MDE_ADVANCED","DEFENDER_OFFICE_365","POWER_BI_PRO","IDENTITY_THREAT_PROTECTION","DEFENDER_CLOUD_APPS"]},
9
+ "SPE_E3":{"displayName":"Microsoft 365 E3 (SPE)","category":"Microsoft 365","licenseCategory":"Paid","isBillable":true,"priceUSD":36,"includes":["EXCHANGEENTERPRISE","SHAREPOINTENTERPRISE","MCOSTANDARD","ONEDRIVESTANDARD","INTUNE_A","AAD_PREMIUM"],"derivedIncludes":["EXCHANGEENTERPRISE","SHAREPOINTENTERPRISE","MCOSTANDARD","ONEDRIVESTANDARD","INTUNE_A","AAD_PREMIUM"]},
10
+ "SPE_E5":{"displayName":"Microsoft 365 E5","category":"Microsoft 365","licenseCategory":"Paid","isBillable":true,"priceUSD":57,"includes":["SPE_E3","MDE_ADVANCED","DEFENDER_OFFICE_365","POWER_BI_PRO","IDENTITY_THREAT_PROTECTION"],"derivedIncludes":["EXCHANGEENTERPRISE","SHAREPOINTENTERPRISE","MCOSTANDARD","ONEDRIVESTANDARD","INTUNE_A","AAD_PREMIUM","MDE_ADVANCED","DEFENDER_OFFICE_365","POWER_BI_PRO","IDENTITY_THREAT_PROTECTION"]},
11
+ "M365_E3":{"displayName":"Microsoft 365 E3","category":"Microsoft 365","licenseCategory":"Paid","isBillable":true,"priceUSD":36,"includes":["EXCHANGEENTERPRISE","SHAREPOINTENTERPRISE","MCOSTANDARD","ONEDRIVESTANDARD","INTUNE_A","AAD_PREMIUM"],"derivedIncludes":["EXCHANGEENTERPRISE","SHAREPOINTENTERPRISE","MCOSTANDARD","ONEDRIVESTANDARD","INTUNE_A","AAD_PREMIUM"]},
12
+ "M365_E5":{"displayName":"Microsoft 365 E5","category":"Microsoft 365","licenseCategory":"Paid","isBillable":true,"priceUSD":57,"includes":["M365_E3","MDE_ADVANCED","DEFENDER_OFFICE_365","POWER_BI_PRO","IDENTITY_THREAT_PROTECTION","DEFENDER_CLOUD_APPS"],"derivedIncludes":["EXCHANGEENTERPRISE","SHAREPOINTENTERPRISE","MCOSTANDARD","ONEDRIVESTANDARD","INTUNE_A","AAD_PREMIUM","MDE_ADVANCED","DEFENDER_OFFICE_365","POWER_BI_PRO","IDENTITY_THREAT_PROTECTION","DEFENDER_CLOUD_APPS"]},
13
+ "STANDARDPACK":{"displayName":"Office 365 E1","category":"Microsoft 365","licenseCategory":"Paid","isBillable":true,"priceUSD":8,"includes":["EXCHANGESTANDARD","SHAREPOINTSTANDARD","MCOSTANDARD","ONEDRIVESTANDARD"],"derivedIncludes":["EXCHANGESTANDARD","SHAREPOINTSTANDARD","MCOSTANDARD","ONEDRIVESTANDARD"]},
14
+ "STANDARDWOFFPACK":{"displayName":"Office 365 E2","category":"Microsoft 365","licenseCategory":"Paid","isBillable":true,"priceUSD":15,"includes":["EXCHANGESTANDARD","SHAREPOINTSTANDARD","MCOSTANDARD","ONEDRIVESTANDARD"],"derivedIncludes":["EXCHANGESTANDARD","SHAREPOINTSTANDARD","MCOSTANDARD","ONEDRIVESTANDARD"]},
15
+ "ENTERPRISEPACKLRG":{"displayName":"Office 365 E3","category":"Microsoft 365","licenseCategory":"Paid","isBillable":true,"priceUSD":23,"includes":["EXCHANGEENTERPRISE","SHAREPOINTENTERPRISE","MCOSTANDARD","ONEDRIVESTANDARD"],"derivedIncludes":["EXCHANGEENTERPRISE","SHAREPOINTENTERPRISE","MCOSTANDARD","ONEDRIVESTANDARD"]},
16
+ "ENTERPRISEWITHSCAL":{"displayName":"Office 365 E4 (retired)","category":"Microsoft 365","licenseCategory":"Paid","isBillable":true,"priceUSD":30,"includes":["EXCHANGEENTERPRISE","SHAREPOINTENTERPRISE","MCOSTANDARD","ONEDRIVESTANDARD"],"derivedIncludes":["EXCHANGEENTERPRISE","SHAREPOINTENTERPRISE","MCOSTANDARD","ONEDRIVESTANDARD"]},
17
+ "DESKLESSPACK":{"displayName":"Microsoft 365 F3","category":"Microsoft 365","licenseCategory":"Paid","isBillable":true,"priceUSD":8,"includes":["EXCHANGESTANDARD","SHAREPOINTSTANDARD","MCOSTANDARD","ONEDRIVESTANDARD"],"derivedIncludes":["EXCHANGESTANDARD","SHAREPOINTSTANDARD","MCOSTANDARD","ONEDRIVESTANDARD"]},
18
+ "Microsoft_Entra_Suite":{"displayName":"Microsoft Entra Suite","category":"Entra","licenseCategory":"Paid","isBillable":true,"priceUSD":9,"includes":["AAD_PREMIUM_P2"],"derivedIncludes":["AAD_PREMIUM_P2","AAD_PREMIUM"]},
19
+ "O365_w/o_Teams_Bundle_M5":{"displayName":"Office 365 without Teams Bundle M5","category":"Microsoft 365","licenseCategory":"Paid","isBillable":true,"priceUSD":28,"includes":["ENTERPRISEPACK","EXCHANGESTANDARD","SHAREPOINTSTANDARD"],"derivedIncludes":["EXCHANGEENTERPRISE","SHAREPOINTENTERPRISE","MCOSTANDARD","ONEDRIVESTANDARD","INTUNE_A","AAD_PREMIUM","EXCHANGESTANDARD","SHAREPOINTSTANDARD"]},
20
+ "POWER_BI_PREMIUM_PER_USER":{"displayName":"Power BI Premium Per User","category":"Power Platform","licenseCategory":"Paid","isBillable":true,"priceUSD":20,"includes":["POWER_BI_PRO"],"derivedIncludes":["POWER_BI_PRO"]},
21
+ "RMS_S_PREMIUM":{"displayName":"Azure Information Protection Premium P2","category":"Security","licenseCategory":"Paid","isBillable":true,"priceUSD":9,"includes":["RMS_S_ENTERPRISE"],"derivedIncludes":["RMS_S_ENTERPRISE"]},
20
22
  "Microsoft_Teams_EEA_New": { "displayName": "Microsoft Teams EEA New", "category": "Collaboration", "licenseCategory": "Paid", "isBillable": true, "priceUSD": 4.00, "includes": [] },
21
23
  "POWERAPPS_DEV": { "displayName": "Power Apps Developer Plan", "category": "Power Platform", "licenseCategory": "Free", "isBillable": false, "priceUSD": 0.00, "includes": [] },
22
24
  "EXCHANGESTANDARD":{"displayName":"Exchange Online Plan 1","category":"Exchange","licenseCategory":"Paid","isBillable":true,"priceUSD":4,"includes":[]},
@@ -31,7 +33,6 @@
31
33
  "MCOPSTN2":{"displayName":"Microsoft Teams International Calling Plan","category":"Collaboration","licenseCategory":"Paid","isBillable":true,"priceUSD":12,"includes":[]},
32
34
  "POWER_BI_STANDARD":{"displayName":"Microsoft Fabric (Free)","category":"Power Platform","licenseCategory":"Free","isBillable":false,"priceUSD":0,"includes":[]},
33
35
  "POWER_BI_PRO":{"displayName":"Power BI Pro","category":"Power Platform","licenseCategory":"Paid","isBillable":true,"priceUSD":13,"includes":[]},
34
- "POWER_BI_PREMIUM_PER_USER":{"displayName":"Power BI Premium Per User","category":"Power Platform","licenseCategory":"Paid","isBillable":true,"priceUSD":20,"includes":["POWER_BI_PRO"]},
35
36
  "POWERAPPS_PER_USER":{"displayName":"Power Apps Per User","category":"Power Platform","licenseCategory":"Paid","isBillable":true,"priceUSD":10,"includes":[]},
36
37
  "POWERAPPS_PER_APP":{"displayName":"Power Apps Per App","category":"Power Platform","licenseCategory":"Paid","isBillable":true,"priceUSD":7,"includes":[]},
37
38
  "POWERAPPS_VIRAL":{"displayName":"Power Apps Trial","category":"Power Platform","licenseCategory":"Trial","isBillable":false,"priceUSD":0,"includes":[]},
@@ -64,7 +65,6 @@
64
65
  "WINDOWS_STORE":{"displayName":"Microsoft Store for Business","category":"Windows","licenseCategory":"Free","isBillable":false,"priceUSD":0,"includes":[]},
65
66
  "WIN_DEF_ATP":{"displayName":"Windows Defender ATP","category":"Security","licenseCategory":"Paid","isBillable":true,"priceUSD":5,"includes":[]},
66
67
  "RMS_S_ENTERPRISE":{"displayName":"Azure Information Protection Premium P1","category":"Security","licenseCategory":"Paid","isBillable":true,"priceUSD":6,"includes":[]},
67
- "RMS_S_PREMIUM":{"displayName":"Azure Information Protection Premium P2","category":"Security","licenseCategory":"Paid","isBillable":true,"priceUSD":9,"includes":["RMS_S_ENTERPRISE"]},
68
68
  "INTUNE_A":{"displayName":"Microsoft Intune","category":"Device Management","licenseCategory":"Paid","isBillable":true,"priceUSD":8,"includes":[]},
69
69
  "INTUNE_SMB":{"displayName":"Microsoft Intune for SMB","category":"Device Management","licenseCategory":"Paid","isBillable":true,"priceUSD":5,"includes":[]},
70
70
  "STREAM":{"displayName":"Microsoft Stream","category":"Collaboration","licenseCategory":"Paid","isBillable":true,"priceUSD":0,"includes":[]},
@@ -177,7 +177,8 @@ scimgateway.getUsers = async (baseEntity, getObj, attributes, ctx) => {
177
177
  // optional - only used when groups are member of users, not default behavior - correspond to getGroupUsers() in versions < 4.x.x
178
178
  throw new Error(`${action} error: not supporting groups member of user filtering: ${getObj.rawFilter}`)
179
179
  } else if (getObj.operator === 'pr' && getObj.attribute === 'entitlements') { // pr - presence of (only return objects having getObj.attribute)
180
- path = `/users?$top=${getObj.count}&$count=true&filter=assignedLicenses/$count ne 0& &$select=${selectAttributes.join(',')}`
180
+ path = `/users?$top=${getObj.count}&$count=true&$filter=assignedLicenses/$count ne 0&$select=${selectAttributes.join(',')}`
181
+ isExpandManager = false
181
182
  } else {
182
183
  // optional - simpel filtering
183
184
  if (getObj.attribute) {
@@ -844,7 +845,7 @@ scimgateway.getEntitlements = async (baseEntity, getObj, attributes, ctx) => {
844
845
  licenseInfo.licenseCategory = licenseMapping[skuPartNumber].licenseCategory
845
846
  licenseInfo.isBillable = licenseMapping[skuPartNumber].isBillable
846
847
  licenseInfo.priceUSD = licenseMapping[skuPartNumber].priceUSD
847
- licenseInfo.includes = licenseMapping[skuPartNumber].includes
848
+ licenseInfo.derivedIncludes = licenseMapping[skuPartNumber].derivedIncludes
848
849
  }
849
850
  ret.Resources.push({
850
851
  type: skuPartNumber, value: response.body.value[i].skuId, display: displayName, licenseInfo })
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "scimgateway",
3
- "version": "6.1.14",
3
+ "version": "6.1.16",
4
4
  "type": "module",
5
5
  "description": "Using SCIM protocol as a gateway for user provisioning to other endpoints",
6
6
  "author": "Jarle Elshaug <jarle.elshaug@gmail.com> (https://elshaug.xyz)",