[java-idp-jetty-base] 02/02: IDP-2136 Consider Splitting the Windows Installer into IdP and Jetty+Procrun

Rod Widdowson rdw at steadingsoftware.com
Mon Jul 31 14:24:32 UTC 2023


This is an automated email from the git hooks/post-receive script.

rdw pushed a commit to branch 10-windows
in repository java-idp-jetty-base.

View the commit online:
http://git.shibboleth.net/view/?p=java-idp-jetty-base.git;a=commit;h=b315dff48cd767837b0369b5bbc2fface9a3632d

commit b315dff48cd767837b0369b5bbc2fface9a3632d
Author: Rod Widdowson <rdw at steadingsoftware.com>
AuthorDate: Mon Jul 31 15:16:48 2023 +0100

    IDP-2136 Consider Splitting the Windows Installer into IdP and Jetty+Procrun
    
    https://shibboleth.atlassian.net/browse/IDP-2136
    
    Bug fixing in the setacls arena.
    Bug fix the tidt of the jetty tmp folder
---
 src/main/wix/Jetty-Delete.wxs |   2 +-
 src/main/wix/Jetty-User.wxs   | 122 +++++++++++++++++++++++++++---------------
 2 files changed, 81 insertions(+), 43 deletions(-)

diff --git a/src/main/wix/Jetty-Delete.wxs b/src/main/wix/Jetty-Delete.wxs
index e6c5fb8..51eedae 100644
--- a/src/main/wix/Jetty-Delete.wxs
+++ b/src/main/wix/Jetty-Delete.wxs
@@ -43,7 +43,7 @@
         <CustomAction Id="SetOldJettyBaseLib" Property="OldJettyBaseLib" Value="[IDP_INSTALLDIR]\jetty-base\lib" />
         <CustomAction Id="SetOldJettyBaseResources" Property="OldJettyBaseResources" Value="[IDP_INSTALLDIR]\jetty-base\resources" />
         <CustomAction Id="SetOldJettyBaseWebapps" Property="OldJettyBaseWebapps" Value="[IDP_INSTALLDIR]\jetty-base\webapps" />
-        <CustomAction Id="SetOldJettyBaseTmp" Property="OldJettyBaseRmp" Value="[IDP_INSTALLDIR]\jetty-base\tmp" />
+        <CustomAction Id="SetOldJettyBaseTmp" Property="OldJettyBaseTmp" Value="[IDP_INSTALLDIR]\jetty-base\tmp" />
         <CustomAction Id="SetProcRunDir" Property="ProcRunDir" Value="[SHIBBOLETHDIR]\ProcRun" />
         <CustomAction Id="SetJettyDir" Property="JettyDir" Value="[SHIBBOLETHDIR]\Jetty" />
 
diff --git a/src/main/wix/Jetty-User.wxs b/src/main/wix/Jetty-User.wxs
index e7ae756..b36704a 100644
--- a/src/main/wix/Jetty-User.wxs
+++ b/src/main/wix/Jetty-User.wxs
@@ -43,7 +43,7 @@
 
          ACE_USER        - [JETTYD_DOMAIN]\[PERMISSION_USER] if JETTYD_DOMAIN supplied
                            [PERMISSION_USER] Otherwise
-                           used in icacles
+                           used in icacls
     -->
 
     <Fragment>
@@ -101,65 +101,103 @@
 
         <!-- Actions to set acls
                 /t recursive
