Поделиться через


PermissionSet.RemovePermission(Type) Метод

Определение

Удаляет разрешение определенного типа из набора.

public:
 System::Security::IPermission ^ RemovePermission(Type ^ permClass);
public:
 virtual System::Security::IPermission ^ RemovePermission(Type ^ permClass);
public System.Security.IPermission RemovePermission (Type permClass);
public System.Security.IPermission? RemovePermission (Type? permClass);
public virtual System.Security.IPermission RemovePermission (Type permClass);
member this.RemovePermission : Type -> System.Security.IPermission
abstract member RemovePermission : Type -> System.Security.IPermission
override this.RemovePermission : Type -> System.Security.IPermission
Public Function RemovePermission (permClass As Type) As IPermission
Public Overridable Function RemovePermission (permClass As Type) As IPermission

Параметры

permClass
Type

Тип удаляемого разрешения.

Возвращаемое значение

Разрешение, удаленное из набора.

Исключения

Метод вызывается из ReadOnlyPermissionSet.

Примеры

В следующем примере кода показано использование RemovePermission метода для удаления FileIOPermission из набора разрешений. Этот пример входит в состав более крупного примера использования класса PermissionSet.

// Remove FileIOPermission from the permission set.
ps5->RemovePermission( FileIOPermission::typeid );
Console::WriteLine( "The last permission set after removing FileIOPermission = {0}", ps5 );
// Remove FileIOPermission from the permission set.
ps5.RemovePermission(typeof(FileIOPermission));
Console.WriteLine("The last permission set after removing FileIOPermission = "
    + ps5.ToString());
' Remove FileIOPermission from the permission set.
ps5.RemovePermission(GetType(FileIOPermission))
Console.WriteLine("The last permission set after removing FileIOPermission = " & ps5.ToString())

Комментарии

Важно!

Невозможно удалить разрешения из неограниченного набора разрешений. Набор разрешений остается неограниченным после попытки удалить разрешение, и исключение не создается.

Следующий код C# пытается удалить FileIOPermission из FullTrust набора разрешений, но разрешение не удаляется.

PolicyLevel myPol = PolicyLevel.CreateAppDomainLevel();  
PermissionSet myPermSet = myPol.GetNamedPermissionSet("FullTrust");  
myPermSet.RemovePermission(typeof(FileIOPermission));  

Примечания для тех, кто наследует этот метод

При наследовании от PermissionSetможно изменить поведение RemovePermission(Type) метода, переопределив RemovePermissionImpl(Type) метод .

Применяется к