From d69ca605fe8d8d90ed693f60b1875d59fe6bfdd3 Mon Sep 17 00:00:00 2001 From: ndr_brt Date: Thu, 10 Oct 2024 11:24:27 +0200 Subject: [PATCH] docs: deprecate DAPS module --- .../2024-10-10-daps-deprecation/README.md | 18 ++++++++++++++++++ docs/developer/decision-records/README.md | 2 ++ .../iam/oauth2/identity/Oauth2ServiceImpl.java | 3 +++ .../edc/iam/oauth2/daps/DapsExtension.java | 4 ++++ .../edc/iam/oauth2/daps/DapsJwtDecorator.java | 1 + .../iam/oauth2/daps/DapsTokenDecorator.java | 3 +++ 6 files changed, 31 insertions(+) create mode 100644 docs/developer/decision-records/2024-10-10-daps-deprecation/README.md diff --git a/docs/developer/decision-records/2024-10-10-daps-deprecation/README.md b/docs/developer/decision-records/2024-10-10-daps-deprecation/README.md new file mode 100644 index 00000000000..1a0c1617200 --- /dev/null +++ b/docs/developer/decision-records/2024-10-10-daps-deprecation/README.md @@ -0,0 +1,18 @@ +# DAPS module deprecation + +## Decision + +We will stop publishing DAPS related modules. + +## Rationale + +Shifting toward decentralized identity model though the adoption of Decentralized Claims Protocol as the protocol to be +used, makes DAPS obsolete, and maintaining it is an unneeded effort by the EDC committer group. + +## Approach + +In EDC version 0.10.0 we deprecated: +- module `oauth2-daps` +- class `Oauth2ServiceImpl` + +they will be removed without further warnings in the subsequent versions. diff --git a/docs/developer/decision-records/README.md b/docs/developer/decision-records/README.md index edf8e2a4309..85d69c5b3f4 100644 --- a/docs/developer/decision-records/README.md +++ b/docs/developer/decision-records/README.md @@ -64,3 +64,5 @@ - [2024-09-25 Multiple Protocol Versions](./2024-09-25-multiple-protocol-versions) - [2024-10-02 Clustered data-plane](./2024-10-02-clustered-data-plane/) - [2024-10-06 Typed Policy Scopes through Contexts](./2024-10-05-typed-policy-context) +- [2024-10-10 DAPS module deprecation](./2024-10-10-daps-deprecation) + diff --git a/extensions/common/iam/oauth2/oauth2-core/src/main/java/org/eclipse/edc/iam/oauth2/identity/Oauth2ServiceImpl.java b/extensions/common/iam/oauth2/oauth2-core/src/main/java/org/eclipse/edc/iam/oauth2/identity/Oauth2ServiceImpl.java index 7300bb8ce82..d58edeb4b8e 100644 --- a/extensions/common/iam/oauth2/oauth2-core/src/main/java/org/eclipse/edc/iam/oauth2/identity/Oauth2ServiceImpl.java +++ b/extensions/common/iam/oauth2/oauth2-core/src/main/java/org/eclipse/edc/iam/oauth2/identity/Oauth2ServiceImpl.java @@ -42,7 +42,10 @@ /** * Implements the OAuth2 client credentials flow and bearer token validation. + * + * @deprecated will be removed in the next versions. */ +@Deprecated(since = "0.10.0") public class Oauth2ServiceImpl implements IdentityService { private static final String GRANT_TYPE = "client_credentials"; diff --git a/extensions/common/iam/oauth2/oauth2-daps/src/main/java/org/eclipse/edc/iam/oauth2/daps/DapsExtension.java b/extensions/common/iam/oauth2/oauth2-daps/src/main/java/org/eclipse/edc/iam/oauth2/daps/DapsExtension.java index 79b28936c41..a9fd84a4a6e 100644 --- a/extensions/common/iam/oauth2/oauth2-daps/src/main/java/org/eclipse/edc/iam/oauth2/daps/DapsExtension.java +++ b/extensions/common/iam/oauth2/oauth2-daps/src/main/java/org/eclipse/edc/iam/oauth2/daps/DapsExtension.java @@ -25,8 +25,11 @@ /** * Provides specialization of Oauth2 extension to interact with DAPS instance + * + * @deprecated will be removed in the next versions. */ @Extension(value = DapsExtension.NAME) +@Deprecated(since = "0.10.0") public class DapsExtension implements ServiceExtension { public static final String NAME = "DAPS"; @@ -45,6 +48,7 @@ public String name() { @Override public void initialize(ServiceExtensionContext context) { + context.getMonitor().warning("The extension %s has been deprecated, please switch to a decentralized implementation".formatted(NAME)); jwtDecoratorRegistry.register(OAUTH_2_DAPS_TOKEN_CONTEXT, new DapsJwtDecorator()); } diff --git a/extensions/common/iam/oauth2/oauth2-daps/src/main/java/org/eclipse/edc/iam/oauth2/daps/DapsJwtDecorator.java b/extensions/common/iam/oauth2/oauth2-daps/src/main/java/org/eclipse/edc/iam/oauth2/daps/DapsJwtDecorator.java index d4c8a4faa8c..f0a73618678 100644 --- a/extensions/common/iam/oauth2/oauth2-daps/src/main/java/org/eclipse/edc/iam/oauth2/daps/DapsJwtDecorator.java +++ b/extensions/common/iam/oauth2/oauth2-daps/src/main/java/org/eclipse/edc/iam/oauth2/daps/DapsJwtDecorator.java @@ -17,6 +17,7 @@ import org.eclipse.edc.spi.iam.TokenParameters; import org.eclipse.edc.token.spi.TokenDecorator; +@Deprecated(since = "0.10.0") public class DapsJwtDecorator implements TokenDecorator { @Override diff --git a/extensions/common/iam/oauth2/oauth2-daps/src/main/java/org/eclipse/edc/iam/oauth2/daps/DapsTokenDecorator.java b/extensions/common/iam/oauth2/oauth2-daps/src/main/java/org/eclipse/edc/iam/oauth2/daps/DapsTokenDecorator.java index ae6e769acbc..90ca921581e 100644 --- a/extensions/common/iam/oauth2/oauth2-daps/src/main/java/org/eclipse/edc/iam/oauth2/daps/DapsTokenDecorator.java +++ b/extensions/common/iam/oauth2/oauth2-daps/src/main/java/org/eclipse/edc/iam/oauth2/daps/DapsTokenDecorator.java @@ -20,7 +20,10 @@ /** * Token decorator that sets the {@code scope} claim on the token that is used on DSP request egress + * + * @deprecated will be removed in the upcoming versions. */ +@Deprecated(since = "0.10.0") public class DapsTokenDecorator implements TokenDecorator { private final String scope;