Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Tato funkce umožňuje podepsat balíčky pomocí nového certifikátu a přitom zachovat prostředí aktualizace aplikace. Jinými slovy, to umožňuje balíčku zachovat svou starou identitu balíčku na platformě, aniž by se musel podepsat pomocí starého (původního) certifikátu. Počínaje buildem Windows Insider Preview 22000 bude potřeba vytvořit artefakt, který bude zobrazovat vztah mezi starým certifikátem a novým certifikátem, který se používá k podepisování. Níže najdete podrobné vysvětlení toho, jak zachovat identitu balíčku, aby se zachovalo prostředí aktualizace.
Požadavky
- Získejte MakeAppx.exe prostřednictvím sady Windows SDK. Tato funkce je aktuálně dostupná v sadě Windows SDK Preview 22000.
- Získejte SignTool.exe prostřednictvím sady Windows SDK. Tato funkce je aktuálně dostupná v sadě Windows SDK Preview 22000.
- Starý certifikát (CN=Old), který byl použit k podepsání původního balíčku
- Nový certifikát (CN=New), který se použije k podepsání balíčku
Projděte si
Toto je podrobné pokyny k podepsání balíčku pomocí nového certifikátu při zachování identity balíčku.
Vytvoření artefaktu
- Napište artefakt XML s podrobnostmi o starých a nových vydavatelích. Pojmenujte ho cokoliv, artifact.xml:
<?xml version="1.0" encoding="UTF-8"?>
<Publisher xmlns="http://schemas.microsoft.com/appx/publisherbridging/2021" Old="CN=Old" New="CN=New" />
- Napište soubor definice katalogu (CDF) pro vytvoření katalogu, který se použije k podepsání artefaktu. Pojmenujte ho tak, jak chcete, artifact.cdf:
[CatalogHeader]
Name=artifact.cat
CatalogVersion=2
HashAlgorithms=SHA256
[CatalogFiles]
<HASH>artifact.xml=artifact.xml
- Spusťte makecat.exe na tomto CDF. Vytvoří soubor zadaný v něm.
makecat.exe artifact.cdf
- Podepsání katalogu pomocí starého certifikátu
signtool.exe sign /f old-cert.pfx /fd SHA256 artifact.cat
Od tohoto okamžiku stačí uchovat pouze soubory XML a CAT. Můžete vytvořit několik artefaktů, ale platforma aktuálně podporuje až 5.
Poznámka:
Doporučujeme, abyste opatřili svůj soubor katalogu časovým razítkem. Pokud katalog není časovým razítkem, artefakt se stane nepoužitelným okamžikem vypršení platnosti starého certifikátu.
Vytvoření balíčku
- Vytvořte soubor přemostění vydavatele pro informování makeappx.exe, které artefakty použít. Tento soubor je podobný souboru mapování. Pojmenujte ho cokoliv, artifacts.txt
[PublisherBridging]
"artifact.xml" "artifact.cat"
Každý řádek musí obsahovat dvojici cest k souborům XML a CAT. Artefakty musí být seřazené tak, jak se použijí. Pokud máte dva artefakty pro přechod z Publisher1-Publisher2> a další pro Publisher2-Publisher3>, musíte nejprve uvést ten pro Publisher1-Publisher2>.
- Volání makeappx.exe s příznakem /pb pro odkazování na přemosťovací soubor vydavatele:
makeappx.exe pack /p app.msix /d .\app\ /pb artifacts.txt
- Podepsání balíčku pomocí nového certifikátu
signtool.exe sign /f new-cert.pfx /fd SHA256 app.msix
Teď máte balíček, který obsahuje artefakty uložené uvnitř a byl podepsán novým certifikátem. Balíček můžete nasadit stejně jako jakýkoli jiný balíček MSIX.
Úvahy
Doporučujeme, aby byl katalog opatřen časovým razítkem. K tomu je potřeba přidat tyto argumenty do volání signtool před cestu k katalogu: /td SHA256 /tr
Abyste mohli nainstalovat balíček podepsaný novým certifikátem, budete muset na počítač nainstalovat starý certifikát (doporučeno s časovým razítkem).
Abyste mohli tuto funkci využít, musíte to udělat před vypršením platnosti starého certifikátu.
Tato funkce funguje pro balíčky MSIX i sady MSIX.