Adds employee ID to user data #2896
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The issue was this:
In Entra ID, bind the employeeId so it's returned in the token.
During authentication, the get_userinfo($username) function retrieves the token and extracts several pieces of information, but not the employeeId.
The apply_configured_fieldmap_from_token(array $userdata, string $eventtype) function receives these partial user data, and since employeeId is missing from $userdata, it cannot be updated.
My patch does the following:
Map employee_id from token claims when not set. Enables binding employee_id to user data based on auth_oidc_field_mapping configuration.
By adding employeeId handling to the get_userinfo($username) function, the idnumber field now updates correctly during user login, in accordance with the administrator's configuration.