Hi Felix,
> ... have created the Service Authentication concept [1]..
I like it - here are some comments on the proposed APIs.
1) getServiceResourceResolver
In ResourceResolver getServiceResourceResolver(Map<String, Object>
authenticationInfo), authenticationInfo MUST contain some attributes,
wouldn't it be better to use a more specific argument than Map<String,
Object> ?
Maybe
getServiceResourceResolver(ServicerUserURI uri, Bundle
serviceBundle, String optionalServiceInfo)
2) ServiceUserMapper
Like Angela I think the naming is a bit confusing, I would suggest having
ServicerUserURI - identifies a service, like "service:MailSender:server"
userId - a User ID as used by the Sling security services
You could then have, IIUC
interface ServiceUserMapper {
ServicerUserURI getServiceURI(Bundle b, String serviceName)
String getServiceUserID(ServicerUserURI URI, Bundle serviceBundle)
}
The main idea is to clearly define what's a service name
("mail.sender"), service URI ("service:someBundle:mail.sender") and
User ID ("mailsender").
-Bertrand
> [1] https://cwiki.apache.org/confluence/display/SLING/Service+Authentication