如何在Quarkus中禁用安全性

时间:2020-01-16 17:29:40

标签: java security rbac quarkus disable

我已经在Quarkus应用程序中实现了JWT RBAC,但是我不想在本地测试应用程序时提供令牌。

编辑:

到目前为止,我尝试将这些属性设置为“ false”,而没有任何效果。

quarkus.oauth2.enabled=false
quarkus.security.enabled=false
quarkus.smallrye-jwt.enabled=false

当前,我已全部注释掉

 //@RolesAllowed({"user"})

要在本地“禁用”身份验证。

是否有任何属性可以针对任何给定角色禁用安全性/启用端点?

2 个答案:

答案 0 :(得分:2)

您可以实现AuthorizationController(io.quarkus.security.spi.runtime.AuthorizationController)

public class DisabledAuthController extends AuthorizationController {
    @ConfigProperty(name = "disable.authorization")
    boolean disableAuthorization;

    @Override
    public boolean isAuthorizationEnabled() {
        return disableAuthorization;
    }
}

在Quarkus指南中,您可以找到更多信息

https://quarkus.io/guides/security-customization#disabling-authorization

答案 1 :(得分:1)

您似乎正在使用MicroProfile JWT RBAC,因此请进行以下设置: quarkus.smallrye-jwt.enabled = false

更广泛的FYI,您也可以在所有可用属性的背景下find the JWT RBAC properties here