5 0 0:Configuring Database-Based Authentication

From SEPsesam

Copyright © SEP AG 1999-2024. All rights reserved.

Any form of reproduction of the contents or parts of this manual is allowed only with the express written permission from SEP AG. When compiling and designing user documentation SEP AG uses great diligence and attempts to deliver accurate and correct information. However, SEP AG cannot issue a guarantee for the contents of this manual.

Welcome to the latest SEP sesam documentation version 4.4.3 Beefalo/5.0.0 Jaglion. For previous documentation version(s), check Documentation archive.

Overview

SEP sesam provides different authentication methods that are mutually exclusive: policy-based authentication and database-based authentication which can be combined with Lightweight Directory Access Protocol (LDAP) or/and Active Directory. Only one method (policy-based or database-based authentication) can be active at a time. By default, policy-based authentication is active.

Activating database-based authentication has to be done via the GUI to set the superuser/admin password. Note that superuser has replaced the former admin role with SEP sesam version 5.0.0 Jaglion.
After restarting SEP sesam GUI Server and Client, the superuser/admin (depending on the version) can configure default user access rights that are based on predefined user type.SEP sesam currently provides 5 user types. The following list shows the available user types and their corresponding rights.

  • Superuser (≥ Jaglion): The only user type with full control over the SEP sesam environment (previously Admin). This user type with superuser rights is automatically assigned to the Administrator and sesam users.
  • Administrator: Administrators can administer the SEP sesam system and access the GUI objects (except permission management) if not restricted by ACLs.
  • Operator: Operators can monitor the whole environment.
  • Backup (≥ Jaglion): Backup users can access the GUI objects granted by ACLs. They are allowed to start backups.
  • Restore: Restore users can access the GUI objects granted by ACLs. They are allowed to start restores.Which GUI components are displayed depends on the user type. For details, see Available interface options according to user type.

As of v. 5.0.0 Jaglion, it is also possible to authenticate users with a signed certificate instead of a user password if database-based authentication is enabled. For step-by-step procedure, see Configuring Certificate-Based Authentication.

Prerequisite

  • Make sure that reverse DNS resolution (from IP address to host name) is set up correctly. If the name resolution for the selected host is not correct, the connection to the GUI server fails. For details, see How to check DNS configuration.

Activating database-based authentication in the GUI

  1. In the GUI, from the menu bar select Configuration ‐> Permission Management.
  2. Click Activate Authentication. Set up the password for the Administrator user; note that this is the only way to set the administrator's password.

  3. After activating the authentication mode and confirming your action, SEP sesam GUI will restart automatically. You have to restart SEP sesam Client manually for the changes to take effect.

  4. LDAP/AD authentication is enabled by default. For details on how to configure LDAP/AD authentication, see Configuring LDAP/AD Authentication.
  5. You have to log in to configure users and add them to the selected group. The way you need to log in depends on the version. In v. ≥ 5.0.0 Jaglion log in as Administrator with the user type superuser. In earlier versions, log in with the administrator user type. The following user types are available: Administrators, Operators, Backup users (≥ 5.0.0 Jaglion), Restore users.
  6. You can create your own subgroups (e.g., SUB_ADMIN) to grant users more specific roles. Under the Groups tab, click Create New to configure a new subgroup. The Sub Group window opens.
  7. Specify a group name and from the drop-down list select the relevant role to be applied to the whole group: Administrator, Operator, Backup (in v. ≥ 5.0.0 Jaglion), or Restore. For more details, see User Roles and Permissions.

  8. Note
    If you want to combine LDAP/AD, you have to use the external groups. Add the group from LDAP/AD and select the Based on group option to map to this particular SEP sesam group; see Configuring LDAP authentication in the GUI.
  9. Under the Users tab, click Create New to configure a new user. The Create User window opens.
  10. Enter a name (e.g., mustermann) and a password and assign the user to the relevant group, for example, RESTORE.

  11. A user can be a member of one or more groups. Under the Groups tab, double-click the relevant group and (de)select the users to assign them to or remove them from the respective group.

  12. Now you can configure ACLs (access control lists) to specify which users or groups are granted access to location (group of clients) or a specific client. As of v. 5.0.0 Jaglion, you can also configure ACLs for backup tasks, media pools and schedules. For details, see Using Access Control Lists.
