5 0 0:About Authentication and Authorization

From SEPsesam
Jump to: navigation, search
Other languages:
Deutsch • ‎English

Copyright © SEP AG 1999-2021. 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.

Docs latest icon.png Welcome to the latest SEP sesam documentation version 5.0.0 Jaglion. For previous documentation version(s), check Authentication in previous versions.


Overview

SEP sesam operations, such as backup and restore, can only be performed by users who have the appropriate permissions. SEP sesam v. 5.0.0 authentication concept - which is used to grant and restrict access to SEP sesam Server(s) and specific objects - has changed. Now only a user with Superuser privileges can configure authentication and attach permissions (ACLs) to created users.

Authentication is a two-step process. First, the identity of a user accessing a SEP sesam Server is authenticated by verifying the user credentials (username and password). After successful authentication SEP sesam checks if the authenticated user has the appropriate permissions to access a specific resource or operation within the SEP sesam Server.

Authorization is implemented through permissions based on the user type that defines the connection to the SEP sesam Server and the available GUI objects. Additionally, custom user roles can be set by configuring ACLs by a user with Superuser privileges.

Authentication methods

After the initial installation of SEP sesam, no users are configured except the Superuser. SEP sesam provides several authentication methods that are mutually exclusive (and may be version dependent): database-based authentication, which is simply called authentication, and policy-based authentication. By default, policy-based authentication is active. Note that only one authentication method can be active at a time.

Information sign.png Note
You can bypass authentication for local server for all users by setting the parameter localFullAccess in the <SESAM_ROOT>/var/ini/sm.ini file to true as described in the section below.

Database-based authentication

It allows Superusers to configure users and grant them appropriate permissions to perform SEP sesam operations by setting individual passwords and assigning users to the appropriate user group.

You can use LDAP/AD authentication in combination with database-based authentication. This way SEP sesam can authenticate users against an external LDAP/AD directory. If LDAP/AD authentication is enabled in SEP sesam and users are correctly mapped, they can log in to SEP sesam according to their entry in the LDAP/AD directory and user mapping information. For details, see Configuring LDAP/AD Authentication.

If database-based authentication is enabled, users can also authenticate with a signed certificate by simply selecting a (signed) certificate at login instead of entering a password. Note that a signed certificate can only be used for internal groups, while users from external authentication sources (LDAP/AD) can only be authenticated with a password. For details, see Configuring Certificate-Based Authentication.

The assigned user group (based on user type) determines the actions that the group members can perform. The database-based authentication can be enabled from GUI by activating authentication under the Configuration ‐> Permission Management. This is the only way to set the password for the Superuser (Administrator).

When database-based authentication is enabled, the authEnabled parameter in the <SESAM_ROOT>/var/ini/sm.ini file on the SEP sesam Server is set to true. For details on database-based permissions, see Configuring Database-Based Authentication.

Policy-based authentication

Policy-based authentication represents a traditional approach to managing user's privileges. SEP sesam GUI is based on Java and uses the sm_java.policy file to grant the required permissions. The policy file is located at <SESAM_ROOT>/var/ini/sm_java.policy, where <SESAM_ROOT> is the pathname of the SEP sesam home directory.

For policy-based authentication, the permissions are assigned to the user/host combination in the sm_java.policy file. You can also grant users the required permissions by using GUI: Main Selection -> Configuration ‐> User Permissions. For details on policy-based permissions, see Configuring Policy-Based Authentication.

Configuring localFullAccess in sm.ini

localFullAccess determines whether a user logged to the SEP sesam Server is allowed to use SEP sesam CLI and GUI without any authentication. If set to true, authentication is not required. If set to false, the authentication is mandatory for all users. SEP sesam will prompt for the username and password to log in.

If database-based authentication is enabled, the flag localFullAccess is automatically set to false. A certificate is passed from the SEP sesam command line to the SEP sesam Server, where it is verified. The certificate file is stored in <SESAM_ROOT>/var/ini/ssl.

Information sign.png Note
  • On Unix, only the system root user can access this directory and use the command line without authentication.
  • On Windows, use Windows User Account Control (UAC) to restrict access to the certificate file.

How to change the localFullAccess flag

  1. Locate the <SESAM_ROOT>/var/ini/sm.ini file on the SEP sesam Server (where <SESAM_ROOT> is the pathname of the SEP sesam home directory). Open the sm.ini file using a text editor and set the flag for the localFullAccess parameter to true.
  2. Once you have changed the settings, save your changes and restart the SEP sesam Server for the changes to take effect. The sm.ini file is preserved when you upgrade your SEP sesam Server.

Implementing authentication and authorization

After enabling the appropriate authentication method (database-based or policy-based authentication as described above), perform the following steps to manage users and implement authentication and authorization:

  1. Create new users.
  2. Add users to groups.
  3. Assign user types (roles) to the new users.
  4. In addition to user roles (and permissions based on the user type), there are several user permissions (ACLs) that you can set (assign to a role) to control access to specific resources or operations.

Authentication and authorization concept.png

Managing users

Once authentication is enabled, you can create new users and add them to groups (Superuser, Admin, Backup, Restore, or Operator). When selecting a user type (role), it represents a specific role in SEP sesam with associated permissions (e.g. Superuser has full control over SEP sesam). The permissions based on the selected user type (default permissions) control access to SEP sesam Server, a specific resource, operation, and available UI options.

Note that the procedure for managing users differs depending on the authentication method selected, so you must ensure that you follow the appropriate procedure:

Attaching user permissions

In addition to the default permissions (described above) based on the selected user type, you can also set custom user roles by configuring ACLs if you have Superuser privileges. For more details on permissions, see User Roles and Permissions.

ACLs allow you to configure permissions for each user or group with fine-grained access rights for locations, clients, backup tasks (or groups), media pools, and schedules. For example, if you assign the Restore user permission to a specific backup task, that user can start the task-specific backup. For more information, see Using Access Control Lists.