kerberos.tutorial
Class TutorialZieldienst

java.lang.Object
  extended bykerberos.tutorial.TutorialZieldienst

public class TutorialZieldienst
extends java.lang.Object

In diesem Mini-Tutorial wird zusammen mit der Klasse kerberos.tutorial.TutorialClient und kerberos.tutorial.TutorialDienstThread erklärt, wie die Kommunikation mit den Kerberos-Klassen funktioniert.

Für dieses Tutorial ist es exrem vorteilhaft, wenn man weiß, wie java.net.ServerSocket und java.net.Socket funktionieren. Wie Kerberos an sich funktioniert, wird hier ebenfalls nicht erklärt, sondern nur, wie man diese Implementation nutzt.

Diese Klasse stellt einen Server dar, der Anfragen von Clients entgegen nimmt, die übertragenen Bytes als String anzeigt und dann ein paar Zeichen an den anfragenden Client zurückschickt.

Um über Kerberos zu kommunizieren, erzeugt man auf der Serverseite einen kerberos.net.IKerberosServerSocket.. Dieser wartet wie ein normaler ServerSocket auf Verbindungen (Methode accept()) und gibt bei der Anfrage eines Clients einen IKerberosSocket zurück, entsprechend einem normalen java.net.Socket.
Auf der Client-Seite wird eine kerberos.net.IKerberosClientSocketFactory erzeugt. Diese speichert z.B. die Schlüssel zum Verschlüsseln der Verbindung zum Ticket-Granting-Service des KDC. Mit Hilfe der Methode IKerberosClientSocketFactory.connect(String host, int ziel, String Zieldienst) wird eine Verbindung zu dem angegebenen Zieldienst auf dem angegebenen Host aufgebaut. Die Verbindung wird dabei verschlüsselt und authentifiziert durchgeführt.

Die Erzeugung vom kerberos.net.IKerberosServerSocket und der kerberos.net.KerberosClientSocketFactory kann von der kerberos.net.KerberosFactory übernommen werden.

Was die einzelnen Methoden genau bewirken, wird in den jeweiligen javadocs erklärt.

Author:
Stephan Koops
See Also:
KerberosServerSocket, KerberosSocket, KerberosClientSocketFactory, KerberosFactory, TutorialDienstThread, TutorialClient, ServerSocket, Socket

Field Summary
static int PORT
           
 
Constructor Summary
TutorialZieldienst()
           
 
Method Summary
static void main(java.lang.String[] args)
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

PORT

public static final int PORT
See Also:
Constant Field Values
Constructor Detail

TutorialZieldienst

public TutorialZieldienst()
Method Detail

main

public static void main(java.lang.String[] args)
                 throws java.lang.Exception
Throws:
java.lang.Exception