Editja

PermissionSetAttribute Class

Definition

Caution

Code Access Security is not supported or honored by the runtime.

Allows security actions for a PermissionSet to be applied to code using declarative security. This class cannot be inherited.

public ref class PermissionSetAttribute sealed : System::Security::Permissions::CodeAccessSecurityAttribute
[System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)]
[System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public sealed class PermissionSetAttribute : System.Security.Permissions.CodeAccessSecurityAttribute
[System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)]
public sealed class PermissionSetAttribute : System.Security.Permissions.CodeAccessSecurityAttribute
[<System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)>]
[<System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
type PermissionSetAttribute = class
    inherit CodeAccessSecurityAttribute
[<System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)>]
type PermissionSetAttribute = class
    inherit CodeAccessSecurityAttribute
Public NotInheritable Class PermissionSetAttribute
Inherits CodeAccessSecurityAttribute
Inheritance
Attributes

Remarks

Caution

Code Access Security (CAS) has been deprecated across all versions of .NET Framework and .NET. Recent versions of .NET do not honor CAS annotations and produce errors if CAS-related APIs are used. Developers should seek alternative means of accomplishing security tasks.

The PermissionSetAttribute properties Name, File, and XML are mutually exclusive, meaning that a permission set can have as its source only one of the following: a named permission set, a file containing an XML representation of a permission set, or a string containing an XML representation of a permission set.

The scope of the declaration that is allowed depends on the SecurityAction that is used. A SecurityAction performed on a PermissionSet is the equivalent of performing that action on each of the permissions within the set.

The security information declared by a security attribute is stored in the metadata of the attribute target and is accessed by the system at run time. Security attributes are used only for declarative security. For imperative security, use the corresponding permission class.

Constructors

Name Description
PermissionSetAttribute(SecurityAction)

Initializes a new instance of the PermissionSetAttribute class with the specified security action.

Properties

Name Description
File

Gets or sets a file containing the XML representation of a custom permission set to be declared.

Hex

Gets or sets the hexadecimal representation of the XML encoded permission set.

Name

Gets or sets the name of the permission set.

UnicodeEncoded

Gets or sets a value indicating whether the file specified by File is Unicode or ASCII encoded.

XML

Gets or sets the XML representation of a permission set.

Methods

Name Description
CreatePermission()

This method is not used.

CreatePermissionSet()

Creates and returns a new permission set based on this permission set attribute object.

Applies to

See also