AccuRev automatically distinguishes two categories of users -- those who have non-empty passwords and those whose passwords are empty. The keywords authuser and anyuser, respectively, are used by the ACL facility to designate these categories.A successful login command creates an encrypted session file that records the user's AccuRev username and password, along with the IP address of the client machine. If an AccuRev client command can be executed only by an authorized user, the command automatically sends the information in the session file to the AccuRev Server process. Thus, the user does not need to repeatedly 'remind' the AccuRev Server who (and where) he is.AccuRev also supports script-based authentication of AccuRev users. For example, customers with an LDAP authentication scheme in place at their organization could configure a script to authenticate AccuRev users via LDAP. See Chapter 9 AccuRev Security Overview in the AccuRev Administrator's Guide for further details.Each stream can have one or more locks on it. A lock prevents a certain set of users from using the stream to create new versions of elements. That is, it prevents execution of the Promote command -- either promoting from the designated stream, or promoting to the designated stream, or promoting in either direction.A lock can be absolute, applying to all users. Alternatively, you can specify that a lock applies to a particular AccuRev user, or to a particular AccuRev group. Conversely, you can specify that a lock applies to everyone except a particular AccuRev user, or to everyone except a particular AccuRev group.In addition to (or instead of) locks, each stream can have one or more permissions on it. Whereas a lock controls the ability to create new versions (through the Promote command), a permission is more general: in addition to controlling Promote, it controls the ability to read data from the stream, using such commands as Annotate, Diff, and Open. A permission also controls workspace-specific commands, such as Update and Populate.ACL permissions apply to a stream regardless of any basis time on the stream. Similarly, ACL permissions can be placed on a snapshot, even though such permissions are necessarily created after the snapshot is created.AccuRev also provides element-level ACLs, called "EACLs". An EACL is a set of permissions that controls the privileges that individual users or user groups have with respect to a particular element. EACLs can only be set by an AccuRev administrator using either the AccuRev GUI or the CLI.
GUI users can be denied access to elements or directories if an administrator has configured EACLs. Depending on the situation, you will either see an “Access Denied” error message, a (no such elem) status, or the element will be completely invisible to you, as if it does not exist:
• For commands that specify an eid, such as cat, the command will succeed if you are not denied access to that element. If you are denied access to the namespace of the element, the eid is displayed instead of the name.
• For commands that display transactions, such as hist, if you are denied access to the element in the transaction, the transaction is displayed, but “Access Denied” is displayed for the path name.
• For commands that take a transaction or issue, such as promote, if you are denied access to an element or elements in the trans or issue, the command succeeds and the elements are promoted, but the names are not displayed.
• Commands that modify workspaces, such as update and pop, will succeed even if you are denied access to some of the elements, but those elements will not be brought down to the workspace. The exception to this is if you specify the element name, such as with pop or co. In this case the command will fail as if the element doesn’t exist.
• For commands such as stat, dirstruct, and files, where you specify an option or nothing instead of an element name, if you are denied access to either the namespace or content, nothing will be displayed for that element. For example, stat –d displays all the elements in the default group of the stream. If you are denied access to an element in the default group, it will not be displayed.
• Display a (no such element) status. If your access to an element or namespace changes during a session, and you are now denied access to something that was already displayed, that element or folder will appear with the (no such element) status.For information about EACLs, see Chapter 9 AccuRev Security Overview in the AccuRev Administrator’s Guide, and the command summary for eacl of the AccuRev CLI User’s Guide.Some triggers are configured on a per-depot basis, using the mktrig command. These triggers monitor individual commands (add, keep, and promote). Three are pre-operation triggers that fire on the client machine; one is a post-operation trigger that fires on the server machine.For more on triggers, see The Triggers Tab, and also Chapter 10 AccuRev Triggers of the AccuRev Administrator’s Guide.
Micro Focus |