SmtpPermission Class

Definition

Caution

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

Controls access to Simple Mail Transport Protocol (SMTP) servers.

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

Examples

The following code example creates an instance of an SmtpPermission.

static SmtpPermission^ CreateConnectPermission()
{
    SmtpPermission^ connectAccess = 
        gcnew SmtpPermission(SmtpAccess::Connect);
    Console::WriteLine("Access? {0}", connectAccess->Access);
    return connectAccess;
}
public static SmtpPermission CreateConnectPermission()
{
    SmtpPermission connectAccess = new
        SmtpPermission(SmtpAccess.Connect);
    Console.WriteLine("Access? {0}", connectAccess.Access);
    return connectAccess;
}

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 SmtpPermission and SmtpPermissionAttribute classes control access to SMTP host computers. The SmtpClient class demands an SmtpPermission when sending electronic mail to the SMTP host for delivery.

The SmtpAccess enumeration specifies the level of access controlled by an instance of this permission.

Constructors

SmtpPermission(Boolean)

Initializes a new instance of the SmtpPermission class with the specified state.

SmtpPermission(PermissionState)

Initializes a new instance of the SmtpPermission class using the specified permission state value.

SmtpPermission(SmtpAccess)

Initializes a new instance of the SmtpPermission class using the specified access level.

Properties

Access

Gets the level of access to SMTP servers controlled by the permission.

Methods

AddPermission(SmtpAccess)

Adds the specified access level value to 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. Using Assert() can create security issues.

(Inherited from CodeAccessPermission)
Copy()

Creates and returns an identical copy of the current permission.

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)

Sets the state of the permission using the specified 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)

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 the current permission is unrestricted.

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 the state of the permission.

Union(IPermission)

Creates a permission that is the union of the current permission and the specified permission.

Applies to