HttpContext implementation which supports BASIC auth.
-----------------------------------------------------
Key: FELIX-2751
URL: https://issues.apache.org/jira/browse/FELIX-2751
Project: Felix
Issue Type: Improvement
Components: HTTP Service
Reporter: Tamas Cserveny
I've tried to implement the basic authentication scheme for a servlet in my
project. It was obvious, that I'll need to use HttpContext for that, but I felt
that something like the basic auth or digest should be included in the system
by default.
I did not found anything on the net about an OSGi HttpContext implementing
BasicAuth so I created a very basic one. The only thing it supports is
authentication against a static list of users.
You'll need to extend it and read the users from somewhere. It may need lot of
polishing as currently the users are stored in a map inside the context, but
should be extracted to some kind of Realm object and let the
authentication/authorization be done there. But this would have been an
overkill for my purpose.
Example:
@Component
@Service
@Property(name="contextId", value="VIRIF")
public class VIRHttpContext extends BasicAuthHttpContext {
public VIRHttpContext() {
super( "VIRIF" );
loadUserAndPassword( );
}
...
}
and then annotate the servlet:
@Component
@Service
@Properties({
@Property(name = "alias", value = "/vir"),
@Property(name = "contextId", value = "VIRIF")
})
public class SecuredCommandServlet extends HttpServlet {
}
ps. The examples uses the whiteboard bundle and the SCR maven plugin. The
implementation uses commons lang and codec. Maybe they can be refactored out.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.