C# Azure DevOps发布管道-如何解决强名称验证问题
我有一个C#exe,它引用了一些其他DLL,这些DLL使用强名称密钥进行签名。当我在本地系统中执行此操作时,它工作正常。但当我从Azure发布管道调用相同的exe时,它给出了以下错误 System.Security.SecurityException:强名称验证失败。(来自HRESULT的异常:0x8013141A) 我为所有引用的dll尝试了sn.exe-Vr“dll路径”。并且还尝试在exe的app.config中绕过trustedAppStrongNames enabled=“false”和“true”命令。但两者都没有帮助C# Azure DevOps发布管道-如何解决强名称验证问题,c#,dll,azure-devops,azure-pipelines,C#,Dll,Azure Devops,Azure Pipelines,我有一个C#exe,它引用了一些其他DLL,这些DLL使用强名称密钥进行签名。当我在本地系统中执行此操作时,它工作正常。但当我从Azure发布管道调用相同的exe时,它给出了以下错误 System.Security.SecurityException:强名称验证失败。(来自HRESULT的异常:0x8013141A) 我为所有引用的dll尝试了sn.exe-Vr“dll路径”。并且还尝试在exe的app.config中绕过trustedAppStrongNames enabled=“false”
有谁能为这个问题提出一个解决方案吗。提前感谢。您可以尝试在应用程序级别禁用强名称验证,方法是在
有关更多信息,请查看我不确定您是否有权跳过托管代理的验证。所以你可以做你自己的代理人或者
- 删除依赖项的强名称,或在没有强名称的情况下重新生成它们李>
- 在申请表上签名
有关此问题,请参阅类似问题。Hi Stelios,已经尝试过此方法,但没有帮助。如前所述,它在本地工作正常,但当它从管道调用时,会给出错误。@Tinz habe您试图在服务器级别禁用它吗?如我随附的Microsoft文档页所述?禁用所有应用程序的强名称绕过功能-子主题在调用exe之前,在hosted agent命令行任务中添加了“C:\Program Files(x86)\Microsoft SDK\Windows\v10.0A\bin\NETFX 4.7.2 Tools\x64\sn.exe”-Vr“{dll Path}”,并显示“为程序集添加的验证条目”,但它再次显示强名称验证失败。跳过验证是本地解决方法。强名称为程序集签名。
<configuration>
<runtime>
<bypassTrustedAppStrongNames enabled="true" />
</runtime>
</configuration>