Win a copy of Beginning Java 17 Fundamentals: Object-Oriented Programming in Java 17 this week in the Java in General forum!

Dorte Skriver

Greenhorn
+ Follow
since May 27, 2008
Cows and Likes
Cows
Total received
0
In last 30 days
0
Total given
0
Likes
Total received
0
Received in last 30 days
0
Total given
0
Given in last 30 days
0
Forums and Threads
Scavenger Hunt
expand Ranch Hand Scavenger Hunt
expand Greenhorn Scavenger Hunt

Recent posts by Dorte Skriver

All security is default, i.e. only DD (and there is no security conf in web.xml), no url-mappings or anything.
Only the default "myrealm" security realm.

11 years ago
Hi all - hope someone can help me.

I have deployed a webservice with a custom AuthenticationHandler:


When I deploy it on resin or WebSphere, everythings works fine, but when I deploy it on WebLogic, I always get a (401)Authorization Required.

WebLogic somehow "bypasses" my custom authentication implementation, when I provide credentials.

If I don't provide any credentials, I actually hit my custom authentication handler, but if i do provide credentials, it seems that WebLogic intercepts the call and tries to authenticate the provided user, which fails (as it should), and my implementation is never called.

So basically my question is: how do I stop WebLogic from trying to "take over" authentication ??

Sincerly,
Dorique
11 years ago
thanks for the comment and suggestion :-)

Right now i'm implementing something along the line with, saving the credentials in a temp file on the server, and passing the filename as a parameter (using "get"!) to the portlet.

Pretty much along the line you suggested, I think.



12 years ago
No, it probably can't - and that's my problem.

I need another app (different server), to post credentials.

My plan was to let the backingFile "intercept" the request, and authenticate the posted credentials, but I have a growing suspicion, that this is not feasible.

So right now I'm really stuck, and any ideas will be greatly appreciated.




12 years ago
I am not really sure, if this is a portal problem, since I have no clue, as to what is happening.

From a simple jsp, in my BEA-portal application, i post a parameter to /myportal.portal, but parameters are lost.
If I change the form method to "get", things work fine (except actual param-length is 4096, so it gets cut. No easy work-around here!).

This is the content of index.jsp:



12 years ago
Is there some kind of "beforeLoad/Render" mechanism in portlets, whereby you can receive a request, check credentials, and either continue loading portlet, or redirecting the user somewhere else, like a login page ??
12 years ago
I have installed the portal server including a domain, but when I try to start the AdminServer (startWeblogic.sh) I get the following error:

