Code of Conduct
Is there an existing issue for this?
GLPI Version
11.0.8
Plugin version
2.10.4
Bug description
Description
When use_filter_assign_group = 1 is enabled, the assign group dropdown only displays groups where the current user is a member. The escalation groups chain (defined in glpi_plugin_escalade_groups_groups) is completely ignored for dropdown filtering purposes.
Example
| Entity |
ID |
| Group L1 |
7 |
| Group L2 |
8 |
| Group L3 |
9 |
glpi_plugin_escalade_groups_groups:
- L1 (7) → L2 (8)
- L2 (8) → L3 (9)
User is a member of L1 only.
Expected behavior
With use_filter_assign_group = 1, a user from L1 should see L1 + L2 (destination group for L1) in the assign dropdown.
Actual behavior
User sees only L1.
Workaround
Disable use_filter_assign_group — then all groups appear in the dropdown, including L3 and unrelated groups, which breaks the escalation hierarchy.
Suggested fix
When use_filter_assign_group = 1, the dropdown should include:
- Groups where the user is a member
- Groups that are defined as
groups_id_destination for any of the user's groups in glpi_plugin_escalade_groups_groups
Or alternatively, respect the escalation chain depth (1 level) rather than showing all groups.
Related
glpi_plugin_escalade_users.bypass_filter_assign_group exists but bypasses filtering entirely, not scoped to escalation chain.
Relevant log output
Page URL
No response
Steps To reproduce
No response
Your GLPI setup information
equirements:
PHP version (8.2.32) is supported.PHP version (8.2.32) is supported.
OS and PHP are relying on 64 bits integers.OS and PHP are relying on 64 bits integers.
Sessions configuration is OK.Sessions configuration is OK.
Allocated memory is sufficient.Allocated memory is sufficient.
Following extensions are installed: dom, fileinfo, filter, libxml, simplexml, tokenizer, xmlreader, xmlwriter.Following extensions are installed: dom, fileinfo, filter, libxml, simplexml, tokenizer, xmlreader, xmlwriter.
mysqli extension is installedmysqli extension is installed
curl extension is installedcurl extension is installed
gd extension is installedgd extension is installed
intl extension is installedintl extension is installed
mbstring extension is installedmbstring extension is installed
zlib extension is installedzlib extension is installed
bcmath extension is installedbcmath extension is installed
The constant SODIUM_CRYPTO_AEAD_XCHACHA20POLY1305_IETF_NPUBBYTES is present.The constant SODIUM_CRYPTO_AEAD_XCHACHA20POLY1305_IETF_NPUBBYTES is present.
openssl extension is installedopenssl extension is installed
Database engine version (10.11.18) is supported.Database engine version (10.11.18) is supported.
The log file has been created successfully.The log file has been created successfully.
Write access to /var/www/glpi/files/_cache has been validated. Write access to /var/www/glpi/files/_cron has been validated. Write access to /var/www/glpi/files has been validated. Write access to /var/www/glpi/files/_graphs has been validated. Write access to /var/www/glpi/files/_lock has been validated. Write access to /var/www/glpi/files/_pictures has been validated. Write access to /var/www/glpi/files/_plugins has been validated. Write access to /var/www/glpi/files/_rss has been validated. Write access to /var/www/glpi/files/_sessions has been validated. Write access to /var/www/glpi/files/_tmp has been validated. Write access to /var/www/glpi/files/_uploads has been validated.Write access to /var/www/glpi/files/_cache has been validated.
Write access to /var/www/glpi/files/_cron has been validated.
Write access to /var/www/glpi/files has been validated.
Write access to /var/www/glpi/files/_graphs has been validated.
Write access to /var/www/glpi/files/_lock has been validated.
Write access to /var/www/glpi/files/_pictures has been validated.
Write access to /var/www/glpi/files/_plugins has been validated.
Write access to /var/www/glpi/files/_rss has been validated.
Write access to /var/www/glpi/files/_sessions has been validated.
Write access to /var/www/glpi/files/_tmp has been validated.
Write access to /var/www/glpi/files/_uploads has been validated.
Sessions configuration is secured.Sessions configuration is secured.
exif extension is installedexif extension is installed
ldap extension is installedldap extension is installed
Following extensions are installed: bz2, Phar, zip.Following extensions are installed: bz2, Phar, zip.
Zend OPcache extension is installedZend OPcache extension is installed
Following extensions are installed: ctype, iconv, sodium.Following extensions are installed: ctype, iconv, sodium.
Write access to /var/www/glpi/marketplace has been validated.Write access to /var/www/glpi/marketplace has been validated.
Timezones seems loaded in database.Timezones seems loaded in database.
Anything else?
No response
Code of Conduct
Is there an existing issue for this?
GLPI Version
11.0.8
Plugin version
2.10.4
Bug description
Description
When
use_filter_assign_group = 1is enabled, the assign group dropdown only displays groups where the current user is a member. The escalation groups chain (defined inglpi_plugin_escalade_groups_groups) is completely ignored for dropdown filtering purposes.Example
glpi_plugin_escalade_groups_groups:User is a member of L1 only.
Expected behavior
With
use_filter_assign_group = 1, a user from L1 should see L1 + L2 (destination group for L1) in the assign dropdown.Actual behavior
User sees only L1.
Workaround
Disable
use_filter_assign_group— then all groups appear in the dropdown, including L3 and unrelated groups, which breaks the escalation hierarchy.Suggested fix
When
use_filter_assign_group = 1, the dropdown should include:groups_id_destinationfor any of the user's groups inglpi_plugin_escalade_groups_groupsOr alternatively, respect the escalation chain depth (1 level) rather than showing all groups.
Related
glpi_plugin_escalade_users.bypass_filter_assign_groupexists but bypasses filtering entirely, not scoped to escalation chain.Relevant log output
Page URL
No response
Steps To reproduce
No response
Your GLPI setup information
equirements:
PHP version (8.2.32) is supported.PHP version (8.2.32) is supported.
OS and PHP are relying on 64 bits integers.OS and PHP are relying on 64 bits integers.
Sessions configuration is OK.Sessions configuration is OK.
Allocated memory is sufficient.Allocated memory is sufficient.
Following extensions are installed: dom, fileinfo, filter, libxml, simplexml, tokenizer, xmlreader, xmlwriter.Following extensions are installed: dom, fileinfo, filter, libxml, simplexml, tokenizer, xmlreader, xmlwriter.
mysqli extension is installedmysqli extension is installed
curl extension is installedcurl extension is installed
gd extension is installedgd extension is installed
intl extension is installedintl extension is installed
mbstring extension is installedmbstring extension is installed
zlib extension is installedzlib extension is installed
bcmath extension is installedbcmath extension is installed
The constant SODIUM_CRYPTO_AEAD_XCHACHA20POLY1305_IETF_NPUBBYTES is present.The constant SODIUM_CRYPTO_AEAD_XCHACHA20POLY1305_IETF_NPUBBYTES is present.
openssl extension is installedopenssl extension is installed
Database engine version (10.11.18) is supported.Database engine version (10.11.18) is supported.
The log file has been created successfully.The log file has been created successfully.
Write access to /var/www/glpi/files/_cache has been validated. Write access to /var/www/glpi/files/_cron has been validated. Write access to /var/www/glpi/files has been validated. Write access to /var/www/glpi/files/_graphs has been validated. Write access to /var/www/glpi/files/_lock has been validated. Write access to /var/www/glpi/files/_pictures has been validated. Write access to /var/www/glpi/files/_plugins has been validated. Write access to /var/www/glpi/files/_rss has been validated. Write access to /var/www/glpi/files/_sessions has been validated. Write access to /var/www/glpi/files/_tmp has been validated. Write access to /var/www/glpi/files/_uploads has been validated.Write access to /var/www/glpi/files/_cache has been validated.
Write access to /var/www/glpi/files/_cron has been validated.
Write access to /var/www/glpi/files has been validated.
Write access to /var/www/glpi/files/_graphs has been validated.
Write access to /var/www/glpi/files/_lock has been validated.
Write access to /var/www/glpi/files/_pictures has been validated.
Write access to /var/www/glpi/files/_plugins has been validated.
Write access to /var/www/glpi/files/_rss has been validated.
Write access to /var/www/glpi/files/_sessions has been validated.
Write access to /var/www/glpi/files/_tmp has been validated.
Write access to /var/www/glpi/files/_uploads has been validated.
Sessions configuration is secured.Sessions configuration is secured.
exif extension is installedexif extension is installed
ldap extension is installedldap extension is installed
Following extensions are installed: bz2, Phar, zip.Following extensions are installed: bz2, Phar, zip.
Zend OPcache extension is installedZend OPcache extension is installed
Following extensions are installed: ctype, iconv, sodium.Following extensions are installed: ctype, iconv, sodium.
Write access to /var/www/glpi/marketplace has been validated.Write access to /var/www/glpi/marketplace has been validated.
Timezones seems loaded in database.Timezones seems loaded in database.
Anything else?
No response