我的Webapp部署在Wildfly 25.0.1.Final 中,并使用OpenID Connect(OIDC)进行保护。WildFly 25使您能够使用OpenID Connect(OIDC)保护部署,而无需安装Keycloak客户端适配器。
它是这样配置的:
web.xml
<login-config>
<auth-method>OIDC</auth-method>
</login-config>
OIDC.json
{
"provider-url": "${auth.server.url}",
"ssl-required": "external",
"client-id": "myClient",
"public-client": true,
"confidential-port": 0
}
描述如下:http://www.mastertheboss.com/jbossas/jboss-security/secure-wildfly-applications-with-openid-connect/
一切正常。我的WebApp是安全的,它重定向到keycloak进行授权,keycloak将令牌发送到我的webapp。但是,对于我的Webapp中的每个请求,Wildflyserver都会向keycloak服务器发送大约100个请求,以从OpenID提供者加载元数据。
13:33:38,405 INFO [org.wildfly.security.http.oidc] (default task-3) ELY23004: Loaded OpenID provider metadata from 'http://keycloakserver:8180/auth/realms/myRealm/.well-known/openid-configuration'
...
...
13:33:39,480 INFO [org.wildfly.security.http.oidc] (default task-3) ELY23004: Loaded OpenID provider metadata from 'http://keycloakserver:8180/auth/realms/myRealm/.well-known/openid-configuration'
这不可能是正确的,性能不充分。
在Wildfly 23(带Keycloak适配器)中我没有看到这条消息!
有同样经历的人吗?谢谢!
这是一个已知问题,记录在此处:https://issues.redhat.com/browse/ELY-2284
如果您升级到Wildfly 26.0.1,应该会得到解决。