1. opensymphony
  2. osuser


osuser / osuser-readme.txt

This is some primitive documentation for OSUser but it should help to get you started. For any questions please ask on the mailing list (see bottom of document for details)

1) OSUser requires ant 1.5 or later for the building and deployment of the application
2) There are several build-targets in the build.xml. The default target is named jar and basically compiles all needed sources and puts them into a .jar file
3) To deploy a test application into an application server like JBoss, please use the build target example-assemble, which will produce an .ear file in the dist directory. This file then can be deployed into the deploy directory of your application server.
4) Finally you can test your application by calling http://localhost:8080/manager (this is how it works with jboss, it can be, that you have a different port number for your AppServer)

To use OSUser in your own application, simply add the osuser.jar to application.xml.

OSUser is configured by specifying Credentials, Access and Profile providers. It's very flexible in terms of where all 3 are stored and how they are access by the application server.

The configuration is done through an xml file - see src/META-INF/osuser-default.xml for an example of the file format (this is the default configuration if no other config is specified.)

At the moment OSUser will look for the configuration file as follows:
1) Look for osuser.xml in the classpath
2) Look for META-INF/osuser.xml in the classpath
3) Look for the System property osuser.config.file and load the resource from there
4) Look for the System property osuser.config.url and load the resource from there
5) Load the default configuration from META-INF/osuser-default.xml

- There are two ways to do this, either by using an existing Orion UserManager (a) or using the UserManagerAdapter to connect Orion to existing OSUser storage providers (b).
- a) In orion-application.xml - setup a user manager (this will not work with EJBUserManager before version 1.5.4 due to bugs in it - however it will work fine with XMLUserManager or DataSourceUserManager). Then configure OSUser to use the Orion providers.
- b) In orion-application.xml add:
<user-manager class="com.opensymphony.user.provider.orion.OrionUserManager" />
then configure OSUser to use it's own storage providers (eg EJBProvider or CastorProvider)

- If you are using a different database then Oracle 8 with OSUser and JBoss, you have to change the mapping in the build.xml file from "Oracle 8" to the database you are using (e.g. Hypersonic SQL). This has to be done for the jaws.xml file in the oscore module as well. Since oscore comes in a jar file, you have to extract the META-INF/jaws.xml file, edit it and put it back into the jar file.
- Then you have to edit the auth.conf file of jboss. You have to add the following lines:

osuser {
        // The following provider is for the usage of OSUser, a part of the OpenSymphony project
        // Note that you have to add this security domain to the jboss.xml file to use it
        org.jboss.security.auth.spi.ProxyLoginModule required

Then in various security-domains (such as jboss.xml and jboss-web.xml) you may need to add a security domain of java:/jaas/osuser.

Markus May - mmay@gmx.net
Mike Cannon-Brookes - mike@atlassian.com

For questions please ask on the OSUser mailing list - see http://www.opensymphony.com