Bug 55154 - Ship schema extension univentionAdHocFederation as part of UCS
Ship schema extension univentionAdHocFederation as part of UCS
Status: CLOSED FIXED
Product: UCS
Classification: Unclassified
Component: UDM (Generic)
UCS 5.0
Other Linux
: P5 normal (vote)
: UCS 5.0-2-errata
Assigned To: Arvid Requate
Juan Pedro Torres
https://git.knut.univention.de/univen...
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2022-08-31 17:22 CEST by Arvid Requate
Modified: 2022-09-08 11:43 CEST (History)
2 users (show)

See Also:
What kind of report is it?: Development Internal
What type of bug is this?: ---
Who will be affected by this bug?: ---
How will those affected feel about the bug?: ---
User Pain:
Enterprise Customer affected?:
School Customer affected?:
ISV affected?:
Waiting Support:
Flags outvoted (downgraded) after PO Review:
Ticket number:
Bug group (optional): Further conceptual development
Max CVSS v3 score:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Arvid Requate univentionstaff 2022-08-31 17:22:32 CEST
Currently both, the Keycloak SPI extension for Ad-Hoc-Federation and the udm-directory-connector, invented in the Phoenix project, create user (and group) accounts and they store the objectGUID of the originating IAM system (Microsoft AD or ADFS) with the created object, to make it possible to track the object identity.

We want to shift this approach to a more general level, by introducing an attribute `univentionObjectIdentifier` that shall identify each identity object in an immutable manner. See https://git.knut.univention.de/groups/univention/-/epics/321 for more details about the rationale.

We also want to offer an attribute that tracks the "namespace" (or identity context) an object came from, which shall be called `univentionSourceIAM`.

To make these attributes available as UDM properties, we need to

1. Install the LDAP schema extension (probably by calling ucs_registerLDAPExtension in some joinscript)

2. Adjust UDM to define the corresponding properties in a way that they can only be set during abject creation but not modified later

In the Phoenix project we defined a preliminary schema extension https://git.knut.univention.de/univention/components/keycloak-app/-/blob/main/dependencies/adhocfederation.schema but since the attribute names changed, I guess we should also define new OIDs and also choose a different name for the objectclass (e.g. `univentionIAMObject`).

The Gitlab issue is https://git.knut.univention.de/univention/customers/dataport/upx/iam-team/-/issues/29 , so the work probably will be done by that team.
Comment 1 Arvid Requate univentionstaff 2022-08-31 17:39:27 CEST
This would make the steps below https://git.knut.univention.de/univention/components/keycloak-app/-/blob/main/app/inst#L74 obsolete.
Comment 2 Arvid Requate univentionstaff 2022-09-05 20:08:36 CEST
10c7660bbe | Add univentionObjectIdentifier and univentionSouceIAM
49df696313 | Advisories


Package: univention-ldap
Version: 16.0.7-22A~5.0.0.202209052004
Branch: ucs_5.0-0
Scope: errata5.0-2

Package: univention-directory-manager-modules
Version: 15.0.13-6A~5.0.0.202209052006
Branch: ucs_5.0-0
Scope: errata5.0-2