metadata field. attributesHistory. This object tracks every attribute received from SCIM, whether or not it is currently mapped to metadata. attributesHistory object contains all SCIM attributes in the following structure:
type IProviderSCIMAttributesHistory = {
namespace: string
key: string
}
This object is populated automatically with all attributes provided in SCIM requests. Its purpose is to serve as a complete record of any field that can potentially be mapped.
To map SCIM fields into the user’s metadata, you can define a custom mapping through the mappedAttributes property in the SCIM configuration model.
type IProviderSCIMCustomAttributes = {
name: string
attributes?: {
namespace?: string
key: string
}[]
}
Each mapping entry supports the following fields:
When resolving which SCIM value to map into metadata, Applivery follows these rules:
metadata:
mappedAttributes entry.
{
"schemas": [
"urn:ietf:params:scim:schemas:core:2.0:User",
"urn:company:params:scim:schemas:extension:custom:2.0:User"
],
"urn:ietf:params:scim:schemas:core:2.0:User": {
"userName": "jane.smith"
},
"urn:company:params:scim:schemas:extension:custom:2.0:User": {
"employeeId": "EMP-4567",
"department": "Engineering"
}
}
const mappedAttributes = [
{
name: "department",
attributes: [
{
namespace: "urn:company:params:scim:schemas:extension:custom:2.0:User",
key: "department"
}
]
},
{
name: "employeeCode",
attributes: [
{
namespace: "urn:company:params:scim:schemas:extension:custom:2.0:User",
key: "employeeId"
}
]
}
]
{
"metadata": {
"department": "Engineering",
"employeeCode": "EMP-4567"
}
}
Go to your Workspace > Settings (1) and open the Login providers (2) section. Then click Configure (3) next to the SAML option under the MDM Portal section.
Scroll down to Step 3 and enter the appropriate namespace. You can determine the correct namespace based on the attribute type (Core, Enterprise, or Custom) and its value.
To save your changes, simply click Save. Once your IdP performs its next scheduled sync, the mapped attributes on both sides will begin populating each user’s metadata in Applivery.
To summarize:
mappedAttributes.namespace helps disambiguate attributes when multiple schemas are involved.attributesHistory for future reference.