Hi,

I'm currently writing a JSecurity Realm which uses SSH to authenticate with a remote host. I'm extending AuthenticatingRealm to do this, and using the Trilead SSH library.

http://www.trilead.com/Products/Trilead_SSH_for_Java/

This concept is coming along nicely and works great for my use case. In particular, since my target doesn't have any LDAP or Kerberos based login functionality, SSH is a decent choice and I'm already familiar with the library.

As well, I also plan to investigate writing an Authorizer which will use the same SSH connection and essentially request the contents of /etc/group to determine roles and role memberships. I think this will be fairly trivial as well, and pretty useful again for those who don't run a network aware login server. Maybe by parsing /etc/group format into a TextConfiguration or something.

I'm also looking at a local native host authentication, probably using the Shaj project (or something similar, if you know of one).

http://opensource.cenqua.com/shaj/

OK, so now my questions:

1)  Has anyone attempted an SSH based Realm for JSecurity?

1.a If so, I'd like to not duplicate efforts and would appreciate knowing about it. I'm not seeing anything in the API like it, or reading anything on the mailing lists.

1.b If not, then I'd like to solicit feedback on the general usefulness of such a feature. I can make my code available under the ASL 2.0 for contribution (though, I need to write an abstraction since I'm currently tightly coupled with Trilead).

2) Has anyone attempted a native local authentication before? I.e. not Kerberos, LDAP, or Active Directory, but more like straight unix Crypt login or NTLM on Winders? Maybe using shaj or some other similar library? Doesn't Acegi already have something like this?

3) Any other thoughts, directions or potential speed bumps on these two Realm options?

Thanks much,

Adam Taft

Reply via email to