Hmm, i was able to trace down the problem by enabling tracing:
<logging traceSpecification="com.ibm.ws.security.*=all:com.ibm.ws.webcontainer.security.*=all"/>
I found the following exeption:
com.ibm.ws.security.registry.EntryNotFoundException: uid=KARSTEN,type=Person,scope=LTPA does not exist
at com.ibm.ws.security.registry.basic.internal.BasicRegistry.getUserSecurityName(BasicRegistry.java:506)
So, user cannot be automatically authenticated because the user id "uid=KARSTEN,type=Person,scope=LTPA" does not exist. Thats true, only user "KARSTEN" does exists. There seems to be a regex matching problem because the used pattern
java.util.regex.Matcher[pattern=([^:]+):(\QMyRealm\E)/(.*) region=0,49 lastmatch=user:MyRealm/uid=KARSTEN,type=Person,scope=LTPA]
does not only match the user id but the whole string including "type=Person" etc.
When i create this user in basic registry:
<basicRegistry id="basic" ... >
...
<user name="uid=KARSTEN,type=Person,scope=LTPA" password="test" />
...
</basicregistry>
everything works like expected!
Seems to be a bug in WLP (or our WebSphere 8.0.x SSO infrastructure provides a non standard identifier for users).
((Pattern specified in com.ibm.ws.security.AccessIdUtil.setSecurityService():38 ~))