The services of a UTM application are represented by objects of the type Tac or Ltac. In the case of a Tac, the local UTM application provides the service itself by executing the program unit corresponding to the Tac. In the case of an Ltac, the service is provided by another application.
The services can be protected by a lock (LOCK parameter in the TAC/LTAC generation statements).
If a user wants to access a Tac that is protected by a lock then the coupler used must also possess a key for the Tac lock. In contrast, when an Ltac is accessed, only the user requires the appropriate key.
Tac queues (TAC..., TYPE=Q,...) and user queues, also count as services. In the case of queues, it is possible to set up separate protection for read and write access. This is achieved by using two different Access Lists (see below).