:

    MSIX-Paketierung

    Mit dem MSIX Packaging Tool lassen sich Installationsvorgänge auf einem Windows-Rechner aufzeichnen und in einem Softwarepaket zusammenfassen. Das ist beispielsweise hilfreich, wenn eine Anwendung keinen Silent-Schalter bietet oder nach der Installation manuelle Konfigurationen vorgenommen werden müssen. Im folgenden Video wird erklärt, welche Voraussetzungen erfüllt werden müssen, wie man ein MSIX-Paket erstellt und wie es schließlich über Microsoft Intune verteilt wird.



    Benötigst du Unterstützung?

    Melde dich bei uns!



    Die MSIX-Pakete müssen bei der Erstellung signiert werden. Dafür kann zum Beispiel ein selbstsigniertes Code Signing Certificate genutzt werden. Im Video wird für die Erstellung des Zertifikats untenstehendes Script genutzt. Alternativ kann ein Zertifikat in der eigenen PKI erstellt oder bei einer öffentlichen Zertifizierungsstelle bezogen werden.

    Create-LocalAdmin.ps1

    <#
    .SYNOPSIS
       Code Signing Certificate für MSIX-Pakete
     
    .DESCRIPTION
       Dieses Script erstellt ein Code Signing Certificate für MSIX-Pakete.
       Pakete können mit der PFX-Datei signiert werden. Auf Clients, die dem
       Zertifikat vertrauen, kann ein solches MSIX-Paket installiert werden.
    
    .NOTES
      Version:        1.0
      Author:         Raphael Baud
      Creation Date:  2024-04-16
      Purpose/Change: initial creation
    #>
    
    #Variablen festlegen
    $FriendlyName = "itestlio Code Signing Certificate"
    $Subject = "CN=itestlio Software, O=itestlio, C=DE"
    $Password = "Passwort"
    $OutputPath = "C:\temp\CodeSigningCert.pfx"
    
    #Zertifikat erstellen
    #gilt im Standard ein Jahr - kann mit "-NotAfter <Timestamp>" angepasst werden
    New-SelfSignedCertificate -Type Custom -Subject $Subject -KeyUsage DigitalSignature -FriendlyName $FriendlyName -CertStoreLocation "Cert:\CurrentUser\My" -TextExtension @("2.5.29.37={text}1.3.6.1.5.5.7.3.3", "2.5.29.19={text}")
    
    #Thumbprint holen
    Set-Location Cert:\CurrentUser\My
    $Thumbprint = (Get-ChildItem | Where-Object {$_.FriendlyName -eq $FriendlyName}).Thumbprint
    
    #Zertifikat exportieren
    $SecurePassword = ConvertTo-SecureString -String $Password -Force -AsPlainText 
    Export-PfxCertificate -cert "Cert:\CurrentUser\My\$Thumbprint" -FilePath $OutputPath -Password $SecurePassword