我们正在使用CXF + DOSGI休息服务
接口:
@Path("/")
public interface DefaultApi{
@POST
@Path("/public/login")
@Consumes({ "application/json" })
@Produces({ "application/json" })
public Response login(@HeaderParam("User-Agent") String userAgent,@QueryParam("username") String username,@QueryParam("password") String password,
@Context UriInfo uriInfo,
@Context ResourceContext recourceContext);
实现:
@Component(immediate = true, configurationPolicy = ConfigurationPolicy.REQUIRE, configurationPid = "frontend.rest")
public class DefaultApiImpl implements DefaultApi {
是否可以将Apache Deltaspike与CXF + DOSGI一起用于方法级别授权 https://deltaspike.apache.org/documentation/security.html 如果可能怎么做?
是否还有其他方法可以使用CXF + DOSGI进行方法级别授权
答案 0 :(得分:0)
您不能混合使用deltaspike和声明性服务。 Deltaspike安全性是cdi扩展,因此您需要使用pax cdi来公开您的OSGi服务。
另一件事是你需要以某种方式进行身份验证。我建议使用CXF JAASAuthenticationFeature。它可以对karaf中配置的jaas提供程序进行基本身份验证。结果是一个jaas登录,你可以在deltaspike安全性中使用它来为你的授权奠定基础。