AuthenticatedStream Class
Provides methods for passing credentials across a stream and requesting or performing authentication for client-server applications.
Assembly: System (in System.dll)
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.MarshalByRefObject
System.IO.Stream
System.Net.Security.AuthenticatedStream
System.Net.Security.NegotiateStream
System.Net.Security.SslStream
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.