Yes, same issue.
On Tue, Sep 27, 2011 at 3:26 PM, Kurt T Stam <[email protected]> wrote: > Sounds like you maybe running into: > https://issues.apache.org/jira/browse/JUDDI-529 > > > > On 9/27/11 5:09 PM, S K wrote: >> >> I resolved this problem - partially. >> >> >> I switched the UserId to : >> >> try { >> String clazz = >> UDDIClientContainer.getUDDIClerkManager(null). >> >> getClientConfig().getUDDINode("default").getProxyTransport(); >> Class transportClass = ClassUtil.forName(clazz, >> Transport.class); >> if (transportClass!=null) { >> Transport transport = (Transport) >> transportClass.getConstructor(String.class).newInstance("default"); >> UDDISecurityPortType security = >> transport.getUDDISecurityService(); >> >> >> GetAuthToken getAuthToken = new >> GetAuthToken(); >> getAuthToken.setUserID("CN=LDAP >> SEARCH,CN=Managed Service >> Accounts,DC=mydomain,DC=net"); >> getAuthToken.setCred("mysecret"); >> AuthToken authToken = >> security.getAuthToken(getAuthToken); >> System.out.println("User token " >> +authToken.getAuthInfo()); >> assertTrue(authToken.getAuthInfo() != >> null); >> >> } >> } >> catch (Exception e) { >> e.printStackTrace(); >> } >> >> >> >> Then I noticed that the -- the user was being authenticated by tailing >> the juddi.log >> >> But I noticed that the isLdapUser is set to false at the beginning of >> authenticate but is never set to true at the end of the try block. >> >> Thus, it always throws an the UnknownUserException with >> errors.auth.NoPublisher >> >> >> >> On Tue, Sep 27, 2011 at 9:58 AM, S K<[email protected]> wrote: >>> >>> Hi Kurt, >>> >>> I am not familiar with Soap-UI -- but I am using another simplier >>> approach to testing juddi connection with my LDAP. >>> >>> I built a simple junit test function that -- if using the default >>> authenticator -- would authenticate successfully.. >>> >>> But if I changed the juddiv3.properties to point to my LDAP server (as >>> described the initiail email in the thread) -- I get the same error. >>> >>> I have attached a tgz containing the simple junit (maven based) test >>> function to obtain the authToken. >>> >>> ------------------------------------------------------- >>> log4j:WARN No appenders could be found for logger >>> (org.apache.juddi.v3.client.co >>> nfig.UDDIClientContainer). >>> log4j:WARN Please initialize the log4j system properly. >>> T E S T S >>> ------------------------------------------------------- >>> log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for >>> more in >>> fo. >>> Running com.sk92129.SimpleUserAuthenticationTest >>> javax.xml.ws.soap.SOAPFaultException: The user provided does not have a >>> publishi >>> ng account: root >>> at >>> com.sun.xml.internal.ws.fault.SOAP11Fault.getProtocolException(SOAP11 >>> Fault.java:178) >>> at >>> com.sun.xml.internal.ws.fault.SOAPFaultBuilder.createException(SOAPFa >>> ultBuilder.java:119) >>> at >>> com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(SyncMetho >>> dHandler.java:108) >>> at >>> com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(SyncMetho >>> dHandler.java:78) >>> at >>> com.sun.xml.internal.ws.client.sei.SEIStub.invoke(SEIStub.java:107) >>> at $Proxy43.getAuthToken(Unknown Source) >>> at >>> com.sk92129.SimpleUserAuthenticationTest.testSimpleAuthentication(Sim >>> pleUserAuthenticationTest.java:49) >>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >>> at >>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. >>> java:39) >>> at >>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces >>> sorImpl.java:25) >>> at java.lang.reflect.Method.invoke(Method.java:597) >>> at >>> org.junit.internal.runners.TestMethodRunner.executeMethodBody(TestMet >>> hodRunner.java:99) >>> at >>> org.junit.internal.runners.TestMethodRunner.runUnprotected(TestMethod >>> Runner.java:81) >>> at >>> org.junit.internal.runners.BeforeAndAfterRunner.runProtected(BeforeAn >>> dAfterRunner.java:34) >>> at >>> org.junit.internal.runners.TestMethodRunner.runMethod(TestMethodRunne >>> r.java:75) >>> at >>> org.junit.internal.runners.TestMethodRunner.run(TestMethodRunner.java >>> :45) >>> at >>> org.junit.internal.runners.TestClassMethodsRunner.invokeTestMethod(Te >>> stClassMethodsRunner.java:71) >>> at >>> org.junit.internal.runners.TestClassMethodsRunner.run(TestClassMethod >>> sRunner.java:35) >>> at >>> org.junit.internal.runners.TestClassRunner$1.runUnprotected(TestClass >>> Runner.java:42) >>> at >>> org.junit.internal.runners.BeforeAndAfterRunner.runProtected(BeforeAn >>> dAfterRunner.java:34) >>> at >>> org.junit.internal.runners.TestClassRunner.run(TestClassRunner.java:5 >>> 2) >>> at >>> org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet. >>> java:35) >>> at >>> org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4 >>> Provider.java:115) >>> at >>> org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider >>> .java:97) >>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >>> at >>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. >>> java:39) >>> at >>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces >>> sorImpl.java:25) >>> at java.lang.reflect.Method.invoke(Method.java:597) >>> at >>> org.apache.maven.surefire.booter.ProviderFactory$ClassLoaderProxy.inv >>> oke(ProviderFactory.java:103) >>> at $Proxy0.invoke(Unknown Source) >>> at >>> org.apache.maven.surefire.booter.SurefireStarter.invokeProvider(Suref >>> ireStarter.java:150) >>> at >>> org.apache.maven.surefire.booter.SurefireStarter.runSuitesInProcess(S >>> urefireStarter.java:91) >>> at >>> org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java: >>> 69) >>> Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 1.763 sec >>> >>> Results : >>> >>> Tests run: 1, Failures: 0, Errors: 0, Skipped: 0 >>> >>> >>> On Tue, Sep 27, 2011 at 5:37 AM, Kurt T Stam<[email protected]> wrote: >>>> >>>> Hi SK, >>>> >>>> 1. I would first try to just get the juddi-server to work with the LDAP >>>> and >>>> send some >>>> requests in using SOAP-UI, to see if you can get a security token. See >>>> also >>>> >>>> http://juddi.apache.org/docs/3.x/userguide/html/chap-Authentication.html#sect-LDAP_Authentication >>>> >>>> 2. That said it looks like you are using the 'uddi' user. This is a >>>> restricted publisher >>>> who owns all the uddi tmodels. You should not be using this user, but >>>> rather >>>> create your own. Or use the 'root' user until then. >>>> >>>> 3. Once you get that to work we can make sure the portal works too. The >>>> trick there is >>>> that the login credentials need to be passed on from the portal to the >>>> UDDI >>>> logon, so there >>>> may be some additional gotchas to overcome there. So start with (1) >>>> first. >>>> >>>> Cheers, >>>> >>>> --Kurt >>>> >>>> On 9/26/11 8:12 PM, S K wrote: >>>>> >>>>> Hi, >>>>> >>>>> I am attempting to configure the juddi 3.1.0 pluto portal to use the >>>>> LDAP v3 interface that is accessible with MS Active Directory. >>>>> >>>>> I changed the juddiv3.properties in the >>>>> <juddi-portal>/webapps/juddiv3/WEB-INF/classes and in >>>>> <juddi-portal>/webapps/uddi-portlets/WEB-INF/classes >>>>> >>>>> # jUDDI Authentication module to use >>>>> #juddi.authenticator = org.apache.juddi.v3.auth.JUDDIAuthenticator >>>>> juddi.authenticator=org.apache.juddi.v3.auth.LdapSimpleAuthenticator >>>>> juddi.authenticator.url=ldap://myldapserver.net:389 >>>>> >>>>> >>>>> I am able to use JXplorer to browse that same LDAP server (using the >>>>> same port, LDAP v3, User+Password, a password, and a User DN >>>>> containing DC=something,DC=net >>>>> >>>>> When I log into the juddi pluto portal, I can get authenticated at the >>>>> front. >>>>> But when I click on any of the portlet links, for example, the jUDDI, >>>>> jUDDI Subscriptions, jUDDI Admin, the browser reports an error related >>>>> this juddi.log entry (below) >>>>> >>>>> If I use uddi/uddi as userid and password, I get this error. If I >>>>> use an actual user entry, I cannot log into the main juddi pluto >>>>> portal -- reports that the user cannot be authenticated. >>>>> >>>>> >>>>> Can someone point to me some additional LDAP configuration required for >>>>> JUDDI ? >>>>> >>>>> I saw this jira related items but they are either too old, incomplete, >>>>> or related to the novell LDAP. >>>>> >>>>> https://issues.apache.org/jira/browse/JUDDI-405 >>>>> https://issues.apache.org/jira/browse/JUDDI-399 >>>>> https://issues.apache.org/jira/browse/JUDDI-16 >>>>> https://issues.apache.org/jira/browse/JUDDI-15 >>>>> https://issues.apache.org/jira/browse/JUDDI-317 >>>>> >>>>> >>>>> 2011-09-26 15:12:20,758 INFO >>>>> [org.apache.juddi.v3.auth.LdapSimpleAuthenticator] - uddi is >>>>> authenticated >>>>> 2011-09-26 15:12:20,789 ERROR >>>>> [org.apache.juddi.portlets.server.service.SecurityServiceImpl] - Could >>>>> not obtain token. The user provided does not have a publishing >>>>> account: uddi >>>>> javax.xml.ws.soap.SOAPFaultException: The user provided does not have >>>>> a publishing account: uddi >>>>> at >>>>> >>>>> com.sun.xml.ws.fault.SOAP11Fault.getProtocolException(SOAP11Fault.java:188) >>>>> at >>>>> >>>>> com.sun.xml.ws.fault.SOAPFaultBuilder.createException(SOAPFaultBuilder.java:130) >>>>> at >>>>> >>>>> com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:119) >>>>> at >>>>> >>>>> com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:89) >>>>> at com.sun.xml.ws.client.sei.SEIStub.invoke(SEIStub.java:118) >>>>> at $Proxy95.getAuthToken(Unknown Source) >>>>> at >>>>> >>>>> org.apache.juddi.portlets.server.service.SecurityServiceImpl.login(SecurityServiceImpl.java:130) >>>>> at >>>>> >>>>> org.apache.juddi.portlets.server.service.SecurityServiceImpl.get(SecurityServiceImpl.java:81) >>>>> 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:597) >>>>> at >>>>> >>>>> com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:527) >>>>> at >>>>> >>>>> com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall(RemoteServiceServlet.java:164) >>>>> at >>>>> >>>>> com.google.gwt.user.server.rpc.RemoteServiceServlet.doPost(RemoteServiceServlet.java:86) >>>>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:637) >>>>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) >>>>> at >>>>> >>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) >>>>> at >>>>> >>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) >>>>> at >>>>> >>>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) >>>>> at >>>>> >>>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) >>>>> at >>>>> >>>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) >>>>> at >>>>> >>>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) >>>>> at >>>>> >>>>> org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:421) >>>>> at >>>>> >>>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) >>>>> at >>>>> >>>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298) >>>>> at >>>>> >>>>> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852) >>>>> at >>>>> >>>>> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588) >>>>> at >>>>> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) >>>>> at java.lang.Thread.run(Thread.java:662) >>>> > >
