Custom Authentication
Overview
To implement an arbitrary form of Authentication and Authorization for FishEye you need to provide a class which extends com.cenqua.fisheye.user.plugin.AbstractFishEyeAuthenticator . More information regarding custom FishEye Authorization can be found in the JavaDoc or the Zip archive. .
For FishEye to use the Authenticator, it must be compiled, placed in a jar archive and then put in the $FISHEYE_INST/lib directory. If other 3rd party libraries are required by your Authenticator, they must also be in the $FISHEYE_INST/lib directory.
Global Configuration
After implementing a custom Authenticator, the next step is to configure FishEye to use it. Click the "Setup Custom authentication" link on the "Users/Security" page. You will be presented with a form containing the following fields to be set:
| Classname | The fully qualified classname of your AbstractFishEyeAuthenticator. e.g. com.cenqua.fisheye.user.plugin.ExampleFishEyeAuthenticator . |
| Cache TTL (positive) | How long FishEye should cache permission checks. Example values are: 0 secs , 5 mins . |
| Auto-add | FishEye can automatically create a user it has not previously encountered if the user can successfully authenticate against your Authenticator. |
| Properties |
Any properties your Authenticator requires. These will be passed to it's
init()
method. This field should comply with the java.util.Properties
format.
e.g.
# comments name1=value1 name2=value2 |
Per-Repository Constraint Configuration
You may also require a per-repository contraint to restrict access to specific repositories using your custom authenticator. If a custom authenticator is set, then the Permissions Summary table will display the constraint per repository and a link to enable you to edit it.
