我正在尝试使用数据库中的用户使用 PAC4J 框架实现安全层。PAC4J 文档推荐 DbProfileService,但我不知道如何使用它。
- 在哪里定义它?在 ConfigFactory 中?
final DirectBasicAuthClient directBasicAuthClient = new DirectBasicAuthClient(new DbProfileService());
- 验证在哪里进行?我的意思是用户,密码是否正确?也许我不应该关心,它是内部完成的。
我正在尝试使用数据库中的用户使用 PAC4J 框架实现安全层。PAC4J 文档推荐 DbProfileService,但我不知道如何使用它。
final DirectBasicAuthClient directBasicAuthClient = new DirectBasicAuthClient(new DbProfileService());
联系PAC4J所有者后,我找到了如何使用它:
例子:
DataSource dataSource = FeerBoxServerDB.getDatasource();
DbProfileService dbProfileService = new DbProfileService(dataSource);
dbProfileService.setUsersTable("restusers");
dbProfileService.setIdAttribute("id");
dbProfileService.setUsernameAttribute("username");
dbProfileService.setPasswordAttribute("password");
dbProfileService.setPasswordEncoder(new JBCryptPasswordEncoder(ServerConfigFactory.PWD_SALT));
final DirectBasicAuthClient directBasicAuthClient = new DirectBasicAuthClient(dbProfileService);