Re-vive the existing Education API
Userstory
As a developer, I want the existing Education API implementation to be revived and run as a separate service so that it can be maintained and scaled independently.
Description
The current Education API implementation should be reactivated and deployed as its own standalone service. This separation improves maintainability, allows independent scaling, and prepares the service for future extensions.
Acceptance Criteria
- Existing Education API implementation is restored and functional
- Education API runs as a separate service
- Documentation updated on how to run and access the service
- Create docker compose ( OC DEV Tools )
Information Details
here are information about API and provisioning etc.
https://github.com/opencloud-eu/opencloud/blob/main/docs/adr/0002-use-education-api-for-multitenant-user-provisioning.md
In order to make the API easier to understand we should probably make a few attributes optional that only have a meaning in the School Context:
- Schools/Tenants: We likely won't need the
schoolNumberattribute, which in our current implemenation isrequired. In MS Graph itself it optional. - EducationUsers:
- The
primaryRoleattribute is currently required, we don't need that for the MultiTenant use case. - The
identitiesattribute is supposed to contain thesubandissuerclaim of the user. We/The provider might not even know those when users are provisioned. Those should be optional as well. (At least when anexternalId(https://github.com/opencloud-eu/opencloud/issues/1599) is set in the request)
- The
https://github.com/opencloud-eu/opencloud-charts/pull/69#issue-3410757290
@dragonchaser @fschade
Here's a PR with a compose setup deploying OpenCloud, keycloak, OpenLDAP and the provisioning API for testing and development purposes:
https://github.com/opencloud-eu/opencloud/pull/1637