AccuRev automatically distinguishes two categories of users — those who have empty passwords, and those who have non-empty passwords. The keywords authuser and
anyuser, respectively, are used by the ACL facility to designate these categories. See
secinfo of the
AccuRev CLI User’s Guide for more information.
AccuRev supports authenticating a user through an explicit login to the AccuRev Server. Using the GUI or the CLI, the user invokes the Login command and enters his password (possibly empty). This launches a user session, which is typically of limited duration (a few hours). When the session expires, the user must login again to continue using AccuRev.
Use the MASTER_AUTHENTICATES_LOGIN parameter in the
acserver.cnf file on the master server:
As a result of these changes, the XML input to the server_auth_trig script has changed to add
server and
port elements, which should contain the hostname and port of the master server.
The server_auth_trig user-authentication script, used by the
custom user-authentication method, is similar to the
server_admin_trig administrative trigger script. A sample script, implemented in Perl, is included in the AccuRev software distribution, in the
examples subdirectory.
The script is called when a user invokes the AccuRev Login command. It executes in a subprocess of the AccuRev Server. The script’s standard input is a simple XML document, with the structure shown in this example:
The user’s Login command also fails if the script does not execute properly — for example, if a runtime error occurs or the script file is not executable.
The current user-authentication method is stored in file preferences.xml in the
site_slice directory. (Don’t confuse this with individual users’
preferences.xml files.) For example:
As an alternative to the authmethod command, you can change the user-authentication method by editing this file, then stopping and restarting the AccuRev Server process.
User authentication is performed by the add-new-user command (GUI: Add User, CLI:
mkuser). To prevent a chicken-and-egg problem, user authentication is bypassed if the AccuRev user registry is currently empty. After the first AccuRev user has been created, only an authenticated user can add users to the AccuRev user registry.