NegotiateStream.RemoteIdentity Eigenschaft

Definition

Ruft Informationen zur Identität der Remoteseite ab, für die dieser authentifizierte Stream freigegeben ist.

public:
 virtual property System::Security::Principal::IIdentity ^ RemoteIdentity { System::Security::Principal::IIdentity ^ get(); };
public virtual System.Security.Principal.IIdentity RemoteIdentity { get; }
member this.RemoteIdentity : System.Security.Principal.IIdentity
Public Overridable ReadOnly Property RemoteIdentity As IIdentity

Eigenschaftswert

IIdentity

Ein IIdentity-Objekt, das die Identität des Remoteendpunkts beschreibt.

Ausnahmen

Bei der Authentifizierung ist ein Fehler aufgetreten, oder es ist keine Authentifizierung erfolgt.

Beispiele

Im folgenden Codebeispiel wird die Anzeige des Werts dieser Eigenschaft veranschaulicht.

static void EndAuthenticateCallback( IAsyncResult^ ar )
{
   
   // Get the saved data.
   ClientState^ cState = dynamic_cast<ClientState^>(ar->AsyncState);
   TcpClient^ clientRequest = cState->Client;
   NegotiateStream^ authStream = dynamic_cast<NegotiateStream^>(cState->AuthStream);
   Console::WriteLine( L"Ending authentication." );
   
   // Any exceptions that occurred during authentication are
   // thrown by the EndServerAuthenticate method.
   try
   {
      
      // This call blocks until the authentication is complete.
      authStream->EndAuthenticateAsServer( ar );
   }
   catch ( AuthenticationException^ e ) 
   {
      Console::WriteLine( e );
      Console::WriteLine( L"Authentication failed - closing connection." );
      cState->Waiter->Set();
      return;
   }
   catch ( Exception^ e ) 
   {
      Console::WriteLine( e );
      Console::WriteLine( L"Closing connection." );
      cState->Waiter->Set();
      return;
   }

   
   // Display properties of the authenticated client.
   IIdentity^ id = authStream->RemoteIdentity;
   Console::WriteLine( L"{0} was authenticated using {1}.", id->Name, id->AuthenticationType );
   cState->Waiter->Set();
}


private static void EndAuthenticateCallback(ClientState cState)
{
    // Get the saved data.
    NegotiateStream authStream = (NegotiateStream)cState.AuthenticatedStream;
    Console.WriteLine("Ending authentication.");

    // Display properties of the authenticated client.
    IIdentity id = authStream.RemoteIdentity;
    Console.WriteLine("{0} was authenticated using {1}.",
        id.Name,
        id.AuthenticationType
    );
}

Hinweise

Wenn auf den Client zugegriffen wird, gibt diese Eigenschaft einen GenericIdentity Wert zurück, der den Dienstprinzipalnamen (SPN) des Servers und das verwendete Authentifizierungsprotokoll enthält. Wenn auf den Server zugegriffen wird, gibt diese Eigenschaft einen WindowsIdentity Wert zurück, der den Client beschreibt. Wenn dies WindowsIdentity nicht verfügbar ist, werden Clientinformationen in einem GenericIdentityServer zurückgegeben.

Gilt für