我正在尝试为授权/身份验证实现 quarkus 扩展。我以现有的quarkus-smallrye-jwt-abx
-extension 为例。一切似乎都很好,除了我不能注入Principal
:
@Inject
private Principal principal;
我越来越
类型 java.security.Principal 和限定符 [@Default] 的不满足依赖性
注入SecurityContext
并Principal
从中获取工作正常:
@Context
private SecurityContext sec;
@GET
@Produces(MediaType.TEXT_PLAIN)
@Path("test")
public String test() {
return sec.getUserPrincipal().getName();
}
在quarkus-smallrye-jwt-abx
-extension 中,有一个PrincipalProducer
,它似乎产生了Principal
. 这真的有必要吗?这不是安全子系统本身提供的吗?它还提供SecurityContext
;为什么不应该提供Principal
?