+                /setowner [ACE_USER]
                 /inheritance:r Remove inhetited ACLS
                 /grant:r SYSTEM:F *add* Full access for SYSTEM (replacing any existing)
                          [ACE_USER]:(GR,RD,X) *add* GENERIC_READ,READ_DATA,TRAVERSE access
                                     (Remember, when user not supplied ACE_USER is Administrators
+icacls "C:\Program Files (x86)\Shibboleth\IdP\conf" /setowner administrators /t /inheritance:r /grant SYSTEM:F Administrators:F Administrators:(GW,RD,X)
         -->
-        <CustomAction Id="SetIcaclsVerb" Property="IcaclsVerb" Value="/t /inheritance:r /grant SYSTEM:F Administrators:F"/>
-        <CustomAction Id="SetACEConf" Property="QtSetACEConf"
-                      Value=""c:\Windows\System32\icacls.exe" "[IDP_INSTALLDIR]\conf" [IcaclsVerb] [ACE_USER]:(GR,RD,X)" />
-        <CustomAction Id="QtSetACEConf" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Impersonate="no" />
 
-        <CustomAction Id="SetACECreds" Property="QtSetACECreds"
-                      Value=""c:\Windows\System32\icacls.exe" "[IDP_INSTALLDIR]\credentials" [IcaclsVerb] [ACE_USER]:(GR,RD,X)" />
-        <CustomAction Id="QtSetACECreds" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Impersonate="no" />
-
-        <CustomAction Id="SetACELogs" Property="QtSetACELogs"
-                      Value=""c:\Windows\System32\icacls.exe" "[IDP_INSTALLDIR]\logs" [IcaclsVerb] [ACE_USER]:F" />
-        <CustomAction Id="QtSetACELogs" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Impersonate="no" />
-
-        <CustomAction Id="SetACEJettyStart" Property="QtSetACEJettyStart"
-                      Value=""c:\Windows\System32\icacls.exe" "[IDP_INSTALLDIR]\jetty-base\start.d" [IcaclsVerb] [ACE_USER]:(GR,RD,X)" />
-        <CustomAction Id="QtSetACEJettyStart" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Impersonate="no" />
-
-        <CustomAction Id="SetACEJettyTmp" Property="QtSetACEJettyTmp"
-                      Value=""c:\Windows\System32\icacls.exe" "[IDP_INSTALLDIR]\jetty-base\tmp" [IcaclsVerb] [ACE_USER]:F" />
-        <CustomAction Id="QtSetACEJettyTmp" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Impersonate="no" />
-
-        <CustomAction Id="SetACEJettyLogs" Property="QtSetACEJettyLogs"
-                      Value=""c:\Windows\System32\icacls.exe" "[IDP_INSTALLDIR]\jetty-base\logs" [IcaclsVerb] [ACE_USER]:F" />
-        <CustomAction Id="QtSetACEJettyLogs" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Impersonate="no" />
-
-        <CustomAction Id="SetACEProcrunLog" Property="QtSetACEProcrunLog"
-                      Value=""c:\Windows\System32\icacls.exe" "[SHIBBOLETHDIR]ProcRun\log" [IcaclsVerb] [ACE_USER]:F" />
-        <CustomAction Id="QtSetACEProcrunLog" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Impersonate="no" />
+        <CustomAction Id="SetIcaclsVerb" Property="IcaclsVerb" Value=""c:\Windows\System32\icacls.exe""/>
+        <CustomAction Id="SetIcaclsPost1" Property="IcaclsPost1" Value="/t /setowner Administrators"/>
+        <CustomAction Id="SetIcaclsPost2" Property="IcaclsPost2" Value="/t /inheritance:r /grant SYSTEM:F Administrators:F"/>
+
+        <!-- conf -->
+        <CustomAction Id="SetACEConf1" Property="QtSetACEConf1" Value="[IcaclsVerb] "[IDP_INSTALLDIR]\conf" [IcaclsPost1]"/>
+        <CustomAction Id="SetACEConf2" Property="QtSetACEConf2" Value="[IcaclsVerb] "[IDP_INSTALLDIR]\conf" [IcaclsPost2] [ACE_USER]:(GR,RD,X)" />
+        <CustomAction Id="QtSetACEConf1" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Impersonate="no" />
+        <CustomAction Id="QtSetACEConf2" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Impersonate="no" />
+
+        <!-- creds -->
+
+        <CustomAction Id="SetACECreds1" Property="QtSetACECreds1" Value="[IcaclsVerb] "[IDP_INSTALLDIR]\credentials" [IcaclsPost1]"/>
+        <CustomAction Id="SetACECreds2" Property="QtSetACECreds2" Value="[IcaclsVerb] "[IDP_INSTALLDIR]\credentials" [IcaclsPost2] [ACE_USER]:(GR,RD,X)" />
+        <CustomAction Id="QtSetACECreds1" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Impersonate="no" />
+        <CustomAction Id="QtSetACECreds2" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Impersonate="no" />
+
+        <!-- shibd_logs -->
+        <CustomAction Id="SetACELogs1" Property="QtSetACELogs1" Value="[IcaclsVerb] "[IDP_INSTALLDIR]\logs" [IcaclsPost1]"/>
+        <CustomAction Id="SetACELogs2" Property="QtSetACELogs2" Value="[IcaclsVerb] "[IDP_INSTALLDIR]\logs" [IcaclsPost2] [ACE_USER]:F" />
+        <CustomAction Id="QtSetACELogs1" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Impersonate="no" />
+        <CustomAction Id="QtSetACELogs2" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Impersonate="no" />
+
+        <!-- Jetty start -->
+        <CustomAction Id="SetACEJettyStart1" Property="QtSetACEJettyStart1" Value="[IcaclsVerb] "[IDP_INSTALLDIR]\jetty-base\start.d" [IcaclsPost1]"/>
+        <CustomAction Id="SetACEJettyStart2" Property="QtSetACEJettyStart2" Value="[IcaclsVerb] "[IDP_INSTALLDIR]\jetty-base\start.d" [IcaclsPost2] [ACE_USER]:(GR,RD,X)" />
+        <CustomAction Id="QtSetACEJettyStart1" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Impersonate="no" />
+        <CustomAction Id="QtSetACEJettyStart2" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Impersonate="no" />
+
+        <!-- Jetty tmp -->
+        <CustomAction Id="SetACEJettyTmp1" Property="QtSetACEJettyTmp1" Value="[IcaclsVerb] "[IDP_INSTALLDIR]\jetty-base\tmp" [IcaclsPost1]"/>
+        <CustomAction Id="SetACEJettyTmp2" Property="QtSetACEJettyTmp2" Value="[IcaclsVerb] "[IDP_INSTALLDIR]\jetty-base\tmp" [IcaclsPost2] [ACE_USER]:F"/>
+        <CustomAction Id="QtSetACEJettyTmp1" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Impersonate="no" />
+        <CustomAction Id="QtSetACEJettyTmp2" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Impersonate="no" />
+
+        <!-- Jetty logs -->
+        <CustomAction Id="SetACEJettyLogs1" Property="QtSetACEJettyLogs1" Value="[IcaclsVerb] "[IDP_INSTALLDIR]\jetty-base\logs" [IcaclsPost1]"/>
+        <CustomAction Id="SetACEJettyLogs2" Property="QtSetACEJettyLogs2" Value="[IcaclsVerb] "[IDP_INSTALLDIR]\jetty-base\logs" [IcaclsPost2] [ACE_USER]:F" />
+        <CustomAction Id="QtSetACEJettyLogs1" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Impersonate="no" />
+        <CustomAction Id="QtSetACEJettyLogs2" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Impersonate="no" />
+
+        <!-- Procmon Logs -->
+        <CustomAction Id="SetACEProcrunLog1" Property="QtSetACEProcrunLog1" Value="[IcaclsVerb] "[SHIBBOLETHDIR]ProcRun\log" [IcaclsPost1]" />
+        <CustomAction Id="SetACEProcrunLog2" Property="QtSetACEProcrunLog2" Value="[IcaclsVerb] "[SHIBBOLETHDIR]ProcRun\log" [IcaclsPost2] [ACE_USER]:F" />
+        <CustomAction Id="QtSetACEProcrunLog1" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Impersonate="no" />
+        <CustomAction Id="QtSetACEProcrunLog2" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Impersonate="no" />
 
         <InstallExecuteSequence>
             <!-- Write the ACEs.    IdP : conf, creds, logs -->
+            <Custom Action="SetIcaclsPost1" Before="InstallFiles"/>
+            <Custom Action="SetIcaclsPost2" Before="InstallFiles"/>
             <Custom Action="SetIcaclsVerb" Before="InstallFiles"/>
-            <Custom Action="SetACEConf" After="SetIcaclsVerb"/>
-            <Custom Action="QtSetACEConf" After="QtFinalizeJetty"/>
 
-            <Custom Action="SetACECreds" After="SetIcaclsVerb"/>
-            <Custom Action="QtSetACECreds" After="QtFinalizeJetty"/>
+            <Custom Action="SetACEConf1" After="SetIcaclsVerb"/>
+            <Custom Action="SetACEConf2" After="SetIcaclsVerb"/>
+            <Custom Action="QtSetACEConf1" After="QtFinalizeJetty"/>
+            <Custom Action="QtSetACEConf2" After="QtSetACEConf1"/>
+
+            <Custom Action="SetACECreds1" After="SetIcaclsVerb"/>
+            <Custom Action="SetACECreds2" After="SetIcaclsVerb"/>
+            <Custom Action="QtSetACECreds1" After="QtFinalizeJetty"/>
+            <Custom Action="QtSetACECreds2" After="QtSetACECreds1"/>
 
-            <Custom Action="SetACELogs" After="SetIcaclsVerb"/>
-            <Custom Action="QtSetACELogs" After="QtFinalizeJetty"/>
+            <Custom Action="SetACELogs1" After="SetIcaclsVerb"/>
+            <Custom Action="SetACELogs2" After="SetIcaclsVerb"/>
+            <Custom Action="QtSetACELogs1" After="QtFinalizeJetty"/>
+            <Custom Action="QtSetACELogs2" After="QtSetACELogs1"/>
 
             <!-- Write the ACEs.    jetty : start.d, tmp, logs -->
-            <Custom Action="SetACEJettyStart" After="SetIcaclsVerb"/>
-            <Custom Action="QtSetACEJettyStart" After="QtFinalizeJetty"/>
+            <Custom Action="SetACEJettyStart1" After="SetIcaclsVerb"/>
+            <Custom Action="SetACEJettyStart2" After="SetIcaclsVerb"/>
+            <Custom Action="QtSetACEJettyStart1" After="QtFinalizeJetty"/>
+            <Custom Action="QtSetACEJettyStart2" After="QtSetACEJettyStart1"/>
 
-            <Custom Action="SetACEJettyTmp" After="SetIcaclsVerb"/>
-            <Custom Action="QtSetACEJettyTmp" After="QtFinalizeJetty"/>
+            <Custom Action="SetACEJettyTmp1" After="SetIcaclsVerb"/>
+            <Custom Action="SetACEJettyTmp2" After="SetIcaclsVerb"/>
+            <Custom Action="QtSetACEJettyTmp1" After="QtFinalizeJetty"/>
+            <Custom Action="QtSetACEJettyTmp2" After="QtSetACEJettyTmp1"/>
 
-            <Custom Action="SetACEJettyLogs" After="SetIcaclsVerb"/>
-            <Custom Action="QtSetACEJettyLogs" After="QtFinalizeJetty"/>
+            <Custom Action="SetACEJettyLogs1" After="SetIcaclsVerb"/>
+            <Custom Action="SetACEJettyLogs2" After="SetIcaclsVerb"/>
+            <Custom Action="QtSetACEJettyLogs1" After="QtFinalizeJetty"/>
+            <Custom Action="QtSetACEJettyLogs2" After="QtSetACEJettyLogs1"/>
 
             <!-- Write the ACEs.    Procrun: log -->
-            <Custom Action="SetACEProcrunLog" After="SetIcaclsVerb"/>
-            <Custom Action="QtSetACEProcrunLog" After="QtFinalizeJetty"/>
+            <Custom Action="SetACEProcrunLog1" After="SetIcaclsVerb"/>
+            <Custom Action="SetACEProcrunLog2" After="SetIcaclsVerb"/>
+            <Custom Action="QtSetACEProcrunLog1" After="QtFinalizeJetty"/>
+            <Custom Action="QtSetACEProcrunLog2" After="QtSetACEProcrunLog1"/>
         </InstallExecuteSequence>
 
     </Fragment>

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the commits mailing list