SecurityException Класс

Определение

Исключение, формируемое при обнаружении ошибки безопасности.

public ref class SecurityException : Exception
public ref class SecurityException : SystemException
public class SecurityException : Exception
public class SecurityException : SystemException
[System.Serializable]
public class SecurityException : SystemException
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public class SecurityException : SystemException
type SecurityException = class
    inherit Exception
type SecurityException = class
    inherit SystemException
[<System.Serializable>]
type SecurityException = class
    inherit SystemException
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type SecurityException = class
    inherit SystemException
Public Class SecurityException
Inherits Exception
Public Class SecurityException
Inherits SystemException
Наследование
SecurityException
Наследование
SecurityException
Атрибуты

Комментарии

Исключение SecurityException возникает, если вызывающий объект не имеет разрешений, необходимых для доступа к ресурсу. В следующем примере создается экземпляр PermissionSet объекта, включающего UIPermission объект, разрешающий доступ к объектам пользовательского интерфейса, буферу обмена и RegistryPermission объекту для предотвращения доступа к реестру. Вызов PermissionSet.PermitOnly метода означает, что эти разрешения будут применяться независимо от разрешений, назначенных вызывающему объекту. В результате попытка создать раздел реестра вызывает SecurityExceptionисключение .

using Microsoft.Win32;
using System;
using System.Security;
using System.Security.Permissions;

public class Example
{
   public static void Main()
   {
      PermissionSet perms = new PermissionSet(null);
      perms.AddPermission(new UIPermission(PermissionState.Unrestricted));
      perms.AddPermission(new RegistryPermission(PermissionState.None));
      perms.PermitOnly();
      
      try {
          RegistryKey key = Registry.CurrentUser.CreateSubKey("MyCompany\\Applications");
          Console.WriteLine("Registry key: {0}", key.Name);
      }
      catch (SecurityException e) {
         Console.WriteLine("Security Exception:\n\n{0}", e.Message);      
      }
   }
}
// The example displays the following output:
//    Security Exception:
//    
//    Request for the permission of type 'System.Security.Permissions.RegistryPermission, 
//    mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed.
Imports Microsoft.Win32
Imports System.Security
Imports System.Security.Permissions

Module Example
   Public Sub Main()
      Dim perms As New PermissionSet(CType(Nothing, PermissionSet))
      perms.AddPermission(New UIPermission(PermissionState.Unrestricted))
      perms.AddPermission(New RegistryPermission(PermissionState.None))
      perms.PermitOnly()
      
      Try 
          Dim key As RegistryKey = Registry.CurrentUser.CreateSubKey("MyCompany\\Applications")
          Console.WriteLine("Registry key: {0}", key.Name)
      Catch e As SecurityException
         Console.WriteLine("Security Exception:\n\n{0}", e.Message)      
      End Try
   End Sub
End Module
' The example displays the following output:
'    Security Exception:
'    
'    Request for the permission of type 'System.Security.Permissions.RegistryPermission, 
'    mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed.

SecurityException использует COR_E_SECURITY HRESULT, имеющий значение 0x8013150A.

Список начальных значений свойств для экземпляра SecurityException класса см. в определенном SecurityException конструкторе.

Конструкторы

SecurityException()

Инициализирует новый экземпляр класса SecurityException стандартными свойствами.

SecurityException(SerializationInfo, StreamingContext)

Инициализирует новый экземпляр класса SecurityException с сериализованными данными.

SecurityException(String)

Инициализирует новый экземпляр класса SecurityException с указанным сообщением об ошибке.

SecurityException(String, AssemblyName, PermissionSet, PermissionSet, MethodInfo, SecurityAction, Object, IPermission, Evidence)

Инициализирует новый экземпляр класса SecurityException для исключения, вызванного недостаточным набором прав.

SecurityException(String, Exception)

Инициализирует новый экземпляр класса SecurityException указанным сообщением об ошибке и ссылкой на внутреннее исключение, вызвавшее данное исключение.

SecurityException(String, Object, Object, MethodInfo, Object, IPermission)

Инициализирует новый экземпляр класса SecurityException для исключения, вызванного отказом в стеке.

SecurityException(String, Type)

Инициализирует новый экземпляр класса SecurityException с указанным сообщением об ошибке и типом разрешения, которое стало причиной текущего исключения.

SecurityException(String, Type, String)

Инициализирует новый экземпляр класса SecurityException с указанным сообщением об ошибке, типом разрешения, которое стало причиной текущего исключения, и состоянием разрешения.

Свойства

Action

Возвращает или задает действие по обеспечению безопасности, вызвавшее исключение.

Data

Возвращает коллекцию пар «ключ-значение», предоставляющую дополнительные сведения об исключении.

(Унаследовано от Exception)
Demanded

Возвращает или задает затребованное разрешение безопасности, набор разрешений или коллекцию наборов разрешений, вызвавших сбой.

DenySetInstance

Возвращает или задает отклоненные разрешения, наборы разрешений или коллекции наборов разрешений, ставшие причиной несоблюдения требований безопасности.

FailedAssemblyInfo

Получает или задает сведения о сборке, вызвавшей сбой.

FirstPermissionThatFailed

Получает или задает первое разрешение в наборе разрешений или коллекции наборов разрешений, вызвавшее сбой требования.

GrantedSet

Получает или задает набор предоставленных разрешений сборки, вызвавшей SecurityException.

HelpLink

Получает или задает ссылку на файл справки, связанный с этим исключением.

(Унаследовано от Exception)
HResult

Возвращает или задает HRESULT — кодированное числовое значение, присвоенное определенному исключению.

(Унаследовано от Exception)
InnerException

Возвращает экземпляр класса Exception, который вызвал текущее исключение.

(Унаследовано от Exception)
Message

Возвращает сообщение, описывающее текущее исключение.

(Унаследовано от Exception)
Method

Возвращает или задает сведения о методе, связанном с исключением.

PermissionState

Возвращает или задает состояние разрешения, вызывающее исключение.

PermissionType

Возвращает или задает тип разрешения, вызвавшего сбой.

PermitOnlySetInstance

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

RefusedSet

Возвращает или задает отклоненный набор разрешений сборки, вызвавшей SecurityException.

Source

Возвращает или задает имя приложения или объекта, вызывавшего ошибку.

(Унаследовано от Exception)
StackTrace

Получает строковое представление непосредственных кадров в стеке вызова.

(Унаследовано от Exception)
TargetSite

Возвращает метод, создавший текущее исключение.

(Унаследовано от Exception)
Url

Получает или задает задает URL-адрес сборки, вызвавшей исключение.

Zone

Получает или задает зону сборки, вызвавшую исключение.

Методы

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
GetBaseException()

При переопределении в производном классе возвращает исключение Exception, которое является первопричиной одного или нескольких последующих исключений.

(Унаследовано от Exception)
GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetObjectData(SerializationInfo, StreamingContext)

Заполняет SerializationInfo сведениями об исключении SecurityException.

GetObjectData(SerializationInfo, StreamingContext)

При переопределении в производном классе задает объект SerializationInfo со сведениями об исключении.

(Унаследовано от Exception)
GetType()

Возвращает тип среды выполнения текущего экземпляра.

(Унаследовано от Exception)
MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
ToString()

Возвращает представление текущего SecurityException.

События

SerializeObjectState
Является устаревшей.

Возникает, когда исключение сериализовано для создания объекта состояния исключения, содержащего сериализованные данные об исключении.

(Унаследовано от Exception)

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

См. также раздел