On 4/1/11 10:27 AM, Martynas A. (chainer) wrote:
Hello,
Okay, well I'm a bit confused here. Situation is that we have a server
somewhere which has tomcat and juddiv3. I'm writing a specific remote
juddiv3 manager (smth similar to uddi browser). So the data which
holds users with passwords lays down in a server (for a now lets say I
set up juddiv3 for '/XMLDocAuthenticator/' and that mentioned data is
'/juddi-users.xml/'). Since from my app I can reach only juddiv3
services seems like I cannot manage that 'juddi-users.xml' which is in
a server. So the only way to manage users (create, edit, delete) turns
to be from inside the server. Or do I misunderstand the purpose of
Authenticator? Is it responsible for only and only authentication and
not managing the users it is working with?
Right there is no way to manager that dynamically at the moment. Most
users only have a few publishers, or integrate with a larger system that
stores the passwords. Our Authentication classes work fine for the first
group (who manually update the users file), and the second group will
modify them so they talk to the larger system.
If not, I had a thought of writing a class which could extend
'/CryptedXMLDocAuthenticator/' and add some methods for managing
users. Since I feel I cannot do that the following ways come to my head:
1. Creating another tool which will start from inside the server and
manage that 'juddi-users.xml'
or
2. Creating a small database for holding users and their passwords
(also making my own Authenticator class and applying it for juddi),
and make a remote connection to it from my app.
or
3. Any suggestions?
Well you could decide to add a password field to the Publisher table in
jUDDI (and add that field to the API). Then you can write your
authenticator to check with this field, rather then the users file. I
think this would be pretty straightforward. If you contribute this back
we will probably add it as a DBAuthenticator.
And as I read that I can write my own class which could implement
Authenticator. How can I apply it to the juddi? Should I compile that
class to .jar and add it to the '~webapps\juddiv3\WEB-INF\lib' and
edit 'juddiv3.properties' to smth like 'juddi.authenticator =
my.random.package.MyAuthenticator'? Or do I even have to write my own
Authenticator class because I need managing users, maybe I miss
something in juddi and there is a written class already (or smth else)
to solve this problem (not talking about jboss)?
Yeah all of the above :). It's open source, just check out the 3.0.4 tag.
--Martin