我可以发布 UWP 应用程序的 StoreKey.pfx
Can I publish the StoreKey.pfx of an UWP application
我有一个开源 windows 商店应用程序 (UWP)。当我将应用程序与商店关联时,会创建一个 Package.StoreAssociation.xml
和一个 <AppName>_StoreKey.pfx
以及对我的 Package.appxmanifest
(身份标签;名称和发布者属性)的一些修改。
- 我能否将该信息提交到 public git 存储库(证书必须在存储库中,因为我想使用 AppVeyor 构建程序包)?
- 我应该加密吗?
- 如果证书泄露了,我可以吊销证书吗?
- 对 appxmanifest 的更改是否敏感?
Can I commit that information to a public git repository (the certificate must be in the repository because I want to build the package with AppVeyor)?
对于 public git 存储库,不应提交存储密钥 .pfx 文件(添加到 .git 忽略文件)。如果您想使用 CI 系统,请创建一个私有存储库或将 .pfx 文件附加到 CI 后端中的克隆项目。
Should I encrypt it?
此文件已加密,用于在提交到 Windows 商店之前签署您的应用程序,另请参阅 How to create an app package signing certificate
Could I revoke the certificate if it leaked?
您需要保留一个新的应用名称,参见here
Are the changes to appxmanifest sensitive?
取决于您所做的更改,.packagemanifest 文件中的标识和包信息非常重要。参见 App package manifest
您不应将 <AppName>_StoreKey.pfx
文件包含到您的 public 存储库中。但是你仍然可以使用 AppVeyor CI.
1.Change 您的 *.csproj
文件以包含此信息。
<PropertyGroup Condition="('$(Configuration)' == 'Debug') Or ('$(UseTemporarySignCert)' == 'true')">
<PackageCertificateKeyFile><AppName>_TemporaryKey.pfx</PackageCertificateKeyFile>
</PropertyGroup>
<PropertyGroup Condition="('$(Configuration)' == 'Release') And ('$(UseTemporarySignCert)' != 'true')">
<PackageCertificateThumbprint><!-- Your <AppName>_StoreKey.pfx Thumbprint Here --></PackageCertificateThumbprint>
</PropertyGroup>
2.Import 您的 <AppName>_StoreKey.pfx
证书到:存储位置 - 当前用户,证书存储 - 个人
3.Add UseTemporarySignCert
值为 true
的环境变量到您的 AppVeyor 项目。
因此,在发布模式下,您无需 <AppName>_StoreKey.pfx
即可自行构建签名项目,然后发布到商店。
AppVeyor 将与 TemporaryKey.pfx
一起使用。
我有一个开源 windows 商店应用程序 (UWP)。当我将应用程序与商店关联时,会创建一个 Package.StoreAssociation.xml
和一个 <AppName>_StoreKey.pfx
以及对我的 Package.appxmanifest
(身份标签;名称和发布者属性)的一些修改。
- 我能否将该信息提交到 public git 存储库(证书必须在存储库中,因为我想使用 AppVeyor 构建程序包)?
- 我应该加密吗?
- 如果证书泄露了,我可以吊销证书吗?
- 对 appxmanifest 的更改是否敏感?
Can I commit that information to a public git repository (the certificate must be in the repository because I want to build the package with AppVeyor)?
对于 public git 存储库,不应提交存储密钥 .pfx 文件(添加到 .git 忽略文件)。如果您想使用 CI 系统,请创建一个私有存储库或将 .pfx 文件附加到 CI 后端中的克隆项目。
Should I encrypt it?
此文件已加密,用于在提交到 Windows 商店之前签署您的应用程序,另请参阅 How to create an app package signing certificate
Could I revoke the certificate if it leaked?
您需要保留一个新的应用名称,参见here
Are the changes to appxmanifest sensitive?
取决于您所做的更改,.packagemanifest 文件中的标识和包信息非常重要。参见 App package manifest
您不应将 <AppName>_StoreKey.pfx
文件包含到您的 public 存储库中。但是你仍然可以使用 AppVeyor CI.
1.Change 您的 *.csproj
文件以包含此信息。
<PropertyGroup Condition="('$(Configuration)' == 'Debug') Or ('$(UseTemporarySignCert)' == 'true')">
<PackageCertificateKeyFile><AppName>_TemporaryKey.pfx</PackageCertificateKeyFile>
</PropertyGroup>
<PropertyGroup Condition="('$(Configuration)' == 'Release') And ('$(UseTemporarySignCert)' != 'true')">
<PackageCertificateThumbprint><!-- Your <AppName>_StoreKey.pfx Thumbprint Here --></PackageCertificateThumbprint>
</PropertyGroup>
2.Import 您的 <AppName>_StoreKey.pfx
证书到:存储位置 - 当前用户,证书存储 - 个人
3.Add UseTemporarySignCert
值为 true
的环境变量到您的 AppVeyor 项目。
因此,在发布模式下,您无需 <AppName>_StoreKey.pfx
即可自行构建签名项目,然后发布到商店。
AppVeyor 将与 TemporaryKey.pfx
一起使用。