Edit

Share via


SocketPermission Class

Definition

Caution

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

Controls rights to make or accept connections on a transport address.

public ref class SocketPermission sealed : System::Security::CodeAccessPermission, System::Security::Permissions::IUnrestrictedPermission
[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 SocketPermission : System.Security.CodeAccessPermission, System.Security.Permissions.IUnrestrictedPermission
[System.Serializable]
public sealed class SocketPermission : System.Security.CodeAccessPermission, System.Security.Permissions.IUnrestrictedPermission
public sealed class SocketPermission : System.Security.CodeAccessPermission, System.Security.Permissions.IUnrestrictedPermission
[<System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
type SocketPermission = class
    inherit CodeAccessPermission
    interface IUnrestrictedPermission
[<System.Serializable>]
type SocketPermission = class
    inherit CodeAccessPermission
    interface IUnrestrictedPermission
type SocketPermission = class
    inherit CodeAccessPermission
    interface IUnrestrictedPermission
Public NotInheritable Class SocketPermission
Inherits CodeAccessPermission
Implements IUnrestrictedPermission
Inheritance
SocketPermission
Attributes
Implements

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.

SocketPermission instances control permission to accept connections or initiate Socket connections. A Socket permission can be established for a host name or IP address, a port number, and a transport protocol.

Note

Avoid creating socket permissions using host names, as these names have to be resolved to IP addresses, and this might block the stack.

Constructors

SocketPermission(NetworkAccess, TransportType, String, Int32)

Initializes a new instance of the SocketPermission class for the given transport address with the specified permission.

SocketPermission(PermissionState)

Initializes a new instance of the SocketPermission class that allows unrestricted access to the Socket or disallows access to the Socket.

Fields

AllPorts

Defines a constant that represents all ports.

Properties

AcceptList

Gets a list of EndpointPermission instances that identifies the endpoints that can be accepted under this permission instance.

ConnectList

Gets a list of EndpointPermission instances that identifies the endpoints that can be connected to under this permission instance.

Methods

AddPermission(NetworkAccess, TransportType, String, Int32)

Adds a permission to the set of permissions for a transport address.

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. Using Assert() can create security issues.

(Inherited from CodeAccessPermission)
Copy()

Creates a copy of a SocketPermission instance.

Demand()

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.

(Inherited from CodeAccessPermission)
Deny()
Obsolete.
Obsolete.

Prevents callers higher in the call stack from using the code that calls this method to access the resource specified by the current instance.

(Inherited from CodeAccessPermission)
Equals(Object)

Determines whether the specified CodeAccessPermission object is equal to the current CodeAccessPermission.

(Inherited from CodeAccessPermission)
FromXml(SecurityElement)

Reconstructs a SocketPermission instance for an XML encoding.

GetHashCode()

Gets a hash code for the CodeAccessPermission object that is suitable for use in hashing algorithms and data structures such as a hash table.

(Inherited from CodeAccessPermission)
GetType()

Gets the Type of the current instance.

(Inherited from Object)
Intersect(IPermission)

Returns the logical intersection between two SocketPermission instances.

IsSubsetOf(IPermission)

Determines if the current permission is a subset of the specified permission.

IsUnrestricted()

Checks the overall permission state of the object.

MemberwiseClone()

Creates a shallow copy of the current Object.

(Inherited from 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.

(Inherited from CodeAccessPermission)
ToString()

Creates and returns a string representation of the current permission object.

(Inherited from CodeAccessPermission)
ToXml()

Creates an XML encoding of a SocketPermission instance and its current state.

Union(IPermission)

Returns the logical union between two SocketPermission instances.

Applies to