Bug 56028 - Removal of attributes does not get synced to Azure
Removal of attributes does not get synced to Azure
Status: NEW
Product: UCS
Classification: Unclassified
Component: Office 365
UCS 5.0
Other Linux
: P5 normal (vote)
: ---
Assigned To: Mail maintainers
Mail maintainers
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2023-05-02 16:22 CEST by Johannes Lohmer
Modified: 2023-05-30 09:38 CEST (History)
1 user (show)

See Also:
What kind of report is it?: Bug Report
What type of bug is this?: 3: Simply Wrong: The implementation doesn't match the docu
Who will be affected by this bug?: 2: Will only affect a few installed domains
How will those affected feel about the bug?: 2: A Pain – users won’t like this once they notice it
User Pain: 0.069
Enterprise Customer affected?:
School Customer affected?:
ISV affected?:
Waiting Support:
Flags outvoted (downgraded) after PO Review:
Ticket number:
Bug group (optional):
Max CVSS v3 score:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Johannes Lohmer univentionstaff 2023-05-02 16:22:40 CEST
While debugging #55984 https://forge.univention.org/bugzilla/show_bug.cgi?id=55984 I noticed that once I set a value like `mobilePhone`, `buisnessPhone` or many other  non-essential values, the values don't get removed from the azure user.

Azure supports setting values back to null, but it is not implemented in our connector.

Before motifying(or deactivating) a user We filter out all none values and thus will never reset them back to empty.

azureobjects.py:
401 │   def update(self, other):
402 │   │   # type: ('AzureObject') -> Dict[str, Any]
403 │   │   """"""
404 │   │   data = (self - other).get_not_none_values_as_dict()

`data` will be the MSGraph update request payload later in the code.
Comment 1 Johannes Lohmer univentionstaff 2023-05-30 09:38:23 CEST
The test: 92_office365/21_phone_number_sync.py can reproduce this bug if the last two lines are not commented out.