MSIX állandó identitás

Ez a funkció lehetővé teszi a csomagok új tanúsítvánnyal való aláírását, miközben továbbra is fenntartja az alkalmazás frissítési élményét. Más szóval ez lehetővé teszi, hogy a csomag megőrizze a régi csomag identitását a platformon anélkül, hogy a régi (eredeti) tanúsítvánnyal kellene bejelentkeznie. A Windows 11 21H2-es (22000-es build) verziójától kezdve létre kell hozni egy összetevőt a régi tanúsítvány és az aláíráshoz használt új tanúsítvány közötti kapcsolat megjelenítéséhez. Az alábbiakban részletesen bemutatjuk, hogyan őrizheti meg a csomagidentitást a frissítési élmény fenntartása érdekében.

Követelmények

  • MakeAppx.exe beszerzése a Windows SDK-val
  • SignTool.exe beszerzése a Windows SDK-val
  • Az eredeti csomag aláírásához használt régi tanúsítvány (CN=Régi)
  • A csomag aláírásához használt új tanúsítvány (CN=New)

Áttekintés

Ez a lépésenkénti útmutató bemutatja, hogyan írhatja alá a csomagot az új tanúsítvánnyal a csomag identitásának fenntartása mellett.

Az összetevő létrehozása

  1. Írja meg a régi és az új közzétevőket részletező XML-összetevőt. Nevezze el tetszés szerint, artifact.xml:
<?xml version="1.0" encoding="UTF-8"?>
<Publisher xmlns="http://schemas.microsoft.com/appx/publisherbridging/2021" Old="CN=Old" New="CN=New" />
  1. Írjon egy katalógusdefiníciós fájlt (CDF) az összetevő aláírásához használni kívánt katalógus létrehozásához. Nevezze el bárhogy szeretné, artifact.cdf:
[CatalogHeader]
Name=artifact.cat
CatalogVersion=2
HashAlgorithms=SHA256

[CatalogFiles]
<HASH>artifact.xml=artifact.xml
  1. Futtassa a makecat.exe ezen a CDF-en. Létrehozza a benne megadott fájlt
makecat.exe artifact.cdf
  1. A katalógus aláírása a régi tanúsítvány használatával
signtool.exe sign /f old-cert.pfx /fd SHA256 artifact.cat

Ezen a ponton csak ezután kell megőriznie az XML- és CAT-fájlokat. Több összetevőt is létrehozhat, de a platform jelenleg legfeljebb 5-öt támogat.

Megjegyzés:

Javasoljuk, hogy lássa el időbélyeggel a katalógusfájlt. Ha a katalógus nincs időbélyegzítve, az összetevő használhatatlanná válik a régi tanúsítvány lejáratának pillanatában.

A csomag létrehozása

  1. Hozzon létre egy közzétevői áthidaló fájlt, amely tájékoztatja makeappx.exe a használni kívánt összetevőkről. Ez a fájl olyan, mint a leképezési fájl. Nevezze el, amit csak szeretne, artifacts.txt
[PublisherBridging]
"artifact.xml" "artifact.cat"

Minden sornak xml- és CAT-fájl elérési útját kell tartalmaznia. Az artefaktumokat úgy kell rendezni, ahogyan azokat alkalmazzák. Ha két összetevőt tartalmaz, az egyik a Publisher1-Publisher2>, a másik a Publisher2-Publisher3> esetében, akkor először a Publisher1-Publisher2> összetevőt kell listáznia.

  1. Hívja meg makeappx.exe a /pb jelzővel, hogy a közzétevő áthidaló fájlra mutasson:
makeappx.exe pack /p app.msix /d .\app\ /pb artifacts.txt
  1. A csomag aláírása az új tanúsítvánnyal
signtool.exe sign /f new-cert.pfx /fd SHA256 app.msix

Most már Önnek van egy olyan csomagja, amely a benne lévő artefaktum(ok)at tartalmazza, és amelyet az új tanúsítvánnyal aláírtak. A csomagot bármely más MSIX-csomaghoz hasonlóan üzembe helyezheti.

Megfontolások

  • Javasoljuk, hogy a katalógus időbélyegzős legyen. Ehhez fel kell vennie ezeket az argumentumokat a signtool parancsban a katalógus elérési útja elé: /td SHA256 /tr

  • Az új tanúsítvány által aláírt csomag telepítéséhez továbbra is telepítenie kell a régi tanúsítványt a gépen (időbélyeggel ellátott telepítés ajánlott).

  • A funkció használatához ezt a régi tanúsítvány lejárta előtt kell elvégeznie.

  • Ez a funkció az MSIX-csomagok és az MSIX-csomagkötegek esetében is működik.