Actions

Manage users: Difference between revisions

From LimeSurvey Manual

No edit summary
No edit summary
Line 59: Line 59:
===Set global permissions for a user=== <!--T:14-->
===Set global permissions for a user=== <!--T:14-->


{{Alert|Global permissions apply to the whole LimeSurvey installation. If you want to set permissions only for a specific survey you can use the [Manage users#Setting permissions for a single survey|survey permissions settings.}}
{{Alert|Global permissions apply to the whole LimeSurvey installation. If you want to set permissions only for a specific survey you can use the [[Manage users#Setting permissions for a single survey|survey permissions settings]].}}


<!--T:15-->
<!--T:15-->
Line 77: Line 77:


<!--T:73-->
<!--T:73-->
* '''Participant panel''': For more details, read the [[Central participants database]] wiki.
* '''Participant panel''': For more details, read the [[Central participants database|central participants database]] wiki.


<!--T:72-->
<!--T:72-->
Line 98: Line 98:


<!--T:66-->
<!--T:66-->
* '''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.
* '''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.
 
*'''Use internal database authentication''':


*'''Use internal database authentication''': This permissions allows users to access LimeSurvey's panel via the authentication page (e.g. http://domain/admin/authentication/sa/login). If it is unchecked and the respective user tries to connect to the LimeSuvey's panel, he will get the following error: 'Internal database authentication method is not allowed for this user'.


===Set template permissions for a user=== <!--T:19-->
===Set template permissions for a user=== <!--T:19-->


<!--T:20-->
<!--T:20-->
With template permissions you can decide 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.
With template permissions, you can decide 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.


<!--T:21-->
<!--T:21-->
'''Please note:''' If you have a specific design template for a group of users or customers, you might want to restrict their access in for them to use only the template created for their purpose.
'''Please note:''' If you have a specific design template for a group of users or customers, you might want to restrict their access in for them to use only the template created for their purpose.


<!--T:22-->
<!--T:22-->
Line 118: Line 117:


<!--T:24-->
<!--T:24-->
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:
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:


<!--T:74-->
<!--T:74-->
Line 124: Line 123:


<!--T:25-->
<!--T:25-->
The most important use cases for granting user rights are collected at the '''use cases''' part of this article.
To get a proper understanding of this function, check [[Manage users#Examples|the examples provided below]].


=Setting permissions for a single survey= <!--T:26-->
=Setting permissions for a single survey= <!--T:26-->


<!--T:27-->
<!--T:27-->
These permissions only apply for a single survey. If you want to set permissions for the whole system you can use the global permissions.
These permissions only apply for a single survey. If you want to set permissions for the whole system you can use the [[Manage users#User Management#Manage users#Set global permissions for a user|global permissions]].


<!--T:28-->
<!--T:28-->
'''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.
'''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.'''


==Survey template permissions== <!--T:29-->
==Survey template permissions== <!--T:29-->


<!--T:30-->
<!--T:30-->
To change the survey permissions you have to select '''Survey permissions''' from the '''Survey properties''' menu.
To change the survey permissions you have to select '''Survey permissions''' from the '''Survey properties'''.


<!--T:31-->
<!--T:31-->
Line 143: Line 142:


<!--T:32-->
<!--T:32-->
In the next step you select the user you want to change the survey rights and click '''Add user'''.
In the next step, select the user you want to change the survey rights for and click '''Add user'''.


<!--T:33-->
<!--T:33-->
Line 155: Line 154:


<!--T:36-->
<!--T:36-->
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.
You can set in this matrix the user's survey permissions. Checking a box grants survey permissions to the respective user. If you click a checkbox from the first column, all the rights for that line will be selected/removed.  


<!--T:37-->
<!--T:37-->
In the other columns you can choose whether a user can do a single actions from this feature/part.
You can choose from the other columns which actions can be performed by the user.


<!--T:38-->
<!--T:38-->
After you finished editing the survey permissions click '''Save''' or '''Save and close''' in the upper right corner.
After you finished editing the survey permissions, click '''Save''' or '''Save and close''' in the upper right corner.


<!--T:75-->
<!--T:75-->
Line 167: Line 166:


<!--T:39-->
<!--T:39-->
The most important use cases for granting user rights are collected at the '''use cases''' part of this article.
Some examples are provided below in order to help you get a better understanding of the Limesurvey's privileges system.


=Examples= <!--T:40-->
=Examples= <!--T:40-->


<!--T:41-->
<!--T:41-->
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.
We have created different scenarios to provide some advice about which rights are necessary and how they can be granted to the users.


==A new person in charge for administrating LimeSurvey will be added== <!--T:42-->
==I want to add a new person in charge for administrating LimeSurvey== <!--T:42-->
* login as '''admin'''
* Log in as '''admin'''.
* Create a new user account
* Create a new user account.
* Set global permissions for user to '''SuperAdministrator'''
* Set global permissions for user to '''Superadministrator'''.
* not necessary: Setting the template permissions ('''SuperAdministrator''' has all permissions for all templates)
* 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)
* Not necessary: Setting the survey permissions ('''Superadministrator''' has all permissions for all surveys).


==A new user wants to create own surveys== <!--T:43-->
==A new user wants to create his/her own surveys== <!--T:43-->
* login as '''admin''' or user with '''SuperAdministrator''' permission.
* Log in as '''admin''' (or as a user that has the '''Superadministrator''' permission).
* Create a new user account
* Create a new user account.
* Set global permissions for user to '''Create survey'''
* Set global permissions for that user to '''Create survey'''.
* Set template permissions for user to the template/s that should be used by the user/user-group
* "Optional" : Set template permissions - select which template(s) 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== <!--T:44-->
==The creator of a survey needs another person to edit his/her survey== <!--T:44-->
* login as '''admin''' or user with '''SuperAdministrator''' permission.
* Log in as '''admin''' (or as a user that has the '''Superadministrator''' permission).
* Create a new user account
* Create a new user account.
* Set '''no global permissions''' for user
* Set '''no global permissions''' for user.
* Set '''no template 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).
* Set the survey permissions the way you want. If he/she should have all permissions for the survey, you can check the box from the first column. Otherwise, click on the double-right arrowhead to see the expanded matrix (upper right corner of the matrix) and check exactly the rights you believe that uses should have.


==A person responsible for the survey wants to see the results of the survey and export them== <!--T:45-->
==A person responsible for the survey wants to see the results of the survey and export them== <!--T:45-->
* login as '''admin''' or user with '''SuperAdministrator''' permission.
* Log in as '''admin''' (or as a user that has the '''Superadministrator''' permission).
* Create a new user account
* Create a new user account.
* Set '''no global permissions''' for user
* Set '''no global permissions''' for user.
* Set '''no template permissions''' for user
* Set '''no template permissions''' for user.
* Set survey permissions to: '''Responses''': '''View/read''' and '''export''' , '''Statistics''': '''View/read'''
* Set survey permissions to: '''Responses''' -> '''View/read''' and '''export''' and '''Statistics''': '''View/read'''.


<!--T:46-->
<!--T:46-->
Line 212: Line 210:


<!--T:49-->
<!--T:49-->
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.
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, let's take a loot at what these classes of people are so we can better understand the terminology of the program.


<!--T:50-->
<!--T:50-->
Line 235: Line 233:


<!--T:53-->
<!--T:53-->
To enable this login method, the line [[Optional settings#Use_one_time_passwords |<code>$use_one_time_passwords = true;</code> has to be turned on in config.php.
To enable this login method, the line [[Optional settings#Use_one_time_passwords|<code>$use_one_time_passwords = true;</code>]] has to be turned on in config.php.


<!--T:54-->
<!--T:54-->

Revision as of 15:53, 9 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 as shown below.

File:LimeSurveyBenuzerVerwaltung.jpg

Then, click on Add user button located on the top upper right of User control table. A new window will pop up, asking you to:

  • Enter the desired username into the text field Username.
  • Enter the email address into the text field Email. Please note that:
    • 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 the Email field. This email address will be used as the standard contact email address for surveys created by the respective user.
  • Enter the users full name into the textfield Full name. Please note that the full name entered here will be used as the standard contact person name for surveys created by this user.
  • Click Save to create the new user.

You have now your first user created. To find out more about setting user permissions, please continue reading further.

Manage users

As you can see below, there are four options under the Action column that allow you to:

  • edit the general aspects of a user - by clicking the pen symbol;
  • delete the user from the survey administrators database - by clicking the trash button;
  • set global permissions for a user - click the lock symbol;
  • set template permissions for a user - click the pen-and-lock symbol.

Edit user

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 user

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

Set global permissions for a user

  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.


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

The system uses CRUD (Create, read, update and delete) like the survey permission settings. If you check the first box, all the CRUD permissions for that row are automatically checked. To fine-tune a user's permissions, we strongly recommend to extend the view using the double-right arrowhead, located in the upper right corner of the matrix:

You can now add or remove the following permissions:

  • Label sets: Permission to create, view, update, delete, export, and import label sets.. The label sets don't have specific permissions (unlike design templates).
  • 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.
  • 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.
  • 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 familiar with these things and is supposed to use a specific design template it would be better to give him only access to read permission. Each template can have specific permissions.
  • User groups: This permission allows a user to create/view/update/delete user groups.
  • 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.
  • 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.
  • Use internal database authentication: This permissions allows users to access LimeSurvey's panel via the authentication page (e.g. http://domain/admin/authentication/sa/login). If it is unchecked and the respective user tries to connect to the LimeSuvey's panel, he will get the following error: 'Internal database authentication method is not allowed for this user'.

Set template permissions for a user

With template permissions, you can decide 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 their access in 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:

To get a proper understanding of this function, check the examples provided below.

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.

Survey template permissions

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

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

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

You can set in this matrix the user's survey permissions. Checking a box grants survey permissions to the respective user. If you click a checkbox from the first column, all the rights for that line will be selected/removed.

You can choose from the other columns which actions can be performed by the user.

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

Some examples are provided below in order to help you get a better understanding of the Limesurvey's privileges system.

Examples

We have created different scenarios to provide some advice about which rights are necessary and how they can be granted to the users.

I want to add a new person in charge for administrating LimeSurvey

  • Log in 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 his/her own surveys

  • Log in as admin (or as a user that has the Superadministrator permission).
  • Create a new user account.
  • Set global permissions for that user to Create survey.
  • "Optional" : Set template permissions - select which template(s) should be used by the user/user-group.

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

  • Log in as admin (or as a user that has the 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. If he/she should have all permissions for the survey, you can check the box from the first column. Otherwise, click on the double-right arrowhead to see the expanded matrix (upper right corner of the matrix) and check exactly the rights you believe that uses should have.

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

  • Log in as admin (or as a user that has the 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 and 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, let's take a loot at 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, label sets 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

A user can call the LimeSurvey login at /limesurvey/admin and pass a 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, the line $use_one_time_passwords = true; has to be turned on 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:

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 via 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 sha256 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, it gets deleted from the database. The user won't be able to login anymore with that respective password a second time.