####<Feb 26, 2009 6:14:27 AM CET> <Critical> <WebLogicServer> <EnettetBea> <AdminServer> <main> <<WLS Kernel>> <> <> <1235625267969> <BEA-000386> <Server subsystem failed. Reason: java.lang.AssertionError: java.lang.reflect.InvocationTargetException
java.lang.AssertionError: java.lang.reflect.InvocationTargetException
at weblogic.descriptor.DescriptorManager$SecurityServiceImpl$SecurityProxy._invokeServiceMethod(DescriptorManager.java:175)
at weblogic.descriptor.DescriptorManager$SecurityServiceImpl$SecurityProxy.decrypt(DescriptorManager.java:192)
at weblogic.descriptor.DescriptorManager$SecurityServiceImpl.decrypt(DescriptorManager.java:114)
at weblogic.descriptor.internal.AbstractDescriptorBean._decrypt(AbstractDescriptorBean.java:986)
at weblogic.management.configuration.SecurityConfigurationMBeanImpl.getCredential(SecurityConfigurationMBeanImpl.java:704)
at weblogic.security.internal.ServerPrincipalValidatorImpl.getSecret(ServerPrincipalValidatorImpl.java:88)
at weblogic.security.internal.ServerPrincipalValidatorImpl.sign(ServerPrincipalValidatorImpl.java:67)
at weblogic.security.service.PrivilegedActions$SignPrincipalAction.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at weblogic.security.service.SecurityServiceManager.createServerID(Unknown Source)
at weblogic.security.service.SecurityServiceManager.getServerID(Unknown Source)
at weblogic.security.service.SecurityServiceManager.sendASToWire(Unknown Source)
at weblogic.server.channels.ChannelService.resetQOS(ChannelService.java:273)
at weblogic.server.channels.ChannelService.start(ChannelService.java:244)
at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:200)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:172)
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at weblogic.descriptor.DescriptorManager$SecurityServiceImpl$SecurityProxy._invokeServiceMethod(DescriptorManager.java:173)
at weblogic.descriptor.DescriptorManager$SecurityServiceImpl$SecurityProxy.decrypt(DescriptorManager.java:192)
at weblogic.descriptor.DescriptorManager$SecurityServiceImpl.decrypt(DescriptorManager.java:114)
at weblogic.descriptor.internal.AbstractDescriptorBean._decrypt(AbstractDescriptorBean.java:986)
at weblogic.management.configuration.SecurityConfigurationMBeanImpl.getCredential(SecurityConfigurationMBeanImpl.java:704)
at weblogic.security.internal.ServerPrincipalValidatorImpl.getSecret(ServerPrincipalValidatorImpl.java:88)
at weblogic.security.internal.ServerPrincipalValidatorImpl.sign(ServerPrincipalValidatorImpl.java:67)
at weblogic.security.service.PrivilegedActions$SignPrincipalAction.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at weblogic.security.service.SecurityServiceManager.createServerID(Unknown Source)
at weblogic.security.service.SecurityServiceManager.getServerID(Unknown Source)
at weblogic.security.service.SecurityServiceManager.sendASToWire(Unknown Source)
at weblogic.server.channels.ChannelService.resetQOS(ChannelService.java:273)
at weblogic.server.channels.ChannelService.start(ChannelService.java:244)
at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:200)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:172)
weblogic.security.internal.encryption.EncryptionServiceException: com.rsa.jsafe.JSAFE_PaddingException: Could not perform unpadding: invalid pad byte.
at weblogic.security.internal.encryption.JSafeEncryptionServiceImpl.decryptBytes(JSafeEncryptionServiceImpl.java:78)
at weblogic.security.internal.encryption.JSafeEncryptionServiceImpl.decryptString(JSafeEncryptionServiceImpl.java:94)
at weblogic.security.internal.encryption.ClearOrEncryptedService.decrypt(ClearOrEncryptedService.java:87)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at weblogic.descriptor.DescriptorManager$SecurityServiceImpl$SecurityProxy._invokeServiceMethod(DescriptorManager.java:173)
at weblogic.descriptor.DescriptorManager$SecurityServiceImpl$SecurityProxy.decrypt(DescriptorManager.java:192)
at weblogic.descriptor.DescriptorManager$SecurityServiceImpl.decrypt(DescriptorManager.java:114)
at weblogic.descriptor.internal.AbstractDescriptorBean._decrypt(AbstractDescriptorBean.java:986)
at weblogic.management.configuration.SecurityConfigurationMBeanImpl.getCredential(SecurityConfigurationMBeanImpl.java:704)
at weblogic.security.internal.ServerPrincipalValidatorImpl.getSecret(ServerPrincipalValidatorImpl.java:88)
at weblogic.security.internal.ServerPrincipalValidatorImpl.sign(ServerPrincipalValidatorImpl.java:67)
at weblogic.security.service.PrivilegedActions$SignPrincipalAction.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at weblogic.security.service.SecurityServiceManager.createServerID(Unknown Source)
at weblogic.security.service.SecurityServiceManager.getServerID(Unknown Source)
at weblogic.security.service.SecurityServiceManager.sendASToWire(Unknown Source)
at weblogic.server.channels.ChannelService.resetQOS(ChannelService.java:273)
at weblogic.server.channels.ChannelService.start(ChannelService.java:244)
at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:200)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:172)
com.rsa.jsafe.JSAFE_PaddingException: Could not perform unpadding: invalid pad byte.
at com.rsa.jsafe.JA_PKCS5Padding.a(Unknown Source)
at com.rsa.jsafe.JG_BlockCipher.decryptFinal(Unknown Source)
at weblogic.security.internal.encryption.JSafeEncryptionServiceImpl.decryptBytes(JSafeEncryptionServiceImpl.java:68)
at weblogic.security.internal.encryption.JSafeEncryptionServiceImpl.decryptString(JSafeEncryptionServiceImpl.java:94)
at weblogic.security.internal.encryption.ClearOrEncryptedService.decrypt(ClearOrEncryptedService.java:87)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at weblogic.descriptor.DescriptorManager$SecurityServiceImpl$SecurityProxy._invokeServiceMethod(DescriptorManager.java:173)
at weblogic.descriptor.DescriptorManager$SecurityServiceImpl$SecurityProxy.decrypt(DescriptorManager.java:192)
at weblogic.descriptor.DescriptorManager$SecurityServiceImpl.decrypt(DescriptorManager.java:114)
at weblogic.descriptor.internal.AbstractDescriptorBean._decrypt(AbstractDescriptorBean.java:986)
at weblogic.management.configuration.SecurityConfigurationMBeanImpl.getCredential(SecurityConfigurationMBeanImpl.java:704)
at weblogic.security.internal.ServerPrincipalValidatorImpl.getSecret(ServerPrincipalValidatorImpl.java:88)
at weblogic.security.internal.ServerPrincipalValidatorImpl.sign(ServerPrincipalValidatorImpl.java:67)
at weblogic.security.service.PrivilegedActions$SignPrincipalAction.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at weblogic.security.service.SecurityServiceManager.createServerID(Unknown Source)
at weblogic.security.service.SecurityServiceManager.getServerID(Unknown Source)
at weblogic.security.service.SecurityServiceManager.sendASToWire(Unknown Source)
at weblogic.server.channels.ChannelService.resetQOS(ChannelService.java:273)
at weblogic.server.channels.ChannelService.start(ChannelService.java:244)
at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:200)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:172)
>

and server state changeds to "FAILED"

I have a successful installation of a "normal", i.e. not portal, server on the same linux system, which start up just fine.

I thought maybe the problem was in the security configuraiton in the servers config.xml, but the <security-configuration> block in the portal server is identical to the block in the normal server.

Any suggestion will be very much appreciated!
12 years ago