Я просто немного ошеломлен всеми сертификатами, и я надеюсь, что смогу найти некоторую помощь здесь.
Так что в основном у меня есть загруженное приложение UWP (которое я создал с помощью Visual Studio), где сертификат заканчивается в течение следующих нескольких дней. Я смог продлить сертификат, создав новый, который также может остаться в живых в течение 1 года. Но я задавался вопросом, возможно ли продлить его с 1 года до 5 или около того. «Решения», которые я нашел, это либо купить сертификат, либо создать его самостоятельно.
Хорошо о покупке: я искал через Интернет, но не мог сказать, что я на самом деле ищу. Есть несколько разных сертификатов, и я не знаю, какие мне нужны для приложения UWP. Кто-нибудь знает, на что мне смотреть? Покупка одного дорогая, и я бы предпочел не покупать неправильный.
Теперь о создании самого себя. Есть несколько советов о том, как это сделать, но после прочтения некоторых советов было похоже, что «руководства» были неполными. Некоторые способы устарели. Некоторые другие не дали мне достаточно информации, чтобы я мог сделать это сам. У кого-нибудь есть хорошее руководство о том, как создать собственный сертификат с более длинным жизненным циклом для загруженных приложений UWP?
(Также не очень важный вопрос, но позже он, вероятно, будет важен. Как бы вы интегрировали купленный / самостоятельно созданный сертификат?)
1012 * редактировать *
Хорошо, пока я создал сертификат для подписи пакетов примерно так: я открыл Power Shell и записал в нем следующее:
$notAfter = [datetime]::Today.AddYears(5)
$thumb = (New-SelfSignedCertificate -Type Custom -Subject "CN=myCN" -KeyUsage DigitalSignature -FriendlyName iTest -CertStoreLocation "Cert:\LocalMachine\My" -NotAfter $notAfter).Thumbprint
$pwd = ConvertTo-SecureString -String t -Force -AsPlainText
Export-PfxCertificate -cert "Cert:\LocalMachine\My\$thumb" -FilePath C:\MyTest.pfx -Password $pwd
Затем я установил этот сертификат следующим образом:
- На ПК с Windows RT либо сопоставьте сетевой ресурс, либо подключите
USB-диск, на котором вы можете получить доступ к папке AppPackages, которая содержит
пакет приложения для установки. Используйте Windows Explorer, чтобы открыть эту папку.
- Дважды нажмите файл сертификата в папке, а затем нажмите Установить
Сертификат. Появится мастер импорта сертификатов.
- В группе «Местоположение хранилища» нажмите переключатель, чтобы изменить выбранный параметр на «Локальный компьютер».
- Нажмите Далее. Нажмите OK, чтобы подтвердить диалог UAC.
- В
на следующем экране мастера импорта сертификатов измените выбранное
Возможность разместить все сертификаты в следующем магазине.
- Нажмите
Кнопка просмотра. Во всплывающем окне «Выбор хранилища сертификатов» выполните прокрутку.
вниз и выберите Надежные люди, а затем нажмите OK.
- Нажмите кнопку «Далее»;
появляется новый экран. Нажмите кнопку Готово.
- Диалог подтверждения
должен появиться; если это так, нажмите ОК. (Если другой диалог показывает, что
Возникла проблема с сертификатом, возможно, вам придется
Устранение неполадок сертификата. Тем не менее, описывая, что делать в этом
дело выходит за рамки этой темы.)
Затем в Visual Studio я вхожу в свойства моего Package.appxmanifest
-> Выбрать сертификат -> Выбрать из файла
Я выбираю свой файл и получаю это сообщение об ошибке:
Разработчику манифеста не удалось импортировать сертификат.
Выбранный вами сертификат недействителен для подписи, поскольку срок его действия истек или возникла другая проблема. Для получения дополнительной информации см. http://go.microsoft.com/fwlink/?LinkID=241478.
Но это не помогает мне. Я предполагаю, что я пропустил много шагов. Что еще мне нужно сделать?
edit2
Я пытался использовать signtool с windows powershell:
signtool sign /fd sha256 /a /f C:\MyTest.pfx /p t C:\path\to\Package.appxmanifest
Это не сработало. Сообщение об ошибке (бесплатный перевод с немецкого на английский):
signtool: имя "signtool" не идентифицировано как имя командлета, функции, файла сценария или исполняемого файла. Проверьте правильное имя или путь к нему и повторите попытку.
Мой signtool.exe находится здесь: C: \ Program Files (x86) \ Windows Kits \ 10 \ bin \ x86