NegotiateStream Constructors

Definitie

Initialiseert een nieuw exemplaar van de NegotiateStream klasse.

Overloads

Name Description
NegotiateStream(Stream)

Initialiseert een nieuw exemplaar van de NegotiateStream klasse met behulp van de opgegeven Stream.

NegotiateStream(Stream, Boolean)

Initialiseert een nieuw exemplaar van de NegotiateStream klasse met behulp van het opgegeven Stream gedrag en het afsluiten van stromen.

Opmerkingen

Gebruik de NegotiateStream(Stream, Boolean) constructor om te voorkomen dat de NegotiateStream stroom die u opgeeft sluit.

NegotiateStream(Stream)

Initialiseert een nieuw exemplaar van de NegotiateStream klasse met behulp van de opgegeven Stream.

public:
 NegotiateStream(System::IO::Stream ^ innerStream);
public NegotiateStream(System.IO.Stream innerStream);
new System.Net.Security.NegotiateStream : System.IO.Stream -> System.Net.Security.NegotiateStream
Public Sub New (innerStream As Stream)

Parameters

innerStream
Stream

Een Stream object dat wordt gebruikt voor het NegotiateStream verzenden en ontvangen van gegevens.

Voorbeelden

In het volgende codevoorbeeld ziet u hoe u deze constructor aanroept.

 // Establish the remote endpoint for the socket.
 // For this example, use the local machine.
 IPHostEntry ipHostInfo = Dns.GetHostEntry(Dns.GetHostName());
 IPAddress ipAddress = ipHostInfo.AddressList[0];
 // Client and server use port 11000.
 IPEndPoint remoteEP = new IPEndPoint(ipAddress,11000);
 // Create a TCP/IP socket.
TcpClient client = new TcpClient();
 // Connect the socket to the remote endpoint.
 client.Connect(remoteEP);
 Console.WriteLine("Client connected to {0}.",
     remoteEP.ToString());
 // Ensure the client does not close when there is
 // still data to be sent to the server.
 client.LingerState = (new LingerOption(true,0));
 // Request authentication.
 NetworkStream clientStream = client.GetStream();
 NegotiateStream authStream = new NegotiateStream(clientStream);
 // Request authentication for the client only (no mutual authentication).
 // Authenicate using the client's default credetials.
 // Permit the server to impersonate the client to access resources on the server only.
 // Request that data be transmitted using encryption and data signing.
 authStream.AuthenticateAsClient(
      (NetworkCredential) CredentialCache.DefaultCredentials,
      "",
      ProtectionLevel.EncryptAndSign,
      TokenImpersonationLevel.Impersonation);

Van toepassing op

NegotiateStream(Stream, Boolean)

Initialiseert een nieuw exemplaar van de NegotiateStream klasse met behulp van het opgegeven Stream gedrag en het afsluiten van stromen.

public:
 NegotiateStream(System::IO::Stream ^ innerStream, bool leaveInnerStreamOpen);
public NegotiateStream(System.IO.Stream innerStream, bool leaveInnerStreamOpen);
new System.Net.Security.NegotiateStream : System.IO.Stream * bool -> System.Net.Security.NegotiateStream
Public Sub New (innerStream As Stream, leaveInnerStreamOpen As Boolean)

Parameters

innerStream
Stream

Een Stream object dat wordt gebruikt voor het NegotiateStream verzenden en ontvangen van gegevens.

leaveInnerStreamOpen
Boolean

true om aan te geven dat het sluiten hiervan NegotiateStream geen effect heeft op innerStream; false om aan te geven dat het sluiten ook NegotiateStream wordt gesloten innerStream.

Uitzonderingen

innerStream is null.

– of –

innerStream is gelijk aan Null.

Voorbeelden

In het volgende voorbeeld ziet u hoe u deze constructor aanroept. Dit codevoorbeeld maakt deel uit van een groter voorbeeld voor de NegotiateStream klasse.

// Establish the remote endpoint for the socket.
// For this example, use the local machine.
IPHostEntry ipHostInfo = Dns.GetHostEntry("localhost");
IPAddress ipAddress = ipHostInfo.AddressList[0];
// Client and server use port 11000.
IPEndPoint remoteEP = new IPEndPoint(ipAddress, 11000);
// Create a TCP/IP socket.
client = new TcpClient();
// Connect the socket to the remote endpoint.
client.Connect(remoteEP);
Console.WriteLine("Client connected to {0}.", remoteEP.ToString());
// Ensure the client does not close when there is
// still data to be sent to the server.
client.LingerState = new LingerOption(true, 0);
// Request authentication.
NetworkStream clientStream = client.GetStream();
NegotiateStream authStream = new NegotiateStream(clientStream, false);
' Establish the remote endpoint for the socket.
' For this example, use the local machine.
Dim ipHostInfo = Dns.GetHostEntry("localhost")
Dim ipAddress = ipHostInfo.AddressList(0)

' Client and server use port 11000. 
Dim remoteEP As New IPEndPoint(ipAddress, 11000)

' Create a TCP/IP socket.
client = New TcpClient()

' Connect the socket to the remote endpoint.
client.Connect(remoteEP)
Console.WriteLine("Client connected to {0}.", remoteEP.ToString())

' Ensure the client does not close when there is 
' still data to be sent to the server.
client.LingerState = (New LingerOption(True, 0))

' Request authentication.
Dim clientStream = client.GetStream()
Dim authStream As New NegotiateStream(clientStream, False)

Opmerkingen

Wanneer u opgeeft voor de leaveStreamOpen parameter, heeft het sluiten van de NegotiateStreaminnerStream stream geen effect. U moet expliciet sluiten innerStream wanneer u deze niet meer nodig true hebt.

Van toepassing op