Edit

SocketPermissionAttribute Class

Definition

Caution

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

Specifies security actions to control Socket connections. This class cannot be inherited.

public ref class SocketPermissionAttribute 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 SocketPermissionAttribute : 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 SocketPermissionAttribute : 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 SocketPermissionAttribute = 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 SocketPermissionAttribute = class
    inherit CodeAccessSecurityAttribute
Public NotInheritable Class SocketPermissionAttribute
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.

To use this attribute, your Socket connection must conform to the properties that are specified in your SocketPermissionAttribute. For example, to apply the permission to a Socket connection on port 80, set the Port property of the SocketPermissionAttribute to "80". The security information that is specified in SocketPermissionAttribute is stored in the metadata of the attribute target, which is the class to which the SocketPermissionAttribute is applied. The system then accesses the information at run time. The SecurityAction that is passed to the constructor determines the allowable SocketPermissionAttribute targets.

Note

The properties of a SocketPermissionAttribute must have values that are not null. Also, once set, the values of the properties cannot be changed.

Note

For more information about using attributes, see Attributes.

Constructors

Name Description
SocketPermissionAttribute(SecurityAction)

Initializes a new instance of the SocketPermissionAttribute class with the specified SecurityAction value.

Properties

Name Description
Access

Gets or sets the network access method that is allowed by this SocketPermissionAttribute.

Host

Gets or sets the DNS host name or IP address that is specified by this SocketPermissionAttribute.

Port

Gets or sets the port number that is associated with this SocketPermissionAttribute.

Transport

Gets or sets the TransportType that is specified by this SocketPermissionAttribute.

Methods

Name Description
CreatePermission()

Creates and returns a new instance of the SocketPermission class.

Applies to

See also