Jersey SecurityContext.isUserInRole 在 Jetty Embedded 上运行时始终为 false
Jersey SecurityContext.isUserInRole always false when running on Jetty Embedded
我正在尝试将嵌入式 JettyHttpContainer 与 Jersey 一起使用。我使用 BasicAuthenticator,一切正常:
@GET
@Produces(MediaType.APPLICATION_JSON)
@PermitAll
public Response getData(@Context SecurityContext securityContext) {
if (securityContext.isUserInRole(Roles.ADMIN)) {
do something...
问题是,securityContext.isUserInRole(Request)
总是错误的,查看源代码,原因很明显:
private SecurityContext getSecurityContext(final Request request) {
return new SecurityContext() {
@Override
public boolean isUserInRole(String role) {
return false;
}
有人知道如何正确使用 Jersey SecurityContext 的 JettyHttpContainer 吗?
这是一个错误。我已经针对 Jersey 进行了报告。参见 https://java.net/jira/browse/JERSEY-2750
我正在尝试将嵌入式 JettyHttpContainer 与 Jersey 一起使用。我使用 BasicAuthenticator,一切正常:
@GET
@Produces(MediaType.APPLICATION_JSON)
@PermitAll
public Response getData(@Context SecurityContext securityContext) {
if (securityContext.isUserInRole(Roles.ADMIN)) {
do something...
问题是,securityContext.isUserInRole(Request)
总是错误的,查看源代码,原因很明显:
private SecurityContext getSecurityContext(final Request request) {
return new SecurityContext() {
@Override
public boolean isUserInRole(String role) {
return false;
}
有人知道如何正确使用 Jersey SecurityContext 的 JettyHttpContainer 吗?
这是一个错误。我已经针对 Jersey 进行了报告。参见 https://java.net/jira/browse/JERSEY-2750