Skip to main content

๐Ÿ“ข Milestone 0.4 has been reached

ยท 2 min read
Vinaya Mayya
Senior Technical Program Manager - API

What's Changedโ€‹

The fourth milestone on our journey to a production-ready release of the Data Management Service (DMS) introduces Configuration Management Service backed by configuration data store, namespace-based authorization, and Keycloak integration as the identity provider.

Key Updatesโ€‹

  1. Introduces DMS Configuration Service, designed to be compatible with Admin API 2.2
  2. Implements OAuth support via KeyCloak.
  3. Enforces token-based authorization for all Descriptor API and Resource API endpoints in DMS.
  4. Introduced namespace-based authorization for Descriptors and namespace-scoped resources (e.g., Assessments).

Additionally, this milestone included API client SDK generation testing for compatibility with ODS API SDK, a basic eTag implementation, and expanded end-to-end test cases.

๐Ÿ“ŒView Full Changelog

Try It Outโ€‹

With Docker Desktop or Podman installed locally:

git clone https://github.com/Ed-Fi-Alliance-OSS/Data-Management-Service
cd Data-Management-Service
git checkout 0.4.0

# Start all required services inside of Docker
cd eng\docker-compose
cp .env.example .env
.\start-local-dms.ps1 -EnableSearchEngineUI -EnableConfig -r

# Configure Keycloak
.\setup-keycloak.ps1

The .http files in src/dms/tests/RestClient can help you understand how to interact with these systems. In particular, see authorization-demonstration-Dec2024.http. These files should be executable in Visual Studio, VS Code via rest-client or httpYac, and Rider.

Nextโ€‹

The upcoming 0.5.0 milestone will add claimset-based authorization metadata served through the DMS Configuration Service, relationship-based authorization via student enrollment and staff employment, EPDM extension delivery and support for custom model extensions.

For more detail about what comes next, see Ed-Fi Technology Roadmap.