Export (0) Print
Expand All
This topic has not yet been rated - Rate this topic

AuthenticatedStream Class

Provides methods for passing credentials across a stream and requesting or performing authentication for client-server applications.

Namespace:  System.Net.Security
Assembly:  System (in System.dll)
public abstract class AuthenticatedStream : Stream

This abstract class provides methods and properties that are common to authenticated streams.

Authenticated streams can provide authentication, data signing, and encryption services that can help maintain the integrity and confidentiality of data transmitted using the InnerStream.

The security protocol implemented by a class that derives from AuthenticatedStream together with the security protocols supported on the client and server will determine the security features that are available to an application. The NegotiateStream and SslStream classes inherit from AuthenticatedStream and implement the Negotiate and Secure Sockets Layer security protocols, respectively.

Notes to Inheritors:

The following members must be overridden in a derived class: IsAuthenticated, IsEncrypted, IsMutuallyAuthenticated, IsServer, and IsSigned.

The following code example demonstrates displaying the properties of an authenticated stream.

    // The following class displays the properties of an authenticatedStream. 
    public class AuthenticatedStreamReporter
{
    public static void DisplayProperties(AuthenticatedStream stream)
   {
        Console.WriteLine("IsAuthenticated: {0}", stream.IsAuthenticated);
        Console.WriteLine("IsMutuallyAuthenticated: {0}", stream.IsMutuallyAuthenticated);
        Console.WriteLine("IsEncrypted: {0}", stream.IsEncrypted);
        Console.WriteLine("IsSigned: {0}", stream.IsSigned);
        Console.WriteLine("IsServer: {0}", stream.IsServer);
    }
}
// The following class displays the properties of an authenticatedStream.
public __gc class AuthenticatedStreamReporter
{
public:
    static void DisplayProperties(AuthenticatedStream* stream)
   {
        Console::WriteLine(S"IsAuthenticated: {0}", __box(stream->IsAuthenticated));
        Console::WriteLine(S"IsMutuallyAuthenticated: {0}", __box(stream->IsMutuallyAuthenticated));
        Console::WriteLine(S"IsEncrypted: {0}", __box(stream->IsEncrypted));
        Console::WriteLine(S"IsSigned: {0}", __box(stream->IsSigned));
        Console::WriteLine(S"IsServer: {0}", __box(stream->IsServer));
    }
};
System.Object
  System.MarshalByRefObject
    System.IO.Stream
      System.Net.Security.AuthenticatedStream
        System.Net.Security.NegotiateStream
        System.Net.Security.SslStream
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0, 2.0
Did you find this helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

ADD
Show:
© 2014 Microsoft. All rights reserved.