Note
When activating database-based authentication via GUI, parameter authEnabled is changed to true in the sm.ini file. Setting the flag to false enables policy-based authentication and deactivates database-based authentication.

Resetting user password

To reset the password of another user, you must have superuser/admin privileges. Resetting a password is a two-step process: The superuser/admin has to reset the password in the command line by using the sm_cmd command and then use the newly generated password to be able to change the password in the Permission Management in GUI.

Resetting the password in the command line

An access control list (ACL) is a list of permissions attached to an object (e.g., client, location, backup, etc.). The ACLs configuration in SEP sesam is version specific.

ACLs can be administered in the command line by using sm_cmd command with the appropriate superuser (previously admin) rights.

sm_cmd reset user

To reset a user password, log in to SEP sesam Server console and enter the following command:

sm_cmd reset user <ID or name>

The output of the above command is shown in the example.

Example:
In this example, the user name is mustermann.

sm_cmd reset user mustermann
C:\Program Files\SEPsesam\bin\sesam>sm_cmd reset user mustermann
bouryper39
Note
After resetting a user password in the command line, you have to change a password under the Permission Management in the GUI. For details, see Changing password in the GUI.

sm_cmd list acl

You can check all objects which have ACLs defined by using sm_cmd list acl command.
Example:
If you want to check the user ID, use list acl command (ID: 10, Name: mustermann). The output of the command is shown in the example.

G:\Jenkins\master-w86\su\src\msi>sm_cmd list acl
id      object  label   origin  value
1       2       HIGHSECURITY    Locations       [{ID: 3, Type: GROUP, Name: RESTORE, Permissions: [Access : Deny]}, 
{ID: 10, Type: USER, Name: mustermann, Permissions: [Access : Allow]}]
2       7       SEP/Hyper-V     Locations       [{ID: 3, Type: GROUP, Name: RESTORE, Permissions: [Access : Deny]}, 
{ID: 7, Type: USER, Name: restricted_user, Permissions: [Access : Deny]}, 
{ID: 5, Type: USER, Name: restore, Permissions: [Access : Allow]}] 

sm_cmd check acl

You can check the access to a specific object for a specific user by using sm_cmd check acl command together with an object ID, the object origin and a username.
Examples:

  • Check access to the locations object with ID 2 for administrators:
C:\Program Files\SEPsesam\bin\gui>sm_cmd check acl -o Locations 2
  • Check access to the locations object with ID 2 for user restore:
C:\Program Files\SEPsesam\bin\gui>sm_cmd check acl -o Locations 2 -u restore
  • Check access to the clients object with ID 0 for administrators:
C:\Program Files\SEPsesam\bin\gui>sm_cmd check acl -o Clients 0
  • Check access to the clients object with ID 0 for user restricted_user:
C:\Program Files\SEPsesam\bin\gui>sm_cmd check acl -o Clients 0 -u restricted_user

sm_cmd remove acl

You can also delete all configured ACLs by using sm_cmd remove acl all command. In this case the users get default user access rights that are based on predefined user type:


Changing password in the GUI

After resetting a user password with the sm_cmd reset user command, you can change the password for the respective user in the Permission Management in the GUI by using the automatically generated password from the command output. Note that only a superuser/admin user has sufficient permissions to use the Permission Management and configure users.

  1. From the menu bar select Configuration ‐> Permission Management. The Permission Management window opens.
  2. Select the user for which you want to reset the password and click Change. In our example, the user is named mustermann.

  3. In the Change User window, click Change Password.

  4. The Change Password window opens. Enter the password you obtained by resetting a password in the command line (in our example bouryper39), enter a new password and click OK.

Deactivating database-based authentication

  1. In the GUI, from the menu bar select Configuration ‐> Permission Management -> tab Activation.
  2. Click Deactivate Authentication.
  3. After deactivating the authentication mode and confirming your action, SEP sesam GUI will restart automatically. You have to restart SEP sesam Client manually for the changes to take effect.
  4. Now policy-based authentication is enabled and the flag authEnabled is set to false in the sm.ini file.