001
02.10.2005, 04:01 Uhr
0xdeadbeef
Gott (Operator)
|
Ich nehme an, du sprichst von single-sign-on-Systemen, also einmal Daten eingeben, danach immer die selben benutzen. Sowas ist natürlich prinzipiell möglich, und wird auch in der Praxis für viele Dinge benutzt, wenn auch meistens im lokalen Netzerk.
Es gibt dabei im Wesentlichen zwei Ansätze. Im lokalen Netzwerk ist eine Zentralisierung der Authentifikationsdaten häufig sinnvoll, Stichwort Kerberos. Dabei handelt es sich um einen Server, der in einem geeigneten Backend (zum Beispiel einem LDAP-Server) Informationen über den Benutzer enthält. Mindestens sind das handle (Benutzername) und Authentifikationsdaten (z.B. ein Passwort, möglich ist aber auch der öffentliche Teil eines RSA-keys oder so), häufig speichert man auch personifizierte Daten, um gleich einen Verzeichnisdienst zur Verfügung zu stellen, in dem man zum Beispiel nachkucken kann, in welchem Gebäude ein Mitarbeiter sitzt. Der Server stellt dann auf entsprechend authentifizierte Anfrage über ein recht komplexes kryptographisches Verfahren ein Ticket aus, das im weiteren Verlauf für alle sonstigen Anmeldungen benutzt wird.
Der andere Ansatz ist ein so genannter Agent, der sich die Authentifikationsdaten beim ersten Anmelden merkt und in der Zukunft immer wieder benutzt. Allerdings sind diese in aller Regel auf ein bestimmtes Programm beschränkt (z.B. ssh-agent)
Der erste Ansatz ist im Internet schwer verfolgbar, da man seine Daten natürlich nur ungern einer dritten Partei übergeben will, und da der entsprechende service-Anbieter dieser dritten Partei vertrauen müsste. Es bleibt also noch der zweite, der, wenn die Applikation bestimmte Anforderungen erfüllt, durchaus durchführbar ist. Je nach Sachlage ist vorstellbar, dass die Applikation den Agent kennt und benutzt, oder dass der agent quasi als Wrapper für die Applikation benutzt wird und diese eigenständig aufruft und mit den Authentifikationsdaten versorgt. Dafür muss die Applikation allerdings eine entsprechende Schnittstelle bieten.
Ich hoffe, das hilft dir weiter. -- Einfachheit ist Voraussetzung für Zuverlässigkeit. -- Edsger Wybe Dijkstra |