1.6. 配置应用程序
通过将
quarkus.http.auth.basic
属性设置为true
来启用内置的 Quarkus 基本身份验证 机制:quarkus.http.auth.basic=true
注意当需要安全访问时,且不需要启用其他身份验证机制,Quarkus 的内置 基本身份验证 是回退身份验证机制。因此,在本教程中,您不需要将属性
quarkus.http.auth.basic
设置为true
。在
application.properties
文件中至少配置一个数据源,以便quarkus-security-jpa
扩展可以访问您的数据库。例如:quarkus.http.auth.basic=true quarkus.datasource.db-kind=postgresql quarkus.datasource.username=quarkus quarkus.datasource.password=quarkus quarkus.datasource.jdbc.url=jdbc:postgresql:security_jpa quarkus.hibernate-orm.database.generation=drop-and-create
-
要使用用户和角色初始化数据库,请实施
Startup
类,如以下代码片段中所述:
package org.acme.security.jpa; import jakarta.enterprise.event.Observes; import jakarta.inject.Singleton; import jakarta.transaction.Transactional; import io.quarkus.runtime.StartupEvent; @Singleton public class Startup { @Transactional public void loadUsers(@Observes StartupEvent evt) { // reset and load all test users User.deleteAll(); User.add("admin", "admin", "admin"); User.add("user", "user", "user"); } }
前面的示例演示了应用的受保护和身份,由指定数据库提供。
重要
在生产环境中,不要存储纯文本密码。因此,quarkus-security-jpa
默认使用 bcrypt-hashed 密码。