Returns a {@link ClientScopeModel} associated with this client. + * + *
This method is used as a fallback in order to let clients to resolve a {@code scope} dynamically which is not listed as default or optional scope when calling {@link #getClientScopes(boolean, boolean)}. + * + * @param scope the scope name + * @return the client scope + */ + default ClientScopeModel getDynamicClientScope(String scope) { + return null; + } /** * Time in seconds since epoc diff --git a/server-spi/src/main/java/org/keycloak/models/ClientScopeModel.java b/server-spi/src/main/java/org/keycloak/models/ClientScopeModel.java index d40d0e01c2c..441b591b236 100755 --- a/server-spi/src/main/java/org/keycloak/models/ClientScopeModel.java +++ b/server-spi/src/main/java/org/keycloak/models/ClientScopeModel.java @@ -92,6 +92,4 @@ public interface ClientScopeModel extends ProtocolMapperContainerModel, ScopeCon default void setIncludeInTokenScope(boolean includeInTokenScope) { setAttribute(INCLUDE_IN_TOKEN_SCOPE, String.valueOf(includeInTokenScope)); } - - } diff --git a/services/pom.xml b/services/pom.xml index 868565357d0..b20a1e56cea 100755 --- a/services/pom.xml +++ b/services/pom.xml @@ -178,6 +178,10 @@