gpt4 book ai didi

c# - 限制使用未签名程序集中的程序集

转载 作者:太空狗 更新时间:2023-10-29 21:45:40 25 4
gpt4 key购买 nike

我需要在程序集中进行限制,以便只有使用给定 key 签名的程序集才能使用它。我没有经验,但我的理解是签名是为了帮助确定谁创建了程序集。因此,仅对该程序集签名不足以确保所有调用程序集都已签名。可能反过来是正确的,即如果一个程序集被签名,它所依赖的所有程序集都应该被签名(也许通过相同的 key )。有什么方法可以满足要求?

最佳答案

您可以使用 PublisherIdentityPermissionAttribute .

如果您将 PublisherIdentityPermissionAttribute 应用于 MyClass 类,则只有由 mycert.cer 签名的程序集中的类证书可以使用你的类(class)。你需要输入 SecurityAction.Demand

All callers higher in the call stack are required to have been granted the permission specified by the current permission object

像这样使用

[PublisherIdentityPermission(SecurityAction.Demand, CertFile = "mycert.cer")]
public class MyClass

您还可以在程序集级别使用它来保护整个程序集(但是,除非您在配置中设置 <NetFx40_LegacySecurityPolicy enabled="true"/>,否则自 .Net 4.0 起程序集级别的安全性将不起作用)。

关于c# - 限制使用未签名程序集中的程序集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13697390/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com