我已经使用基于Quarkus的Keycloak保护了我的Web应用程序。当我启动应用程序时:
./mvnw clean compile quarkus:dev
它告诉我:
io.quarkus.oidc.OIDCException: OIDC server is not available at the 'quarkus.oidc.auth-server-url' URL. Please make sure it is correct. Note it has to end with a realm value if you work with Keycloak, for example: 'https://localhost:8180/auth/realms/quarkus'
Caused by: javax.net.ssl.SSLHandshakeException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
Keycloak服务器正在使用证书https://acme-staging-v02.api.letsencrypt.org/directory
(不是有效的证书)进行设置,因为它是DEV环境。
Quarkus上的Keycloak配置:
quarkus.oidc.auth-server-url=https://dev.oic.databaker.io/auth/realms/databaker
quarkus.oidc.client-id=svc
quarkus.oidc.credentials.secret=!!!secret!!!
quarkus.keycloak.policy-enforcer.enable=true
quarkus.keycloak.policy-enforcer.paths.1.path=/
quarkus.keycloak.policy-enforcer.paths.1.enforcement-mode=DISABLED
quarkus.ssl.native=false
如何绕过错误?
该acme-staging
让我们加密证书仅用于测试目的,而不是由系统附带的的CA信任。
您需要将Fake LE Root X1根证书添加到受信任的CA证书列表中。
在“ 加密Acme”文档中对此进行了详细说明:
暂存环境中间证书(“ Fake LE Intermediate X1”)由浏览器/客户端信任库中不存在的根证书颁发。如果您希望修改仅测试客户端以信任暂存环境以进行测试,可以通过在测试信任库中添加“ Fake LE Root X1”证书来做到这一点。重要提示:不要将暂存根目录或中间目录添加到用于常规浏览或其他活动的信任库中,因为它们未经过审核或与我们的生产根目录遵循相同的标准,因此不能安全地用于其他任何活动比测试。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句