scimgateway 6.1.12 → 6.1.13
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 +7 -0
- package/lib/plugin-entra-id.ts +5 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1304,6 +1304,13 @@ MIT © [Jarle Elshaug](https://www.elshaug.xyz)
|
|
|
1304
1304
|
|
|
1305
1305
|
## Change log
|
|
1306
1306
|
|
|
1307
|
+
### v6.1.13
|
|
1308
|
+
|
|
1309
|
+
[Improved]
|
|
1310
|
+
|
|
1311
|
+
- plugin-entra-id: `signInActivity` attributes are filterable
|
|
1312
|
+
|
|
1313
|
+
|
|
1307
1314
|
### v6.1.12
|
|
1308
1315
|
|
|
1309
1316
|
[Improved]
|
package/lib/plugin-entra-id.ts
CHANGED
|
@@ -181,9 +181,13 @@ scimgateway.getUsers = async (baseEntity, getObj, attributes, ctx) => {
|
|
|
181
181
|
} else {
|
|
182
182
|
// optional - simpel filtering
|
|
183
183
|
if (getObj.attribute) {
|
|
184
|
-
|
|
184
|
+
let [endpointAttr] = scimgateway.endpointMapper('outbound', getObj.attribute, config.map.user)
|
|
185
185
|
if (!endpointAttr) throw new Error(`${action} filter error: not supporting ${getObj.rawFilter} because there are no map.user configuration of SCIM attribute '${getObj.attribute}'`)
|
|
186
186
|
if (!operatorMap[getObj.operator]) throw new Error(`${action} error: operator '${getObj.operator}' is not supported in filter: ${getObj.rawFilter}`)
|
|
187
|
+
const eArr = endpointAttr.split('.')
|
|
188
|
+
if (eArr[0] == 'signInActivity' && eArr.length === 2) {
|
|
189
|
+
endpointAttr = eArr.join('/') // signInActivity/lastSuccessfulSignInDateTime - filter=signInActivity.lastSuccessfulSignInDateTime lt "2025-12-04T00:00:00Z"
|
|
190
|
+
}
|
|
187
191
|
let odataFilter = operatorMap[getObj.operator](endpointAttr, getObj.value)
|
|
188
192
|
if (!odataFilter) {
|
|
189
193
|
const [supported] = scimgateway.endpointMapper('inbound', 'displayName,userPrincipalName,mail,proxyAddresses', config.map.user)
|
package/package.json
CHANGED