Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
| admin:managing_users [2024/09/03 10:52] – [Adding a group] Gary Willetts | admin:managing_users [2025/11/04 05:14] (current) – [Sync user across all login stores] Mark Glover | ||
|---|---|---|---|
| Line 2: | Line 2: | ||
| ====== 25.15. Managing users ====== | ====== 25.15. Managing users ====== | ||
| ===== About users and groups ===== | ===== About users and groups ===== | ||
| + | mSupply has a comprehensive system of controlling user access, allowing you to manage in fine detail what each user can do and see in the system. You can manage users individually, | ||
| + | |||
| User permissions are per-store, so a user can have different permissions when logged into different stores. | User permissions are per-store, so a user can have different permissions when logged into different stores. | ||
| - | If you have many users that need to have the same permissions (because they carry out the same role, for example), | + | If you have many users that need to have the same permissions (because they carry out the same role, for example), |
| - | <WRAP center round tip 95%> | + | ==== Users and sync ==== |
| - | If you want to change | + | A few points |
| - | * Edit the user, change | + | * Users are // |
| - | * Open the user again and their permissions will be editable. | + | * // |
| - | Refer to [[admin: | + | * Users can be created and edited on a Legacy mSupply remote site. Name details of any newly created user on a remote site will sync back to the Legacy mSupply Central server. |
| - | </WRAP> | + | * As of 2025-07-28, users can not be created or permissions |
| - | <WRAP center round important 95%> | ||
| - | If you want to disable a user, perhaps because the staff member has left the organisation, | ||
| - | * Edit the user, uncheck the **Active** checkbox, click **OK**. | ||
| - | |||
| - | If the **Active** checkbox is greyed out, it is because they are a member of a group. You will need to first remove them from the group before you can make them ' | ||
| - | * Edit the user, change the **Is a member of** to '' | ||
| - | * Edit the user, uncheck the **Active** checkbox, click **OK**. | ||
| - | |||
| - | Of course, if the whole group of users needs to be made inactive then you can just uncheck the **Active** checkbox for the group. | ||
| - | </ | ||
| ===== Adding and editing users and groups ===== | ===== Adding and editing users and groups ===== | ||
| - | mSupply has a comprehensive system of controlling user access, allowing you to manage in fine detail what each user can do and see in the system. You can manage users individually, | ||
| User access is managed by choosing **File > Edit users** from the menus, or by choosing **Admin > Edit users** in the Navigator. When clicking on this option you are presented with a list of current users: | User access is managed by choosing **File > Edit users** from the menus, or by choosing **Admin > Edit users** in the Navigator. When clicking on this option you are presented with a list of current users: | ||
| Line 52: | Line 43: | ||
| ===== User details window ===== | ===== User details window ===== | ||
| + | <WRAP center round tip 95%> | ||
| + | If you want to change a user's permissions and find out that all their permissions are greyed out and uneditable then it means they are a member of a group. To edit their permissions separately from the group, they must first be removed from the group: | ||
| + | * Edit the user, change the **Is a member of** drop down list to '' | ||
| + | * Open the user again and their permissions will be editable. | ||
| + | Refer to [[admin: | ||
| + | </ | ||
| {{ : | {{ : | ||
| Line 68: | Line 65: | ||
| === Active === | === Active === | ||
| If this checkbox is checked, then that user has permission to use the system, and their name will appear in the login window. If this checkbox is unchecked the user will not be allowed to login to the system and their name will not appear in the login window. | If this checkbox is checked, then that user has permission to use the system, and their name will appear in the login window. If this checkbox is unchecked the user will not be allowed to login to the system and their name will not appear in the login window. | ||
| + | <WRAP center round important 95%> | ||
| + | If you want to disable a user, perhaps because the staff member has left the organisation, | ||
| + | * Edit the user, uncheck the **Active** checkbox, click **OK**. | ||
| + | |||
| + | If the **Active** checkbox is greyed out, it is because they are a member of a group. You will need to first remove them from the group before you can make them ' | ||
| + | * Edit the user, change the **Is a member of** to '' | ||
| + | * Edit the user, uncheck the **Active** checkbox, click **OK**. | ||
| + | |||
| + | Of course, if the whole group of users needs to be made inactive then you can just uncheck the **Active** checkbox for the group. | ||
| + | </ | ||
| === Can be responsible officer === | === Can be responsible officer === | ||
| Line 123: | Line 130: | ||
| === Buttons on the Permissions tabs === | === Buttons on the Permissions tabs === | ||
| - | * The //Store// drop down list: Selects the store for which permissions are being displayed and set on the current tab. Select the store you want to see or set permissions for in this drop down list. | + | == Store == |
| - | * The **All on** button: Checks all the permissions on the current tab i.e. turns them all on. There are exceptions to this for safety reasons; the //Update pack size, cost and sell price//, //Add/edit users// and //Access server administration// | + | |
| - | * The **Copy** button: Copies the state of all the checkboxes on the tab for this store to an internal clipboard for that tab. From version 5.03 onwards, the button opens this window:{{ : | + | |
| - | * In the // | + | |
| - | * In the table, select the stores you want to copy the permissions of the current store to by checking them in the // | + | |
| - | * Click the **OK** button to copy the selected permissions tabs of the current store to the selected stores. Click the **Cancel** button to close the window without doing anything. | + | |
| - | * The **Paste** button: Only exists | + | The **Store** drop down list allows you to select the store for which permissions are being displayed and set on the current tab.<WRAP tip center round 90%> |
| + | You can type in the drop down list. If you do this, when you click on the down arrow to open it, you will only be shown stores in the list which start with what you typed. Or, if you prefix it with the mSupply wildcard character, " | ||
| + | </ | ||
| + | |||
| + | == All on == | ||
| + | The **All on** button turns on all the permissions on the current | ||
| + | |||
| + | == Copy == | ||
| + | |||
| + | The **Copy** button copies the permission for this store to an internal clipboard. | ||
| + | - In the // | ||
| + | | ||
| + | - Click the **OK** button to copy the selected permissions tabs of the current store to the selected | ||
| + | === Permissions === | ||
| Most of the permissions are self explanatory. Those that need more explanation are given below: | Most of the permissions are self explanatory. Those that need more explanation are given below: | ||
| Line 141: | Line 156: | ||
| | Access server administration | If this is checked the user will be able to access the server administration windows, as described on the [[admin: | | Access server administration | If this is checked the user will be able to access the server administration windows, as described on the [[admin: | ||
| | Add/edit sync sites | If checked the user is able to edit site settings in a synchronisation system (see the [[synchronisation: | | Add/edit sync sites | If checked the user is able to edit site settings in a synchronisation system (see the [[synchronisation: | ||
| - | | Disallow adding an unordered item to a Goods Received note | If checked the user is **not** able to add items to a goods received note that are not included on a purchase order (see the [[receiving_goods: | + | | Disallow adding an unordered item to a Goods Received note | If checked the user is **not** able to add items to a goods received note that are not included on a purchase order (see the [[receiving_goods: |
| | **Permissions (2) Tab** || | | **Permissions (2) Tab** || | ||
| + | | Add patients | If checked, the user can add new patients into the system | | ||
| + | | Edit patient details | If checked, the user can edit the details of patients already entered into the system. Of course, this means they can also view the details of patients in the system | | ||
| + | | View patients | If checked, the user can view patients' | ||
| | Change transportation dates on finalised invoice | If checked, the user can edit the **Order written date**, **Order received date**, **Expected arrival date**, **Actual arrival date** and **Ship date** fields on the //Transport details// tab of finalised customer invoices | | | Change transportation dates on finalised invoice | If checked, the user can edit the **Order written date**, **Order received date**, **Expected arrival date**, **Actual arrival date** and **Ship date** fields on the //Transport details// tab of finalised customer invoices | | ||
| | Edit user fields on finalised invoices | The user fields are the 4 custom transaction fields that can be enabled in the preferences - see [[preferences: | | Edit user fields on finalised invoices | The user fields are the 4 custom transaction fields that can be enabled in the preferences - see [[preferences: | ||
| Line 172: | Line 190: | ||
| {{ : | {{ : | ||
| - | To enable a partuclar | + | To enable a particular |
| - | + | ||
| - | **Show notifications window on login**: If this is checked, as soon as a user logs in, the notifications window (displaying all the notifications they have selected in the table above), will be displayed for them. If this is unchecked, the notifications window will only be shown when the user click on the notifications icon on the Navigator: | + | |
| + | **Show notifications window on login**: If this is checked, as soon as a user logs in, the notifications window (displaying all the notifications they have selected in the table above), will be displayed for them. If this is unchecked, the notifications window will only be shown when the user clicks on the notifications icon on the Navigator: | ||
| {{ : | {{ : | ||
| - | <WRAP center round important 60%> | ||
| - | The notifications displayed | + | Please note that the notifications displayed |
| - | </ | + | |
| + | **Show cold chain breach alerts**: If this is checked the user will see temperature breach alerts (in the store in the **Store** drop down list above the table - this is a per store permission) passed to mSupply by the cold chain app (see [[https:// | ||
| - | ==== omSupply | + | ==== Open mSupply |
| - | {{ : | + | {{ : |
| This tab contains permissions that only affect Open mSupply users. Currently Open mSupply must connect to an existing mSupply server, which takes care of the authentication and synchronisation. Soon, when we've re-written the central synchronisation server in Open mSupply, there will be no need for this tab. Until then, permissions that only apply to users of Open mSupply will appear on this tab. | This tab contains permissions that only affect Open mSupply users. Currently Open mSupply must connect to an existing mSupply server, which takes care of the authentication and synchronisation. Soon, when we've re-written the central synchronisation server in Open mSupply, there will be no need for this tab. Until then, permissions that only apply to users of Open mSupply will appear on this tab. | ||
| Line 193: | Line 209: | ||
| ^ Permission ^ Details ^ | ^ Permission ^ Details ^ | ||
| | Can confirm internal order as sent | If checked then the user can // | | Can confirm internal order as sent | If checked then the user can // | ||
| + | | Cold chain API access | If checked then the username and password of this user can be used to access the cold chain REST API built into Open mSupply. | | ||
| + | | Can modify central data | If checked then the user can edit settings that are counted as central data in Open mSupply e.g. demographics indicators. | | ||
| + | | Program permissions | This section is used to define which programs this user is allowed to view or edit data for. The table will contain a list of all the Open mSupply programs that have been setup in the datafile and there will be checkboxes for each in the //View// and //Edit// columns.\\ \\ Click on the appropriate checkboxes to check them and give the user the appropriate permissions.\\ The **Toggle view** and **Toggle edit** buttons check or uncheck all the checkboxes in the //View// and //Edit// columns respectively.\\ \\ If the list of programs is long you can type something in the //Search programs// box to make the list display programs that contain what you typed only. | | ||
| ==== Login rights tab ==== | ==== Login rights tab ==== | ||
| On this tab you set which stores the user can login to: | On this tab you set which stores the user can login to: | ||
| Line 216: | Line 235: | ||
| * The " | * The " | ||
| * " | * " | ||
| + | |||
| + | === Sync user across all login stores === | ||
| + | |||
| + | The **Sync user across all login stores** checkbox is only displayed if the currently logged in user is designated as a ' | ||
| + | As you can imagine, **Sync user across all login stores** is a powerful feature, and can have unintended consequences. | ||
| + | </ | ||
| + | |||
| + | |||
| + | <WRAP center round important 60%> | ||
| + | **Sync user across all login stores** will propagate: | ||
| + | * Group permissions | ||
| + | * User group membership (which group the user is a member of) | ||
| + | * User permissions, | ||
| + | * User store login permissions | ||
| + | |||
| + | **Sync user across all login stores** will <wrap em> | ||
| + | * User deletion | ||
| + | * Group deletion | ||
| + | |||
| + | Deleting the user or group on remote sites must be carried out by either of: | ||
| + | * Manually logging in to those sites and editing users, or | ||
| + | * Development and execution of custom ' | ||
| + | </ | ||
| ==== Details tab ==== | ==== Details tab ==== | ||
| Line 253: | Line 295: | ||
| Note that you won't be able to delete a group that has users belonging to it. If you really want to delete the group, remove all users from the group first by editing their //Is a member of// fields. | Note that you won't be able to delete a group that has users belonging to it. If you really want to delete the group, remove all users from the group first by editing their //Is a member of// fields. | ||
| - | ===== Managing and using groups ===== | + | ===== User groups ===== |
| mSupply allows for a high granularity of user permission configuration. | mSupply allows for a high granularity of user permission configuration. | ||
| Line 264: | Line 306: | ||
| <WRAP center round important 60%> | <WRAP center round important 60%> | ||
| - | A user can have permission to view or edit data while logged in to a particular store, either directly or through membership of a group. | + | A user can have permission to view or edit data while logged in to a particular store, either directly or through membership of a group. |
| + | This can be very helpful if you have a common set of permissions that you want a class of users to have, and this class of user exists in hundreds of stores. | ||
| + | - Log in to one store and configure an **OIC** group with all the necessary OIC permissions | ||
| + | - [[admin: | ||
| + | - Create an OIC user for each store, make them a member of the **OIC** group | ||
| + | - Configure them to be able to have [[admin: | ||
| </ | </ | ||
| Line 284: | Line 331: | ||
| ==== Editing a group ==== | ==== Editing a group ==== | ||
| - | First, show the list of groups by opening the "Edit user" window and then choosing " | + | First, show the list of groups by opening the "Edit user" window and then choosing " |
| - | {{ : | + | {{ : |
| Then double click on a group in the list. The same window as for adding a group opens but it is populated with the group' | Then double click on a group in the list. The same window as for adding a group opens but it is populated with the group' | ||
| + | |||
| + | === Active users and groups === | ||
| + | All permissions and most checkbox settings in a user settings are controlled by the group. One exception is login rights to different stores (managed for each user individually). Another exception is whether a user is active or not (active means that they are allowed to login to mSupply). By default, the active status of a group does not set the active status of all users in the group to match. However, you can make all users in a group inactive by editing the group and clicking on the **Update status for all members** button: | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | When you click on the **Active** checkbox for a group it does nothing except changee the state of the checkbox. However, when you click on the **Update status for all members** button, all members of the group have their //Active// status set to that of the checkbox in this group. | ||
| ==== Using groups ==== | ==== Using groups ==== | ||