[Design of JBoss jBPM] - SubjectAuthenticationService / ActorId from JAAS
by camunda
In the code base there is a SubjectAuthenticationService. The intention is, that the actor-id is set to the currently logged in JAAS-Subject. Unfortunately, this isn't implemented consequently.
In a current project we want to exchange the AuthenticationService, because we try to use Single-Sign-On Semantics in JBoss SOA Platform.
Currently there are 3 problems:
1.) There is no SubjectAuthenticationServiceFactory, so this AuthenticationService cannot be used
2.) subject.getPrincipals(principalClass) results in a list of Principals, containing groups as well. So by the current code, the actor isn't set correctly
3.) And this is the bigger SHOWSTOPPER: The AuthenticationService interface only defines the method "getActor". But at several places jbpmContext.setActorId is called (e.g. WebConsole PhaseListener, ESB BpmProcessor, ...). This results in an exception if the DefaultAuthenticationService is not used! This makes it impracticable to exchange the AuthenticationService.
So what to do at this front?
I see two possibilities:
a) Change the AuthenticationService interface to include a setActorId method. This can be ignored by implementations like the SubjectAuthenticationService (cannot and don't want to change the JAAS subject).
b) Change the JbpmContext to ignore setActorId depending on the AuthenticationService implementation.
The third possibility isn't really an option I think: Change all clients to NOT call the setActorId without any good reason.
I tend to option (a). What I could imagine is, that the actorId is queries from JAAS if null, but can be overwritten with setActorId and then remembered locally. Please refer to the forum for discussion....
I will open a JIRA for it as well...
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4195844#4195844
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4195844
17 years, 3 months
[Design of Messaging on JBoss (Messaging/JBoss)] - Another issue with paging:
by timfox
In PostOfficeImpl::route:
| public List<MessageReference> route(final ServerMessage message) throws Exception
| {
| long size = pagingManager.addSize(message);
|
addSize is being called before the message is actually routed.
If no filters match or for other reasons, the message might not actually be routed to any queues, but the size is added anyway, this is incorrect.
Instead, size should be added *after* we know which message references are returned.
Moreover, also the size is not taking into account the number of message references,
When we discussed this before, the memory estimate was going to take into account number of refs, e.g.
if number of refs == 0
memory estimate = 0
else
memory estimate = message estimate + number of refs * ref estimate
This doesn't seem to be the way it has been implemented.
If you have a topic with 1000s of subscribers it will make a big difference
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4195840#4195840
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4195840
17 years, 3 months