Jwt Quarkus:集成测试-如何模拟OIDC?
我正在尝试与Quarkus运行一些集成测试,并使用承载令牌授权保护我们的JAX-RS应用程序 根据我们在理论上看到的情况,可以模拟授权机制的行为,而不需要在本地运行授权服务器(如KeyClope) 我发现的问题是在所描述的任何依赖项中都找不到Jwt Quarkus:集成测试-如何模拟OIDC?,jwt,jax-rs,integration-testing,keycloak,quarkus,Jwt,Jax Rs,Integration Testing,Keycloak,Quarkus,我正在尝试与Quarkus运行一些集成测试,并使用承载令牌授权保护我们的JAX-RS应用程序 根据我们在理论上看到的情况,可以模拟授权机制的行为,而不需要在本地运行授权服务器(如KeyClope) 我发现的问题是在所描述的任何依赖项中都找不到OidcWiremockTestResource.class。在哪里 另外,我们如何避免让授权服务器针对端点运行某些测试 我发现只要使用以下方法就可以模拟JsonWebToken和SecurityIdentity: @InjectMock S
OidcWiremockTestResource.class
。在哪里
另外,我们如何避免让授权服务器针对端点运行某些测试
我发现只要使用以下方法就可以模拟JsonWebToken
和SecurityIdentity
:
@InjectMock
SecurityIdentity identity;
@InjectMock
JsonWebToken token;
它工作得很好,但当我尝试运行集成测试时,授权服务器仍然需要启动并运行。否则Quarkus无法尝试连接到它
我试图禁用OIDC扩展(quarkus.OIDC.enabled=false
),但是,当然,代码没有编译(端点不识别依赖项)
那么,在运行一些集成测试时,哪种方法是跳过OIDC连接的最佳方法
最好的,
OIDCWireMoTestResource
在1.13.1.Final
中提供
此外,在这种情况下,可以使用TestSecurity
注释,从Quarkus2.0
开始,也可以从1.13.2.Final
开始(如果此PR将得到后端口):
最后,Quarkus
2.0
将有一个KeyClope测试支持模块-如果您使用KeyClope,那么它将有助于针对实时KeyClope实例进行测试。谢谢Sergey!它在我们更新到最新版本后工作:-)现在我们不需要授权服务器只用于REST测试