Требование полного доверия для типов в сборке с атрибутом AllowPartiallyTrustedCallersAttribute
Обновлен: Ноябрь 2007
Когда сборка получает атрибут AllowPartiallyTrustedCallersAttribute, неявное требование LinkDemand, требующее от всех вызывающих объектов полной доверенности, запрещается. В некоторых ситуациях может возникнуть необходимость обеспечить возможность вызова определенных членов или классов в составе сборки из не вполне надежного кода, сохраняя защиту от не вполне надежного кода над остальными членами или классами этой же сборки. Следующие действия позволяют предоставить доступ к конкретным членам или классам из не вполне надежного кода, сохраняя запрет на доступ из него к остальным членам и классам.
Подпишите код строгим именем.
Примените атрибут AllowPartiallyTrustedCallersAttribute к сборке, чтобы не вполне надежные вызывающие объекты могли ее использовать.
Примените требование полного доверия к определенному члену или классу в составе сборки, описанной в шаге 2, который необходимо защитить от не вполне надежных вызывающих объектов.
Ниже перечислены требования, которые могут быть применены к коду с целью ограничить доступ со стороны не вполне надежного кода.
Чтобы обеспечить требование LinkDemand для полного доверия, примените следующий атрибут к классу или члену.
<PermissionSetAttribute(SecurityAction.LinkDemand, Name:="FullTrust")>
[PermissionSetAttribute(SecurityAction.LinkDemand, Name="FullTrust")]
Чтобы выполнить требование связывания, требующее от вызывающих объектов способности вызывать неуправляемый код, примените к классу или члену следующий атрибут.
<SecurityPermissionAttribute(SecurityAction.LinkDemand, UnmanagedCode:=True)>
[SecurityPermissionAttribute(SecurityAction.LinkDemand, UnmanagedCode=true)]
Чтобы обеспечить требование наследования для полного доверия, примените к классу или члену следующий атрибут.
<PermissionSet(SecurityAction.InheritanceDemand, Name:="FullTrust")>
[PermissionSet(SecurityAction.InheritanceDemand, Name="FullTrust")]
См. также
Основные понятия
Использование библиотек из не вполне надежного кода