| Summary: | Services that are part of jBPM Orchestrations should also be securable | ||
|---|---|---|---|
| Product: | [JBoss] JBoss Enterprise SOA Platform 4 | Reporter: | Jeff DeLong <jdelong> |
| Component: | Security | Assignee: | Mark Little <mark.little> |
| Status: | CLOSED NEXTRELEASE | QA Contact: | |
| Severity: | high | Docs Contact: | |
| Priority: | high | ||
| Version: | 4.3 IR1 | ||
| Target Milestone: | --- | ||
| Target Release: | 4.3 CP01 | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| URL: | http://jira.jboss.org/jira/browse/SOA-694 | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | Bug Fix | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2009-03-24 13:17:56 UTC | Type: | Feature Request |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
|
Description
Jeff DeLong
2008-08-20 13:54:05 UTC
From Jeff ...
"The SSO token can be propagated between services orchestrated by jBPM by copying it back and forth between the jBPM Context and the ESB Message. For example:
<action name="create_new_process_instance" class="org.jboss.soa.esb.services.jbpm.actions.BpmProcessor">
<property name="command" value="StartProcessInstanceCommand" />
<property name="process-definition-name" value="helloWorld"/>
<property name="esbToBpmVars">
<mapping esb="BODY_CONTENT" bpm="request" />
<mapping esb="properties.'org.jboss.soa.esb.services.security.context'" bpm="securityContext" />
</property>
</action>
Note that the dot delimited context name has single quotes around it, and is prefaced with properties, since that is where the security context is currently situated in the ESB Message. A similar mapping must be configured in the JPDL process definition ESB Service Node."
It is not possible to propagate security context in this way because it is not accessible in action pipeline (esbMessage.getContext().removeContext(SecurityService.CONTEXT); is called before processing the pipeline). Link: Added: This issue depends JBESB-2122 Not only that but the location has moved to a context area. In theory the security context should be driven by the jBPM process but this is not happening. We are therefore going to investigate some workarounds, one of which might be to use the initial context. Of course this particular suggestion does not help if the process instance is *not* created by the ESB. Release Note: JBESB-2122 Security contexts can now be propagated between ESB services and jBPM Orchestrations. Verified with CR5 and added to automated tests. |