AspNetHostingPermission Класс

Определение

Управляет разрешениями на доступ в средах с ASP.NET.Controls access permissions in ASP.NET hosted environments. Этот класс не наследуется.This class cannot be inherited.

public ref class AspNetHostingPermission sealed : System::Security::CodeAccessPermission, System::Security::Permissions::IUnrestrictedPermission
[System.Serializable]
public sealed class AspNetHostingPermission : System.Security.CodeAccessPermission, System.Security.Permissions.IUnrestrictedPermission
type AspNetHostingPermission = class
    inherit CodeAccessPermission
    interface IUnrestrictedPermission
Public NotInheritable Class AspNetHostingPermission
Inherits CodeAccessPermission
Implements IUnrestrictedPermission
Наследование
AspNetHostingPermission
Атрибуты
Реализации

Примеры

В следующем примере кода показан класс, защищенный с AspNetHostingPermission помощью разрешения.The following code example shows a class protected using the AspNetHostingPermission permission. Чтобы создать экземпляр класса, код должен Minimal работать Level по меньшей мере AspNetHostingPermission с разрешением.Code must be running with at least MinimalAspNetHostingPermission permission Level in order to create an instance of the class.

using System;
using System.Web;
using System.Security.Permissions;

[AspNetHostingPermission(SecurityAction.Demand, Level=AspNetHostingPermissionLevel.Medium)]
public class CustomAspNetClass
{

}
Imports System.Web
Imports System.Security.Permissions

<AspNetHostingPermission(SecurityAction.Demand, Level:=AspNetHostingPermissionLevel.Medium)> _
Public Class CustomAspNetClass

End Class

Комментарии

AspNetHostingPermission Класс используется совместно с системой управления доступом для кода, чтобы обеспечить защиту открытых типов в пространствах имен System. Web.The AspNetHostingPermission class is used in conjunction with code access security to help protect public types in the System.Web namespaces. Для доступа к защищенным классам Minimal ASP.NET коду необходимо назначить по крайней мере уровень доверия.Code must be assigned at least the Minimal trust level to access protected ASP.NET classes.

Свойство класса задается путем настройки соответствующего уровня доверия в элементе конфигурации доверия. AspNetHostingPermission LevelThe AspNetHostingPermission class's Level property is set by configuring the appropriate trust level in the trust configuration element. По умолчанию level атрибут trust элемента Fullконфигурации имеет значение.By default, the level attribute of the trust configuration element is set to Full. По умолчанию приложения ASP.NET выполняются на Unrestricted уровне.That is, by default, ASP.NET applications run under the Unrestricted level. При создании домена приложения ASP.NET ASP.NET считывает значение, указанное level для атрибута trust элемента Configuration, AspNetHostingPermission создает экземпляр класса с указанным Level атрибутом и затем добавляет класс в набор разрешений для домена приложения.When an ASP.NET application domain is created, ASP.NET reads the value specified for the level attribute of the trust configuration element, creates an instance of the AspNetHostingPermission class with the specified Level attribute, and then adds the class to the permission set for the application domain. Дополнительные сведения см. в разделе ASP.NET Trust Levels and Policy Files.For more information, see ASP.NET Trust Levels and Policy Files.

Рекомендуется присвоить level атрибуту trust элемента High конфигурации значение для сайтов, которые являются доверенными.It is recommended that you set the level attribute of the trust configuration element to High for sites that are trusted. Для ненадежных сайтов, таких как веб-сервер, на котором размещены сайты, выполняющие код от внешнего клиента, рекомендуется присвоить level атрибуту trust элемента Mediumконфигурации значение.For sites that are not trusted, such as a Web server that hosts sites that run code from an external customer, it is recommended that you set the level attribute of the trust configuration element to Medium.

Наборы разрешений, определенные по умолчанию для .NET Framework (например, LocalIntranet, Internet и т. д.), не включают AspNetHostingPermission разрешение.The permission sets that are defined by default for the .NET Framework (for example, LocalIntranet, Internet, and so on) do not include the AspNetHostingPermission permission. Это значит AspNetHostingPermission , что разрешение назначается по умолчанию только приложениям, которые выполняются в Full режиме доверия.That is, the AspNetHostingPermission permission is only assigned, by default, to applications that are running under Full trust.

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

AspNetHostingPermission(AspNetHostingPermissionLevel)

