GLPI features requests on userecho has been discontinued, please use https://github.com/glpi-project/roadmap/discussions to submit your suggestions
Restricting Asset Visibility in Tickets and Enabling Auto-Assignment of User Assets in GLPI 11
I am part of the Development Team. While configuring GLPI version 11, I noticed that as a normal user, I am able to view the asset details of all users in the ticket section.
I would like to restrict this functionality. My requirement is:
-
When a user creates a ticket, they should only be able to view their own asset details.
-
If a ticket is raised on behalf of another user, the corresponding user’s asset details should be automatically linked or assigned to that ticket.
Is this configuration possible in GLPI? Could someone please guide me on how to achieve this?
Limit profiles for users to create other users with
Our situation is probably a less common one. I'm testing GLPI in our organisation to see if it's a good fit for us.
I haven't seen this option to be available elsewhere, but we would definitely benefit if an option as the following would be implemented.
Our IT Helpdesk mostly helps existing clients, but sometimes an unknown person asks our Helpdesk for help. It would be great if the Helpdesk could create users. I can already give them create users permissions, but if I give them this permission, they are also allowed to create other Helpdesk users, which is something I don't want. I've created a Profile specifically for SSP users and my Helpdesk colleagues get an account with the Helpdesk Profile. I would like to limit helpdesk employees to only be able to create users with the SSP profile.
If this is already possible, I can't find the option.
Edited because there was something wrong in my earlier statement.
Console command to encrypt a secret
When using Ops tools such as Ansible to install/manage GLPI we can use the Console (`bin/console`) to perform some configuration using the "config:set" command.
But when, setting a secret such as the inventory credentials ("basic_auth_password" key in "inventory" context) we must provide it encrypted because the console will store it as-is in database and application expect it to be encrypted when it'll fetch it from there.
For example the following command:
bin/console \
config:set \
--context=inventory \
basic_auth_password \
secret_password
Will create/update the following row in `glpi_configs` table:
+-----+-----------+---------------------+-----------------+
| id | context | name | value |
+-----+-----------+---------------------+-----------------+
| 420 | inventory | basic_auth_password | secret_password |
+-----+-----------+---------------------+-----------------+
SQL query:
SELECT * FROM `glpi_configs` WHERE `context` = 'inventory' and `name` = 'basic_auth_password';
While setting this password via the GUI (path = "/Inventory/Configuration") creates/updates the following row in `glpi_configs` table:
+-----+-----------+---------------------+---------------------------------------------------------------------------+
| id | context | name | value |
+-----+-----------+---------------------+---------------------------------------------------------------------------+
| 420 | inventory | basic_auth_password | abcdefghijklmnopqrstuvwxyz0123456789+abcdefghijklmnopqrstuvwxyz0123456789 |
+-----+-----------+---------------------+---------------------------------------------------------------------------+
Having a new command to call GLPIKey::encrypt() directly such as, for example:
bin/console security:encrypt secret_password # Returns: # abcdefghijklmnopqrstuvwxyz0123456789+abcdefghijklmnopqrstuvwxyz0123456789
We could use it like this:
bin/console \
config:set \
--context=inventory \
basic_auth_password \
"$(bin/console security:encrypt secret_password)"
Add "was changed" Comparison Operator for Ticket Business Rules
### Problem
Currently, Business Rules for tickets in GLPI allow conditions based on field values (e.g., *is*, *is not*, *contains*, etc.).
However, there is no comparison operator such as:
> **"was changed"**
This makes it impossible to trigger a rule only when a specific field value has actually been modified.
At the moment, rules are executed whenever a ticket is saved, even if the relevant field was not changed.
---
## Use Case
A rule should be executed only if:
- The **Category** of a ticket was changed
- The **Priority** was modified
- A specific **custom field** value was updated
### Example Scenario
If the ticket category changes from *Hardware* to *Software*, then trigger reassignment or notification.
If the category remains the same, the rule should not run.
---
## Proposed Solution
Introduce a new comparison operator in Business Rules:
```
Field → Comparison → Value
Category → was changed → (no value required)
```
### Optional Extended Functionality
```
Category → changed from → [old value]
Category → changed to → [new value]
```
---
## Expected Behavior
The rule should execute only when:
- The selected field value differs between the previous and the current state of the ticket.
The rule should not execute when:
- The ticket is saved without modifying that specific field.
---
## Benefits
- More precise automation
- Avoid unnecessary rule executions
- Better control in complex workflows
- Potential performance improvement when many rules are configured
---
## Additional Context
This feature would enhance workflow precision and improve the flexibility of Business Rules in environments with complex automation requirements.
Filter tickets by source form
I need to classify tickets using the source form filter (service catalog); however, the current version does not allow this filter to be applied.
The purpose of this is to know which service catalog the case originated from.
Include "Enable notifications" user setting in "Actions > Update" dropdown
Hello there!
I tried to select several users to change setting "Enable notifications" massively so I could disable all notifications for them. Sadly, when selecting several users and try to change this setting by using "Actions > Update" menu, "Enable notifications" is not shown in the dropdown, so I must change this setting individually.
Could you add this massive action for editing users?
Thanks!
2FA trusted devices
I have GLPI 11.0.4 and I am setting up two-factor authentication (2FA) for my users. Everything works fine in testing, but I cannot find a way to add the device I used to log in via 2FA as a trusted device, so that it does not ask for it again at the next login, assuming it is the same device, of course.
It would be useful to consider this option and allow users to manage their trusted devices.
Contract : associate actors ( technicians, groups, observers) for notifications, searches,....
As for assets, i think it could be usefull to associate actors to contract ( technicians in charge of contract, group in charge) and add these actors to notifications recipients list.
Actually, contract notifications can be send to profile or group, whatever the contract.
Option to set Console's language
When using Ops tools such as Ansible to install/manage GLPI we can use the Console (`bin/console`) to perform some actions.
But the output (stdou or stderr) of those actions is dependent of the `language` setting (in `glpi_configs` SQL table).
For example when trying to reset an user's password, when language is set to en_GB the success message is
Reset password successful.
but, when language is fr_FR, message is:
Mot de passe modifié avec succès.
It's annoying for processing those outputs.
I suggest adding an option to the console that:
- (Variant A) Sets the outputs to be returned in plain English
- (Variant B) Set the specific language outputs should be returned in
Something like:
Variant A:
bin/console --no-language user:reset_password --password foo normal
Variant B:
bin/console --language=en_GB user:reset_password --password foo normal
Service d'assistance aux clients par UserEcho