Skip to content

Windows QGIS 4 installs plugin with ACL that do not include SYSTEM or Administrators #66515

Description

@gregNS

What is the bug or the crash?

  • Running on Windows 11 Pro 25H2 (26200.8655) with all current updates.
  • Installed QGIS 4.0.3 using OSGeo4W installer
  • QT 6.11.1
  • Python 3.12.13

The folders and files for plugins installed using QGIS plugin manager have access control lists (ACL) that do not include NT AUTHORITY\SYSTEM or BUILTIN\Administrators. This appears to generate access errors with system back up and then the backup retention policy does not run.

Work-around was to create an exception rule for the plugins folder and add another task to list that needs to be done in case of a system restore.

Expected behaviour is to allow access to SYSTEM and Administrators in ACL for plugin folders and files.

Note: I do not know much about the Windows ACL. I ran:
icacls .\plugins\ from ...\AppData\Roaming\QGIS\QGIS4\profiles\default\python\

Output:

.\plugins\ NT AUTHORITY\SYSTEM:(I)(OI)(CI)(F)
           BUILTIN\Administrators:(I)(OI)(CI)(F)
           THIS_COMPUTER\my_user:(I)(OI)(CI)(F)

I understand this to mean children of .\plugins\ will have full permissions inherited for SYSTEM and Administrators by default.

The output of icacls .\plugins\qtiles\ is:

.\plugins\qtiles THIS_COMPUTER\my_user:(OI)(CI)(F)
                 THIS_COMPUTER\None:(OI)(CI)(Rc,S,RA)
                 Everyone:(OI)(CI)(Rc,S,RA)

Here I do not see an entry for SYSTEM and Administrators. I do not know what the None entry applies to.

At first glance I thought Everyone should be able to read but further seems to indicate the Rc = read control does not allow access to read the contents of the folder. Further, I believe the SYSTEM and Administrators entries are needed or even a backup process with elevated privileges cannot access the folder.

Summary, I think there is a bug in the way QGIS is overriding the inherited permissions.

Steps to reproduce the issue

  1. Start QGIS 4.0.3
  2. Open plugin manager
  3. Install a plugin from standard repository list.
  4. Execute a system process the is not running as the user that installed the plugin, i.e. system backup.
  5. Review for the process having access denied for the plugin folder.

Versions

QGIS version4.0.3-Norrköping
QGIS code revision70e40ae6
 
Libraries
Qt version6.11.1
Python version3.12.13
GDAL version3.13.0 (Compiled)
3.13.1 (Running) — Iowa City
PROJ version9.8.1
EPSG Registry database versionv12.029 (2025-10-02)
GEOS version3.14.1-CAPI-1.20.5
SFCGAL version2.2.0
GeographicLib version2.7.0
SQLite version3.53.0 (Compiled)
3.53.2 (Running)
PDAL version2.10.0
PostgreSQL client version17.3
SpatiaLite version5.1.0
QWT version6.3.0
QScintilla2 version2.14.1
OS versionWindows 11 Version 25H2
 
Active Python plugins
db_manager0.1.20
grassprovider2.12.99
processing2.12.99
quick-geojson1.1
slyr_community7.0.0
whitebox_workflows_for_qgis2.1.3

Supported QGIS version

  • I'm running a supported QGIS version according to the roadmap.

New profile

No Duplicate of the Issue

  • I have verified that there are no existing issues raised related to my problem.

Additional context

i have tried on different computers with same result.

Metadata

Metadata

Assignees

Labels

BugEither a bug report, or a bug fix. Let's hope for the latter!Plugin managerQGIS 4RegressionSomething which used to work, but doesn't anymore

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions