EnvironmentPermission Класс

Определение

Управляет доступом к переменным среды системы и пользователя.Controls access to system and user environment variables. Этот класс не наследуется.This class cannot be inherited.

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

Комментарии

Имена переменных среды обозначаются одним или несколькими списками имен без учета регистра, разделенными точкой с запятой, с отдельными списками для доступа на чтение и запись к именованным переменным.Environment variable names are designated by one or more case-insensitive name lists separated by semicolons, with separate lists for read and write access to the named variables. Доступ на запись включает возможность создания и удаления переменных среды, а также изменения существующих значений.Write access includes the ability to create and delete environment variables as well as to change existing values.

Примечание

В версиях .NET Framework до .NET Framework 4.NET Framework 4можно CodeAccessPermission.Deny использовать метод, чтобы предотвратить случайный доступ к системным ресурсам с помощью доверенного кода.In versions of the .NET Framework before the .NET Framework 4.NET Framework 4, you could use the CodeAccessPermission.Deny method to prevent inadvertent access to system resources by trusted code. Denyтеперь устарел, а доступ к ресурсам определяется исключительно предоставленным набором разрешений для сборки.Deny is now obsolete, and access to resources is now determined solely by the granted permission set for an assembly. Чтобы ограничить доступ к файлам, необходимо запустить частично доверенный код в песочнице и назначить ему разрешения только тем ресурсам, к которым разрешен доступ коду.To limit access to files, you must run partially trusted code in a sandbox and assign it permissions only to resources that the code is allowed to access. Сведения о запуске приложения в песочнице см. в разделе как Выполнение не вполне безопасного кода в изолированной среде.For information about running an application in a sandbox, see How to: Run Partially Trusted Code in a Sandbox.

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

EnvironmentPermission(EnvironmentPermissionAccess, String)

Инициализирует новый экземпляр класса EnvironmentPermission с указанными доступом к указанным переменным среды.Initializes a new instance of the EnvironmentPermission class with the specified access to the specified environment variables.

EnvironmentPermission(PermissionState)

Выполняет инициализацию нового экземпляра класса EnvironmentPermission, используя заданное ограниченное либо неограниченное разрешение.Initializes a new instance of the EnvironmentPermission class with either restricted or unrestricted permission as specified.

Методы

AddPathList(EnvironmentPermissionAccess, String)

Добавляет к существующему состоянию разрешения доступ для указанных переменных среды.Adds access for the specified environment variables to the existing state of the permission.

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()

Создает и возвращает идентичную копию текущего разрешения.Creates and returns an identical copy of the current permission.

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 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)
GetPathList(EnvironmentPermissionAccess)

Возвращает все переменные среды с заданным разрешением EnvironmentPermissionAccess.Gets all environment variables with the specified EnvironmentPermissionAccess.

GetType()

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

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

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

IsSubsetOf(IPermission)

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

IsUnrestricted()

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

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)
SetPathList(EnvironmentPermissionAccess, String)

Задает указанный доступ для указанных переменных среды к существующему состоянию разрешения.Sets the specified access to the specified environment variables to the existing state of the permission.

ToString()

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

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

Создает кодировку XML для разрешения и его текущего состояния.Creates an XML encoding of the permission 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)

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

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