github micronaut-projects/micronaut-security v3.4.0
Micronaut Security 3.4.0

latest releases: v4.10.1, v4.10.0, v4.9.1...
2 years ago

v3.4.0 (2022-03-03)

Full Changelog

  • nimbus jose to 9.20 from 9.15.2

BREAKING: Sensitive endpoints will now respond with an error unless a replacement for the SensitiveEndpointRule is bound.

The following code snippet illustrates how to restore the previous functionality:

The previous functionality allows any authenticated user, no matter their role to view sensitive endpoints.

import io.micronaut.context.annotation.Replaces;
import io.micronaut.context.annotation.Requires;
import io.micronaut.core.annotation.NonNull;
import io.micronaut.http.HttpRequest;
import io.micronaut.inject.ExecutableMethod;
import io.micronaut.management.endpoint.EndpointSensitivityProcessor;
import io.micronaut.security.authentication.Authentication;
import io.micronaut.security.rules.SecurityRuleResult;
import io.micronaut.security.rules.SensitiveEndpointRule;
import jakarta.inject.Singleton;
import org.reactivestreams.Publisher;
import reactor.core.publisher.Mono;

@Singleton
@Replaces(SensitiveEndpointRule.class)
class SensitiveEndpointRuleReplacement extends SensitiveEndpointRule {
    SensitiveEndpointRuleReplacement(EndpointSensitivityProcessor endpointSensitivityProcessor) {
        super(endpointSensitivityProcessor);
    }

    @Override
    @NonNull
    protected Publisher<SecurityRuleResult> checkSensitiveAuthenticated(@NonNull HttpRequest<?> request,
                                                                        @NonNull Authentication authentication,
                                                                        @NonNull ExecutableMethod<?, ?> method) {
        return Mono.just(SecurityRuleResult.ALLOWED);
    }
}

Breaking changes:

  • BREAKING: Force developers to implement SensitiveEndpointRule::checkSensitiveAuthenticated #939

Implemented enhancements:

  • Create bom module #911

Closed issues:

  • JWT Signature verification failed with JWK Set Keys (Key ID not found) #933
  • test: Update the version of Keycloak under test #925
  • Refactor LdapAuthenticationProvider to make ease to customize LDAP roles mapping #905

Merged pull requests:

* This Changelog was automatically generated by github_changelog_generator

Don't miss a new micronaut-security release

NewReleases is sending notifications on new releases.