Maison > Java > le corps du texte

Pac4J a des problèmes de chiffrement avec un certificat auto-signé

王林
Libérer: 2024-02-05 22:18:12
avant
1026 Les gens l'ont consulté
Contenu de la question

J'utilise Spring Boot 3.2.1 avec un serveur keycloak intégré

<dependency>
            <groupid>org.pac4j</groupid>
            <artifactid>jakartaee-pac4j</artifactid>
            <version>8.0.0</version>
        </dependency>
        <dependency>
            <groupid>org.pac4j</groupid>
            <artifactid>pac4j-oidc</artifactid>
            <version>6.0.1</version>
        </dependency>
Copier après la connexion

Aucun cryptage requis, tout fonctionne bien, pac4j gère très bien les choses. Lorsque j'utilise SSL à l'aide du bundle SSL, l'application Web fonctionne correctement (https) et les interactions avec le serveur keycloak intégré fonctionnent correctement, y compris les appels suivants : https://localhost:8888/auth/realms/master/.well-known/openid-configuration Lorsqu'il est effectué via un navigateur Web sur la même machine. Cependant, lors de l'exécution du processus d'authentification, pac4j semble générer l'erreur suivante :

org.pac4j.core.exception.TechnicalException: Error getting URL resource
    at org.pac4j.core.resource.SpringResourceHelper.getResourceInputStream(SpringResourceHelper.java:74)
    at org.pac4j.oidc.metadata.OidcOpMetadataResolver.retrieveMetadata(OidcOpMetadataResolver.java:89)
    at org.pac4j.oidc.metadata.OidcOpMetadataResolver.internalLoad(OidcOpMetadataResolver.java:76)
    at org.pac4j.core.resource.SpringResourceLoader.load(SpringResourceLoader.java:50)
    at org.pac4j.oidc.config.OidcConfiguration.findPkceMethod(OidcConfiguration.java:285)
    at org.pac4j.oidc.redirect.OidcRedirectionActionBuilder.addStateAndNonceParameters(OidcRedirectionActionBuilder.java:115)
    at org.pac4j.oidc.redirect.OidcRedirectionActionBuilder.getRedirectionAction(OidcRedirectionActionBuilder.java:58)
    at org.pac4j.core.client.IndirectClient.getRedirectionAction(IndirectClient.java:136)
    at org.pac4j.core.engine.DefaultSecurityLogic.redirectToIdentityProvider(DefaultSecurityLogic.java:240)
    at org.pac4j.core.engine.DefaultSecurityLogic.perform(DefaultSecurityLogic.java:160)
    at com.ebremer.server.MyCustomSecurityFilter.internalFilter(MyCustomSecurityFilter.java:79)
Copier après la connexion

J'ai ajouté trustallcertificates et trustallhostnames au démarrage du système, mais toujours aucun effet.


Bonne réponse


Vous devez créer un truststore avec un certificat auto-signé et l'attribuer à la JVM : https://docs.oracle.com/cd/E29585_01/PlatformServices.61x/security/src/ csec_ssl_jsp_start_server.html

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:stackoverflow.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal