[jboss-jira] [JBoss JIRA] (SECURITY-789) Credential stored in Subject is not propagated to the CredentialIdentity
Paul Moore (JIRA)
issues at jboss.org
Tue Feb 11 05:19:28 EST 2014
Paul Moore created SECURITY-789:
-----------------------------------
Summary: Credential stored in Subject is not propagated to the CredentialIdentity
Key: SECURITY-789
URL: https://issues.jboss.org/browse/SECURITY-789
Project: PicketBox
Issue Type: Enhancement
Security Level: Public (Everyone can see)
Components: JBossSX
Affects Versions: PicketBox_4_0_20.Final
Environment: Darwin 13.0.2 Darwin Kernel Version 13.0.2: Sun Sep 29 19:38:57 PDT 2013; root:xnu-2422.75.4~1/RELEASE_X86_64
java version "1.7.0_15"
Java(TM) SE Runtime Environment (build 1.7.0_15-b03)
Java HotSpot(TM) 64-Bit Server VM (build 23.7-b01, mixed mode)
Wildfly-8.0.0.Final-SNAPSHOT
Reporter: Paul Moore
Assignee: Stefan Guilhen
h4. Use case
JASPI ServerAuthModule authenticates user in web layer (OAuth 2 Bearer token) and stores a "BearerCredential" in the Subject. Authentication works in the Servlet container, but fails at the service tier (EJB) because the credential is not part of the CredentialIdentity.
h4. Root cause
[JBossCallbackHandler|http://anonsvn.jboss.org/repos/picketbox/tags/4.0.20.Final/security-jboss-sx/jbosssx/src/main/java/org/jboss/security/auth/callback/JASPICallbackHandler.java] manages the mapping of Subject to Identity, but does not use credentials stored in Subject as part of the Identity creation process (PasswordValidationCallback uses callback properties directly).
Authentication at the EJB (service) tier fails because the Credential is not stored in the CredentialIdentity and is therefore unavailable to JBossSecurityContextUtil.getCredential().
h4. Approach
In discussion with asaldhan and sguilhen on IRC (#picketbox), it was agreed that:
# PicketBox source code would be (re)migrated to GitHub - asaldhan
# JASPICallbackHandler would be modified to obtain a Credential from the Subject (if available) during the CallerPrincipalCallback handling - paulkmoore
h4. Note(s)
# There is inherent tension in the mapping between Subject and Identity (SecurityContext) which may require a larger piece of work to resolve (i.e. Subject can have many Principals, many public credentials and many private credentials).
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the jboss-jira
mailing list