我仔细阅读了问题13335419、8748089、4282405和其他一些问题。他们指出最可能的原因是嵌入空间。另一个答案是可能的证书问题。我使用本教程作为指南。
\n\n我签发了真实的证书,而不是像问题中那样的自我证书。我还使用最新的 JDK,1.8.0-60(64 位)。我卸载了所有其他 JDK。
\n\n电脑:
\n\nOS: Windows 7 64-bit\nJDK Path: "C:\\Program Files\\Java\\jdk1.8.0_60"\nRun Code Online (Sandbox Code Playgroud)\n\n我尝试了多种技术来消除空间问题。从管理命令提示符处:
\n\n命令行:
\n\njarsigner.exe \xe2\x80\x93keypass <key password> -keystore C:\\SoftDev\\JavaWorkspaces\\myproject\\Versions\\Current64\\mykeystore.keystore \xe2\x80\x93storepass <store password> -tsa http://timestamp.comodoca.com/rfc3161 -digestalg SHA2 C:\\SoftDev\\JavaWorkspaces\\myproject\\Versions\\Current64\\build\\bin\\myproject.jar 31843016-4ab3-11e5-9ba9-0015170bee96\nRun Code Online (Sandbox Code Playgroud)\n\n我通过查看证书详细信息验证了我的证书使用算法 SHA-2 (SHA-256)。当我将证书导出到 PFX 文件时,我尝试了复选框 1(包括路径中的所有证书)和复选框 3(扩展属性)的两种排列。我最初选择导出私钥。
\n\n我与密钥颁发者交谈,他们认为别名应该是 39 个字符,但是我重新检查了发出该命令的命令,经过多次尝试,我得到了 37 个字符。
\n\nkeytool.exe -importkeystore …Run Code Online (Sandbox Code Playgroud) 我遇到了与此处描述完全相同的问题: “不允许用户交互”尝试使用 codesign 对 OSX 应用程序进行签名
所以现在我想将私钥访问控制更改为允许所有应用程序访问此项。当我选中此选项时,一切看起来都很好;我被要求输入管理员密码,然后窗口关闭。
但是,当我再次检查密钥的访问控制时,会再次检查其他选项;只允许应用程序列表...
我正在尝试解决 Xcode 8.3.3 的一个问题,该问题阻止我在设备上测试我的应用程序。
\n\n目前我正在使用免费的配置帐户进行测试。\n我已经工作了好几个月没有任何问题,然后我已经升级到 Sierra 和 Xcode 8.3.3。\n不幸的是我不知道正是在什么操作/更新之后问题开始了,因为我已经好几个月没有使用 Xcode 了。
\n\n问题:当我尝试构建在 iPhone 上运行的应用程序时,我在项目页面的常规 > 签名视图下收到以下错误:
\n\n自动签名失败\nXcode 无法配置此目标。请在http://bugreport.apple.com/提交错误报告,并包含报告导航器中的更新签名报告。
\n\n签名证书无效。\n签名证书“iPhone Developer: edoxxx@me.com (xxxxxxx)”、序列号“xxxxxxx”对于代码签名无效。它可能已被撤销或过期。
\n\n这个问题要么发生在我的主 Mac 帐户上,要么如果我创建一个全新的用户帐户,\n如果我使用另一个 AppleID 帐户进行代码签名,也会发生此问题。\n但如果我将同一台计算机启动到另一个计算机上,则不会发生此问题macOS 安装(使用相同的 AppleID 和相同的设备)。在最后一种情况下,我能够在我的设备上构建并运行该应用程序,没有任何问题。
\n\n由于这种行为,我认为这与第一个操作系统安装中的某些软件垃圾有关,与我的用户的“数据”或我的 AppleID 帐户无关。
\n\n我已经尝试了在互联网上找到的所有方法来清理 Xcode 安装,包括完全删除/重新安装以及钥匙串清理。但没有解决任何问题。
\n\n我在本主题中找到了一些相关信息:\n https://forums.developer.apple.com/thread/83611 \xe2\x80\x8c\n但没有真正的解决方案。
\n\n希望有人能帮助我:)
\n\n再见,\n爱德华多
\n我维护操作系统软件,该软件作为 Mach-O 可执行文件以 zip 形式分发。它没有打包为应用程序。我可以毫无问题地对其进行协同设计,但我能找到的所有对公证的引用都在谈论.apps。有谁知道如何公证简单的可执行文件?
我需要每天午夜创建我的 macOS 应用程序版本。我希望它是代码签名的,这样人们就可以使用它而无需跳过箍。我在午夜睡着了,我太忙了,无法手动执行此操作。我想通过启动代理运行 xcodebuild 并在远离键盘的情况下获得一个签名的应用程序。但是代码签名总是失败。
它失败并出现以下错误:
No signing certificate "Mac Development" found: No "Mac Development" signing certificate matching team ID "H7V7XYVQ7D" with a private key was found.
Run Code Online (Sandbox Code Playgroud)
当我观看时它不会失败,这意味着它必须与钥匙串锁定本身有关。不久前我试图解决这个问题,但没有运气:
但没有任何作用。这甚至可能吗?
我需要使用特定的签名配置来签署产品风格。我在 stackoverflow 上找到了一些参考资料,例如this和this。它适用于我的风味发布版本,但不适用于调试版本。我在 gradle 中有这样的配置:
...
signingConfigs {
release {
storeFile file("../config/keystores/release_keystore")
storePassword "mysecurepassword"
keyAlias "myultrasecurealias"
keyPassword "myreallysecurekeypassword"
}
debug {
storeFile file("../config/keystores/debug.keystore")
storePassword "mysecurepassword"
keyAlias "myultrasecurealias"
keyPassword "myreallysecurekeypassword"
}
other {
storeFile file("../config/keystores/other")
storePassword "mysecurepassword"
keyAlias "myultrasecurealias"
keyPassword "myreallysecurekeypassword"
}
}
flavorDimensions "dim"
productFlavors {
production {
dimension "dim"
}
other {
dimension "dim"
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
productFlavors.other.signingConfig signingConfigs.other
productFlavors.production.signingConfig signingConfigs.release
}
debug {
productFlavors.other.signingConfig signingConfigs.other
productFlavors.production.signingConfig …Run Code Online (Sandbox Code Playgroud) android code-signing gradle build.gradle android-gradle-plugin
我为 Word 和 Excel 开发 VSTO 解决方案。从昨天开始,由于没有明显的原因,我现在无法调试我的任何解决方案。即使当我尝试调试新的空白 VSTO 项目时,我也会遇到相同的症状。
当加载项启动时(通常在 Excel 或 Word 启动时),将显示以下内容:
System.Security.SecurityException:此应用程序中的自定义功能将不起作用,因为用于签署 ExcelAddIn1 部署清单的证书或其位置不受信任。请联系您的管理员以获得进一步帮助。
Word 和 Excel 都会出现这种情况。我在 Windows 10 和 Office 365(即点即用版本)下从 Visual Studio 2017 进行调试。这是VS2017没有正确注册测试证书的问题吗?或者可能是我的 Windows 配置有问题(证书包含列表等)?
更新和修复Visual Studio 2017没有任何效果。安装 VS2019 并使用新的空白 Excel VSTO 插件进行测试没有任何效果。使用 EV 代码签名证书(来自 Sectigo,仍然有效且过去多次使用)发布空白加载项也会产生同样的问题。
我现在怀疑这可能是由于部署清单分区造成的。如何调查清单的注册位置及其“有效”位置?这样我就可以验证两者是否匹配。
使用 Visual Studio 2019 Community 对 Server Core Windows Server 2019 Datacenter Edition 上的 Windows 二进制文件进行签名。
signtool.exe行为不正确(打开 PFX 文件时出现问题),因此建议我们切换到 PowerShell + Set-AuthenticodeSignature。
使用以下命令:
$securepassword = ConvertTo-SecureString -String $password -AsPlainText -Force
$pfx = Get-PfxData -FilePath $certificate -Password $securepassword
$cert = $pfx.EndEntityCertificates[0]
Set-AuthenticodeSignature -FilePath $target -Certificate $cert -HashAlgorithm "SHA256" -TimestampServer http://timestamp.digicert.com
Run Code Online (Sandbox Code Playgroud)
结果是具有预期 SHA256 签名的二进制文件,但是时间戳签名是 SHA1。也尝试过用作http://timestamp.digicert.com?alg=sha256服务器,但是Set-AuthenticodeSignature根本不添加时间戳签名。
由于该命令不允许您指定时间戳算法的哈希值,我们该如何实现这一点呢?
我们有一个 Windows UWP 应用程序,目前在 Microsoft 商店中。该项目包括一个商店关联文件,其中包含发布者属性,其中一个是通用名称。我们的商店帐户将 CN 显示为类似于 GUID 的字符串值。它将显示名称显示为我们的公司名称。在 Visual Studio 中,我们可以使用自签名证书构建用于旁加载和代码签名的应用程序,其中证书的 CN 与 Store CN(类似 GUID 的字符串)相同。这使我们能够在商店版本上加载新版本的应用程序,以便快速测试并为特定客户提供新功能。然后,侧载版本最终可以使用较新的已发布商店版本进行更新。
我的问题是:我们想用我们从受信任的证书颁发机构购买的代码签名证书对应用程序进行签名。问题是受信任的代码签名证书必须将通用名称作为公司名称。我们似乎只能使用通用名称与商店关联文件中的 CN 相同的证书(类似字符串的 GUID)对应用程序进行签名。这是存储关联应用程序的已知限制还是我们遗漏了什么?
code-signing ×10
macos ×4
ios ×2
notarize ×2
xcode ×2
android ×1
authenticode ×1
build.gradle ×1
clickonce ×1
gradle ×1
jarsigner ×1
java ×1
keystore ×1
keytool ×1
macos-mojave ×1
msix ×1
powershell ×1
sideloading ×1
stapler ×1
vsto ×1
windows ×1
xcode8 ×1
xcodebuild ×1