Skip to content

Commit e0f48e5

Browse files
committed
MDEV-11214 Windows : MSI installation fails, if run by a service user (e.g LocalSystem)
Skip permission for data directory for LogonUser, if installation runs by one of the service accounts (determined from their well-known SID). There is no real LogonUser in this case.
1 parent 2a2e79b commit e0f48e5

File tree

1 file changed

+16
-1
lines changed

1 file changed

+16
-1
lines changed

win/packaging/extra.wxs.in

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -463,9 +463,24 @@
463463
<RegistryValue Root='HKLM'
464464
Key='SOFTWARE\@MANUFACTURER@\@CPACK_WIX_PACKAGE_NAME@'
465465
Name='DATADIR' Value='[DATADIR]' Type='string' KeyPath='yes'/>
466+
<CreateFolder>
467+
<util:PermissionEx User="NetworkService" GenericAll="yes" />
468+
</CreateFolder>
469+
</Component>
470+
471+
<Component Id="C.datadir.permissions" Directory="DATADIR">
472+
<Condition>
473+
<!--
474+
Skip setting permissions for LogonUser, if package is installed by
475+
service user (e.g LocalSystem)
476+
-->
477+
<![CDATA[ (UserSID <> "S-1-5-18") AND (UserSID <> "S-1-5-19") AND (UserSID <> "S-1-5-20") ]]>
478+
</Condition>
479+
<RegistryValue Root='HKLM'
480+
Key='SOFTWARE\Monty Program AB\@CPACK_WIX_PACKAGE_NAME@'
481+
Name='InstalledBy' Value='[USER_DOMAIN]\[LogonUser]' Type='string' KeyPath='yes'/>
466482
<CreateFolder>
467483
<util:PermissionEx User="[LogonUser]" Domain="[USER_DOMAIN]" GenericAll="yes" />
468-
<util:PermissionEx User="NetworkService" GenericAll="yes" />
469484
</CreateFolder>
470485
</Component>
471486

0 commit comments

Comments
 (0)