Actions

Manage users: Difference between revisions

From LimeSurvey Manual

No edit summary
No edit summary
Line 251: Line 251:
<!--T:60-->
<!--T:60-->
'''Things to watch out for:'''
'''Things to watch out for:'''
* One time passwords have to be enabled by setting "$use_one_time_passwords = true;" (for 1.92), respective "use_one_time_passwords => true" (for 2.0 in config section) in config.php.
* One-time passwords have to be enabled by setting "use_one_time_passwords => true" in [Optional settings#Use one-time passwords| config.php].
* The passed username has to exist in LimeSurvey's ''users'' table
* The passed username has to exist in LimeSurvey's ''users'' table
* The one time password, which can be set by an external application, has to be stored as [http://www.php.net/md5 MD5 hash] in column ''one_time_pw'' of table ''users''
* The one time password, which can be set by an external application, has to be stored as [http://www.php.net/md5 MD5 hash] in column ''one_time_pw'' of table ''users''

Revision as of 17:59, 8 August 2017

User management

The user management tool allows you do add additional administration users to LimeSurvey. We will call them in this chapter just 'users' . Do not confuse them with survey participants (respondents).

Create users

To create a new user, open the user management by clicking on Configuration(located on the main LimeSurvey toolbar) -> Manage survey administrators

File:LimeSurveyBenuzerVerwaltung.jpg

  • Enter the desired username into the text field Username.
  • Enter the email address into the text field Email. Please note
    • If you don't want the user to receive the confirmation email with a link to the LimeSurvey installation, username and password you can use your own email address to send the confirmation email to you. After that you can change the email address to the address of the user.
    • LimeSurvey sends out a confirmation email to the address entered into Email. This email address will be used as standard contact email address for surveys created by this user.
  • Enter the users full name into the textfield Full name. Please note
    • The full name entered here will be used as standard contact person name for surveys created by this user.
  • Click Add user

So you created a new user. You will find out more about setting user permissions if you continue reading further.

Edit users

You can use the pen symbol to edit a userː

You can set a new email address, full name and even change the password. If you have finished what you want to do click Save.

Delete users

To delete a user account simply click the trash button in the line with the user account that should be deleted and hit OK.

Global permissions

Global permissions apply to the whole LimeSurvey installation. If you want to set permissions only for a specific survey you can use the Survey permissions settings.

Setting global permissions for a user

To set global permissions for a user just click the lock symbol.

 Hint: This feature changed with version 2.05


The system use CRUD (Create, read, update and delete) like the Survey permission setttings. Checking the first input checks all the CRUD permission for that row. To fine-tune permission we strongly recommend to extend the view using the arrow button on top of the checkbox column.

You can now add or remove the following permissions.

  • SuperAdministrator: This permissions can only be added or removed by the user called admin and grants full permission to the whole LimeSurvey installation. Please note: This permissions is very powerful and you should be very careful with granting this permissions .
  • Surveys: This gives access to all surveys. To allow a user only to create and manage their own survey survey, only give the user the 'create' permission. A creator of a survey is the owner of this survey and will always be able to manage it. Remember that each survey can have specific permission, the global permission is applied before survey specific permission.
  • Settings & Plugins: With this permission a user can check data integrity, save the SQL database to an .sql file, manage global setting, view the PHP info in the global settings and manage all plugins.
  • Users: With this permission a user can create, modify and delete his own administration users. The newly created users cannot have higher permissions than the parent - also you will not be able to edit users owned by other administration. If this has to be done then a Superadmin permission has to be granted.
  • User groups: This permission allows a user to create/view/update/delete user groups.
  • Templates: It allows the user to use all design templates and edit all non standard templates. A person with this right should have sufficient knowledge in terms of  HTML, Javascript and CSS. If a user is not familar with these things and is supposed to use a specific design template it would be better to give him only acccess to read permission. Each template can have specific permissions.
  • Label sets: Permission to create, update, use (view/read) and delete label sets. The label sets don't have specific permissions (unlike design templates).

Setting template permissions for a user

With template permissions you can set which design templates a user can select when creating or editing a survey. It might be a good idea to restrict the design templates a user can select in order to prevent unwanted use of design templates not suitable for a user/survey.

Please note: If you have a specific design template for a group of users or customers you might want to restrict the access for them to use only the template created for their purpose.

To set/edit the template permissions for a user simply click the pen-and-lock symbol for design templates

You can now select the design templates this user can select. After you finished your selection/deselection just hit Save in the upper right corner:

The most important use cases for granting user rights are collected at the use cases part of this article.

Setting permissions for a single survey

These permissions only apply for a single survey. If you want to set permissions for the whole system you can use the global permissions.

Please note: An existing user account is required to set permissions for a single survey. If the account doesn't exist you have to create it first and then change the survey permissions. You don't have to apply any global rights to the user, it is just necessary that the user account itself exists.

Setting user permissions for a single survey

To change the survey permissions you have to select Survey permissions from the Survey properties menu.

In the next step you select the user you want to change the survey rights and click Add user.

After you click Set survey permissions the survey permissions matrix for the survey and user will be shown.

In this matrix you can set the rights for the different features and parts. You simply click  a checkbox if you want to add or remove this right. If you click a checkbox in the first column all rights for this line will be selected/removed.

In the other columns you can choose whether a user can do a single actions from this feature/part.

After you finished editing the survey permissions click Save or Save and close in the upper right corner.

The most important use cases for granting user rights are collected at the use cases part of this article.

Use cases

In this part of the article we'll provide a few ideas which use cases may exist and how and which rights would be a good choice.

A new person in charge for administrating LimeSurvey will be added

  • login as admin
  • Create a new user account
  • Set global permissions for user to SuperAdministrator
  • not necessary: Setting the template permissions (SuperAdministrator has all permissions for all templates)
  • not necessary: Setting the survey permissions (SuperAdministrator has all permissions for all surveys)

A new user wants to create own surveys

  • login as admin or user with SuperAdministrator permission.
  • Create a new user account
  • Set global permissions for user to Create survey
  • Set template permissions for user to the template/s that should be used by the user/user-group
  • not necessary: Setting the survey permissions (The creator of a survey has all permissions for his/her surveys)

The creator of a survey needs another person to edit his/her survey

  • login as admin or user with SuperAdministrator permission.
  • Create a new user account
  • Set no global permissions for user
  • Set no template permissions for user
  • Set the survey permissions the way you want. It depends on what the new user should do and how much permissions he/she needs. If he/she should have all permissions for the survey you can select the first checkboxes in the first column with checkboxes (the one with the << or >> button as header).

A person responsible for the survey wants to see the results of the survey and export them

  • login as admin or user with SuperAdministrator permission.
  • Create a new user account
  • Set no global permissions for user
  • Set no template permissions for user
  • Set survey permissions to: Responses: View/read and export , Statistics: View/read


To be moved somewhere else once better defined:

There are several classes of possible people who access a LimeSurvey installation.  But only one set of people is actually termed a user in the code and documentation.  So lets understand what these classes of people are so we can better understand the terminology of the program.

Class Description
Installation Administrator Those people who create login user accounts to allow others to create, edit, activate and/or view surveys and their results.  Often can be given access to edit the templates, labelsets and other key features independent of any particular survey stored.
Survey Administrator A person with a login account that is given some management access to a particular survey.  Each survey can have its own set of users with specific rights to manipulate the survey.  These rights can be as broad as to activate a survey and possibly edit its question base.  They can be as minimum as simply able to review the results to date.
Participant Those people who simply respond or participate in taking a survey.  They may or may not have token access.  They do not need a login account to the administrative interface and thus are not termed users.
Installer A special class of person who has access to the MySQL (or similar) database server and possibly the command line interface of the computers operating system in order to install and configure the survey software.  This person is asked to setup the initial SuperAdmin user account from which other user login accounts can be created.
Developer An very special class of person who has access to the source code and can manipulate it to change the programs behavior.  Generally only done with versions of the survey that are not available for live, active surveys.

Use one-time passwords

Since version 1.81 a user can call the limesurvey login at /limesurvey/admin and pass username and a one time password which was previously written into the users table (column one_time_pw) by an external application.

To enable this login method a setting has to be turned on ($use_one_time_passwords = true;) in config.php.

The URL has to contain the following variables:

  • user: The username normally used to login into LimeSurvey. This username has to exist in the 'users' table of the database.
  • onepass: The plain text password which is then compared to the password in the 'users' table

A valid URL to login using a one-time password will look like this...

... for 1.81 to 1.92:

...for 2.0 or later:

Things to watch out for:

  • One-time passwords have to be enabled by setting "use_one_time_passwords => true" in [Optional settings#Use one-time passwords| config.php].
  • The passed username has to exist in LimeSurvey's users table
  • The one time password, which can be set by an external application, has to be stored as MD5 hash in column one_time_pw of table users
  • The passed plain text password will be hashed using md5() function and will then be compared to the stored hash in column one_time_pw of table users. Both passwords have to match.
  • After the first login with the one time password this password is deleted from the database. The user won't be able to login with this password a second time.