Выполняет инициализацию нового экземпляра класса AspNetHostingPermission с заданным уровнем разрешения.Initializes a new instance of the AspNetHostingPermission class with the specified permission level.

AspNetHostingPermission(PermissionState)

Инициализирует новый экземпляр класса AspNetHostingPermission с заданным значением перечисления PermissionState.Initializes a new instance of the AspNetHostingPermission class with the specified PermissionState enumeration value.

Свойства

Level

Получает или задает уровень разрешения текущего размещения для приложения ASP.NET.Gets or sets the current hosting permission level for an ASP.NET application.

Методы

Assert()

Объявляет, что вызывающий код может получить доступ к ресурсу, защищенному требованием разрешения, через код, вызывающий этот метод, даже если вызывающим объектам выше в стеке вызовов не предоставлено разрешение на доступ к ресурсу.Declares that the calling code can access the resource protected by a permission demand through the code that calls this method, even if callers higher in the stack have not been granted permission to access the resource. Assert() может вызвать проблемы системы безопасности.Using Assert() can create security issues.

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

При реализации производным классом создает и возвращает идентичную копию текущего объекта разрешения.When implemented by a derived class, creates and returns an identical copy of the current permission object.

Demand()

Принудительно создает SecurityException во время выполнения, если все вызывающие методы, расположенные выше в стеке вызовов, не получили разрешения, указанного текущим экземпляром.Forces a SecurityException at run time if all callers higher in the call stack have not been granted the permission specified by the current instance.

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

Запрещает вызывающим объектам выше в стеке вызовов использовать код, который вызывает этот метод для доступа к ресурсу, указанному текущим экземпляром.Prevents callers higher in the call stack from using the code that calls this method to access the resource specified by the current instance.

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

Определяет, равен ли заданный объект CodeAccessPermission текущему объекту CodeAccessPermission.Determines whether the specified CodeAccessPermission object is equal to the current CodeAccessPermission.

(Унаследовано от CodeAccessPermission)
FromXml(SecurityElement)

Восстанавливает объект разрешения с определенным состоянием из XML-кодирования.Reconstructs a permission object with a specified state from an XML encoding.

GetHashCode()

Возвращает хэш-код для объекта CodeAccessPermission, который можно использовать в алгоритмах хэширования и структурах данных, например в хэш-таблице.Gets a hash code for the CodeAccessPermission object that is suitable for use in hashing algorithms and data structures such as a hash table.

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

Возвращает объект Type для текущего экземпляра.Gets the Type of the current instance.

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

При реализации с помощью производного класса создает и возвращает разрешение, представляющее собой пересечение текущего и заданного разрешений.When implemented by a derived class, creates and returns a permission that is the intersection of the current permission and the specified permission.

IsSubsetOf(IPermission)

Возвращает значение, определяющее, является ли текущее разрешение подмножеством заданного разрешения.Returns a value indicating whether the current permission is a subset of the specified permission.

IsUnrestricted()

Возвращает значение, определяющее, позволен ли неограниченный доступ к ресурсу, защищенному текущим разрешением.Returns a value indicating whether unrestricted access to the resource that is protected by the current permission is allowed.

MemberwiseClone()

Создает неполную копию текущего объекта Object.Creates a shallow copy of the current Object.

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

Запрещает вызывающим объектам выше в стеке вызовов использовать код, который вызывает этот метод для доступа ко всем ресурсам, за исключением ресурса, указанного текущим экземпляром.Prevents callers higher in the call stack from using the code that calls this method to access all resources except for the resource specified by the current instance.

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

Создает и возвращает строковое представление текущего объекта разрешений.Creates and returns a string representation of the current permission object.

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

Создает XML-кодирование для объекта разрешения и его текущего состояния.Creates an XML encoding of the permission object and its current state.

Union(IPermission)

Создает разрешение, представляющее собой объединение текущего и указанного разрешений.Creates a permission that is the union of the current permission and the specified permission.

Явные реализации интерфейса

IPermission.Demand() (Унаследовано от CodeAccessPermission)
IStackWalk.Assert() (Унаследовано от CodeAccessPermission)
IStackWalk.Demand() (Унаследовано от CodeAccessPermission)
IStackWalk.Deny() (Унаследовано от CodeAccessPermission)
IStackWalk.PermitOnly() (Унаследовано от CodeAccessPermission)

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

Дополнительно