C# 无法为macOS的使用对.net核心应用程序进行公证
我正在尝试公证我的.net核心应用程序在MacOS设备上运行,当我公证它时,我得到的错误是 可执行文件未启用强化运行时 如果我将C# 无法为macOS的使用对.net核心应用程序进行公证,c#,.net-core,notarize,dotnet-publish,C#,.net Core,Notarize,Dotnet Publish,我正在尝试公证我的.net核心应用程序在MacOS设备上运行,当我公证它时,我得到的错误是 可执行文件未启用强化运行时 如果我将--options=runtime标志添加到签名操作,我的控制台应用程序将停止工作。我在dotnet文档中发现,您必须向应用程序主机添加以下权利 com.apple.security.cs.allow-jit com.apple.security.cs.allow-unsigned-executable-memory com.apple.security.cs.all
--options=runtime
标志添加到签名操作,我的控制台应用程序将停止工作。我在dotnet文档中发现,您必须向应用程序主机添加以下权利
- com.apple.security.cs.allow-jit
- com.apple.security.cs.allow-unsigned-executable-memory
- com.apple.security.cs.allow-dyld-environment-variables
- com.apple.security.cs.disable-library-validation
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.apple.security.cs.allow-jit</key>
<true/>
<key>com.apple.security.cs.allow-unsigned-executable-memory</key>
<true/>
<key>com.apple.security.cs.allow-dyld-environment-variables</key>
<true/>
<key>com.apple.security.cs.disable-library-validation</key>
<true/>
</dict>
</plist>
com.apple.security.cs.allow-jit
com.apple.security.cs.allow-unsigned-executable-memory
com.apple.security.cs.allow-dyld-environment-variables
com.apple.security.cs.disable-library-validation
但还是失败了。这是我必须添加到发布过程中的内容吗?解决方案是在签署代码时使用authorights.plist:
codesign --timestamp --sign "CERTNAME" FILENAME --options=runtime --no-strict --entitlements entitlements.plist