{"ref":"artifact:vobu-cds-entra-id","page":"/artifacts/vobu-cds-entra-id","json":"/artifacts/vobu-cds-entra-id.json","generated":"2026-10-26","drafted_with_ai":true,"entity":{"id":"vobu-cds-entra-id","name":"cds-entra-id","artifact_type":"cds-plugin","ecosystem":"cap","domain":"security-and-compliance","origin_ring":"independent","description":{"one_line":"A CAP plugin that maps Microsoft Entra ID groups and app roles onto cds.User roles, so @requires and @restrict keep working for a CAP app hosted on Azure App Services.","short":"Maps Microsoft Entra ID groups and app roles onto cds.User roles","what_it_solves":"Lets @requires and @restrict keep working when the identity provider is Entra ID rather than XSUAA or IAS — the case for a CAP app hosted on Azure App Services.","when_not_to_use":"It performs no authentication flow of its own. The app must already be protected by Entra ID OAuth 2.0 at the App Service level; this only maps the resulting claims. It is explicitly not intended to run locally."},"links":{"npm":"https://www.npmjs.com/package/cds-entra-id","repo":"https://github.com/vobu/cds-entra-id"},"identity":{"author":"Volker Buzek","license":"Apache-2.0"},"compat":{"runtimes":["node"]},"type_properties":{"distribution":{"value":["npm"],"sources":[{"url":"https://github.com/vobu/cds-entra-id","title":"cds-entra-id — README","checked":"2026-10-18","quote":"npm i --save cds-entra-id"}]}},"source_available":true,"provides":[{"capability":"capability:authorization","what_it_does":"Translates Entra ID group claims and app roles into cds.User roles, so the model's @requires and @restrict annotations are evaluated against an Azure identity.","sources":[{"url":"https://github.com/vobu/cds-entra-id#cds-entra-id","title":"vobu/cds-entra-id — README","checked":"2026-08-31","quote":"a drop-in authorization mapper ... The plugin does not support any authentication flow, but the mapping of Entra ID artefacts to CAP roles for declarative authorization"}]}],"provenance":{"discovered_via":[{"source":"source:maintainer"}],"first_seen":"2026-08-31"},"maintainers":["actor:vobu"],"contributors":["actor:gregorwolf","actor:vobu"],"drafted_with_ai":true},"effective_normative_relations":[{"instrument":"instrument:sap-developer-license-3-2-cap","relation":"use-constrained-by","sections":["1","2","3"],"applies_when":"A cds-plugin is used with SAP CAP materials, or an artifact is explicitly identified as a CAP plugin or application.","note":"This is inherited applicability, not a licence verdict about the artifact itself. Review the agreement for the actual materials and use; an explicit artifact relationship to another revision takes precedence.","scope":{"kind":"artifact"},"sources":[{"url":"https://cap.cloud.sap/resources/license/developer-license-3_2_CAP.txt","title":"SAP Developer License Agreement 3.2 CAP","checked":"2026-09-16","quote":"documentation, plug-ins, templates, scripts and sample code, libraries, software development kits"}],"inherited_from":"cap-plugins-and-applications","relevant_capabilities":["agent-systems-access","async-processing","data-import-export","database-connectors","deployment","destinations","llm-integration","mcp-servers","plugin-authoring","replication","retrieval-augmented-generation","rfc-connectivity"]}],"readings":{"liveness":[{"label":"Maintenance","tier":"poor","evidence":"33 months since release"},{"label":"Continuity","tier":"good","evidence":"3 contributors, 1 publisher"},{"label":"Repository","tier":"poor","evidence":"pushed 2024-09, not archived"}],"compatibility":[{"label":"Declared for","tier":"poor","evidence":"^7 — stops before cds 9"},{"label":"Survived majors","tier":"poor","evidence":"no release since @sap/cds 10 shipped (July 2026)"},{"label":"Maintainer's CI","tier":"fair","evidence":"workflows present, no completed run on the default branch"}],"practice":[{"label":"Tests","tier":"good","evidence":"2 test files, npm test"},{"label":"Docs","tier":"fair","evidence":"README 4 KB"},{"label":"Changelog","tier":"good","evidence":"CHANGELOG in the repo"}],"reach":[{"value":3,"unit":"installs/week"},{"value":6,"unit":"watching"}]},"signals":{"crawled_at":"2026-10-24","latest_version":"1.0.5","majors":{"1":{"version":"1.0.0","date":"2024-01-31"}},"license":"Apache-2.0","first_release":"2024-01-31","last_release":"2024-02-01","releases":5,"cadence_days":0,"maintainers":1,"repository":null,"peer_cds":"^7","test_script":true,"types":false,"downloads_weekly":3,"stars":6,"forks":1,"open_issues":1,"archived":false,"pushed_at":"2024-09-17","license_spdx":"Apache-2.0","org_owned":false,"default_branch":"main","contributors":3,"tree_truncated":false,"test_files":2,"workflows":2,"other_ci":false,"readme_bytes":4090,"docs_files":0,"changelog":true,"license_file":true,"dts_files":0,"readme_path":"README.md","readme_sha":"553712bf097df799a13ddeb30dfa6d2e2d8106e3","months_since_release":33,"dormant":true,"repository_directory":null,"dependencies":0,"node_engine":null,"downloads_monthly":25,"created_at":"2024-01-31T16:28:44Z","open_prs":1,"first_commit":"2024-01-31","last_commit":"2024-06-24","commits":30,"repo_read":"2026-10-24"},"release_notes":{"license":"Apache-2.0","quotable":true,"source":{"kind":"npm","path":"CHANGELOG.md","version":"1.0.5","url":"https://github.com/vobu/cds-entra-id/blob/main/CHANGELOG.md"},"format":"conventional","releases":[{"version":"1.0.5","date":"2024-02-01","date_source":"heading","heading":"1.0.5 (2024-02-01)","url":"https://github.com/vobu/cds-entra-id/blob/main/CHANGELOG.md#105-2024-02-01","sections":[],"hash":"e3b0c44298fc1c14"},{"version":"1.0.4","date":"2024-02-01","date_source":"heading","heading":"1.0.4 (2024-02-01)","url":"https://github.com/vobu/cds-entra-id/blob/main/CHANGELOG.md#104-2024-02-01","sections":[{"kind":"fix","heading":"Bug Fixes","items":1}],"hash":"38aa15aea22d5b29"},{"version":"1.0.3","date":"2024-02-01","date_source":"heading","heading":"1.0.3 (2024-02-01)","url":"https://github.com/vobu/cds-entra-id/blob/main/CHANGELOG.md#103-2024-02-01","sections":[{"kind":"fix","heading":"Bug Fixes","items":1}],"hash":"aaa9ed898fea6ea2"},{"version":"1.0.2","date":"2024-02-01","date_source":"heading","heading":"1.0.2 (2024-02-01)","url":"https://github.com/vobu/cds-entra-id/blob/main/CHANGELOG.md#102-2024-02-01","sections":[{"kind":"fix","heading":"Bug Fixes","items":1}],"hash":"9e7f36e744053181"},{"version":"1.0.1","date":"2024-02-01","date_source":"heading","heading":"1.0.1 (2024-02-01)","url":"https://github.com/vobu/cds-entra-id/blob/main/CHANGELOG.md#101-2024-02-01","sections":[{"kind":"fix","heading":"Bug Fixes","items":1}],"hash":"9e7f36e744053181"},{"version":"1.0.0","date":"2024-01-31","date_source":"heading","heading":"1.0.0 (2024-01-31)","url":"https://github.com/vobu/cds-entra-id/blob/main/CHANGELOG.md#100-2024-01-31","sections":[],"hash":"e3b0c44298fc1c14"}],"versions":[{"version":"1.0.5","date":"2024-02-01"},{"version":"1.0.4","date":"2024-02-01"},{"version":"1.0.3","date":"2024-02-01"},{"version":"1.0.2","date":"2024-02-01"},{"version":"1.0.0","date":"2024-01-31"}],"crawled_at":"2026-10-25"},"edges":{"maintainers":[{"ref":"actor:vobu","name":"Volker Buzek","json":"/actors/vobu.json"}],"contributors":[{"ref":"actor:gregorwolf","name":"Gregor Wolf","json":"/actors/gregorwolf.json"},{"ref":"actor:vobu","name":"Volker Buzek","json":"/actors/vobu.json"}],"explained_by":[],"alternative_to_this":[],"needed_by":[],"available_via":[],"parts":[],"add_ons":[],"answered_through_parts":[]}}