1.8. 以 dev 模式运行应用程序
要在开发模式下运行应用程序,请使用以下命令:
使用 Quarkus CLI:
quarkus dev
quarkus dev
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使用 Maven:
./mvnw quarkus:dev
./mvnw quarkus:dev
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使用 Gradle:
./gradlew --console=plain quarkusDev
./gradlew --console=plain quarkusDev
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Dev Services for Keycloak 启动 Keycloak 容器,并导入 quarkus-realm.json
配置文件。
打开位于 /q/dev-ui 的 Dev UI,再单击 Dev UI 中的 OpenID Connect 卡上的 Provider: Keycloak 链接。
测试用户权限
当提示登录到 OpenID Connect Dev UI
提供的 单个页面
应用程序时,请执行以下操作:
以
alice
身份(密码:alice
)登录,其只有用户权限
来访问/api/users/me
资源:-
访问
/api/admin
,它返回403
。 -
访问
/api/users/me
,它返回200
。
-
访问
注销并以
admin
身份(password:admin
),其具有Admin 权限
来访问/api/admin
资源和User Permission
以访问/api/users/me
资源:-
访问
/api/admin
,它返回200
。 -
访问
/api/users/me
,它返回200
。
-
访问
自定义 Keycloak 域
如果您在没有导入域文件(如 quarkus-realm.json )的情况下为 Keycloak 启动 Dev Services,请创建一个没有 Keycloak 授权策略的默认 quarkus
域:
- 在 Dev UI 中,从 OpenID Connect 卡中选择 Keycloak Admin 链接。
-
登录到 Keycloak 管理控制台。用户名和密码都是
admin
。 -
按照 Keycloak Authorization Services 文档中的 说明在
quarkus
域中启用授权策略。
Keycloak Admin 链接在 Dev UI 中容易找到:
添加自定义 JavaScript 策略
如果您的应用程序使用配置了 JAR 归档中的 JavaScript 策略的 Keycloak 授权,则 Keycloak 的 Dev 服务可以将此存档传输到 Keycloak 容器。使用 application.properties
中的以下属性来配置传输:
Alias the policies archive Map the policies archive to a specific location in the container
# Alias the policies archive
quarkus.keycloak.devservices.resource-aliases.policies=/policies.jar
# Map the policies archive to a specific location in the container
quarkus.keycloak.devservices.resource-mappings.policies=/opt/keycloak/providers/policies.jar