Ein Überblick über aktuelle Arbeiten

Transcription

Ein Überblick über aktuelle Arbeiten
Ein Überblick über aktuelle Arbeiten
Seminarausarbeitung
Universität Bonn
Institut für Informatik
Abteilung IV –
Prof. Dr. Peter Martinti
Vorgelegt von
Gerwin Brill
20.11.2001
Inhaltsverzeichnis:
Seite
1.
2.
2.1
2.2
2.3
3.
3.1
3.2
3.2.1
3.3
4.
4.1
4.1.1
4.1.2
4.1.3
4.2
4.2.1
4.2.2
4.2.3
4.2.4
4.2.5
4.2.6
4.2.6.1
4.2.6.2
4.2.6.3
5.
6.
Einleitung und Motivation
Allgemeine Beschreibung von AAA-Systemen
Begriffsdefinition
Allgemeine AAA-Systemarchitektur
Abwärtskompatibilität mit bestehenden Protokollen
Anforderungen an AAA-Protokolle
Authentifizierung
Autorisierung
Autorisierungssequencen
Accounting
Existierende AAA-Protokolle
RADIUS
Arbeitsablauf von RADIUS
RADIUS-Accounting
Arbeitsablauf von RADIUS-Accounting
DIAMETER
Unzulänglichkeiten bei RADIUS
ROAMOPS Modell
DIAMETER Architektur
DIAMETER Basis-Protokoll
DIAMETER Roaming Support
DIAMETER Erweiterungen
Strong Security Erweiterung
NASREQ Erweiterung
Accounting Erweiterung
Zusammenfassung
Quellenangabe
3
3
3
4
6
6
7
7
8
10
11
11
12
14
15
16
16
17
18
18
20
21
21
21
22
22
23
1. Einleitung und Motivation
Wir leben in einer Zeit, in der Informationen und die zugrundeliegenden
Technologien und Infrastrukturen zu einem enorm wichtigen
wirtschaftlichen Faktor geworden sind. Die globale Vernetzung und die
Qualität der digitalen Autobahn wächst in einem immer schnelleren Maße.
Die Internettechnologie kennt keine geografischen Grenzen und
ermöglicht uns in Sekundenschnelle um die ganze Welt zu reisen.
Personen oder Institutionen, die innerhalb des globalen Dorfes
kommerzielle Dienste anbieten wollen, stehen vor dem Problem, dass das
Internet ein quasi rechtsfreier Raum ist, da es bislang kaum nationale
oder internationale Gesetze gibt, die das Zusammenleben in der digitalen
Welt regeln.
Um diesen Umständen Rechnung zu tragen, benötigt man Mechanismen,
die es einem ermöglichen seine Dienste vor Missbrauch zu schützen.
Konkret bedeutet dies, dass man z.B. nicht beliebigen Personen Zugriff
gewähren möchte (Authentication), sondern nur solchen, denen man auch
im späteren die Nutzung der Dienste in Rechnung stellen kann
(Accounting). Außerdem ist es extrem wichtig darüber zu wachen, dass
die Benutzer auch nur die Teile des Systems zu sehen bekommen, die für
sie bestimmt sind (Authorisation).
In dieser Seminararbeit geht es um den Stand der Entwicklung auf dem
Gebiet der AAA-Systeme.
Die Abkürzung AAA bedeutet Authentifizierung, Autorisierung und
Accounting und beschreibt genau die oben definierten Problemfälle.
2. Allgemeine Beschreibung von AAA-Systemen
2.1
Begriffsdefinition
Die Abkürzung AAA steht für Authentifizierung, Autorisierung und
Accounting.
Die Begriffe werden im Folgenden synonym mit diesen Definitionen
verwendet:
Authentifizierung ist der Vorgang der Überprüfung einer
angegebenen Identität. Dabei kann man zwischen der
Authentifizierung des Senders bzw. des Empfängers einer Nachricht
(message authentication vs. authentication of the channel end
point) unterscheiden. Beispielsweise muss sich ein GSM-Handy
immer gegenüber dem Netz identifizieren. Umgekehrt geschieht dies
nicht.
Autorisierung ist der Vorgang der Überprüfung, ob bestimmte
(Zugriffs-) Rechte einem (authentifizierten) Benutzer zugesprochen
werden können oder nicht. Dabei kann es sich z.B. um
Zugriffsrechte für Netzlaufwerke handeln.
Accounting beschreibt den Vorgang der Sammlung von Daten bzgl.
Resourcenverbrauch für Abrechnungszwecke, Kapazitätsplanungen,
Statistiken etc.
Im Augenblick bestehen Realisierungen dieser drei Dienste aus
verschiedenen speziellen Protokollen, die die gewünschten Funktionen für
mehr oder weniger spezielle Anwendungen implementieren.
Aufgrund
des
wachsenden
Bedarfs
nach
derartigen
Sicherheitsmechanismen entstand innerhalb der IETF eine Arbeitsgruppe,
die AAAarch Research Group, die es sich zum Ziel gemacht hat, eine AAASystem-Architektur zu schaffen, die allgemein und flexibel genug ist, dass
sie für beliebige Anwendungen verwendet werden kann.
2.2
Allgemeine AAA System-Architektur
Eine typische AAA Infrastruktur besteht aus AAA Servern, die
untereinander in Verbindung stehen und ein spezielles AAA Protokoll zur
Kommunikation benutzen, sowie AAA Clients.
Folgendes Diagramm zeigt eine Übersicht:
Request
Client
Response
Application
Specific
Module
(ASM)
AAAServer
Policy and
event
repository
AAAServer
Unterschiedl.
Protokolle
Abbildung 1 – Übersicht der Elemente in einer allgemeinen AAA SystemArchitektur
Abbildung 1 zeigt die Systemarchitektur
applikationsunabhängigen AAA-Systems.
eines
allgemeinen,
Bei diesem Ansatz wird die AAA Funktionalität in zwei Bereiche unterteilt:
einen allgemeinen Teil, der typisch für alle Anwendungen ist, und einen
applikationsspezifischen Teil. Die unterschiedlichen Farben der
Interaktionspfeile markieren, dass die Clients zur Kommunikation mit dem
AAA-Server, sowie die AAA-Server untereinander, ein spezielles Protokoll
verwenden. Auf die internen Protokolle mit den Farben Grün und Rot wird
hier nicht weiter eingegangen.
Der generische AAA-Server hat die Aufgabe Clientanfragen zu analysieren
und Authentifizierungs-/Autorisierungsentscheidungen zu treffen. Zu
diesem Zweck besitzt er Regeln (logische und/oder algebraische Formeln)
und mehrere Hilfskomponenten, die die notwendigen Informationen liefern
können.
Das ASM (Application Specific Module) stellt die Schnittstelle zu den
applikationsspezifischen Informationen dar. Das ASM verwaltet die
Ressourcen und konfiguriert die Dienste, die für einen autorisierten
Benutzer freigeschaltet werden können.
Zudem kann das ASM auch an Autorisierungsvorgängen beteiligt sein, da
es über applikationsspezifische Informationen verfügt.
Das Event Log stellt das Gedächtnis des AAA-Systems dar. In dieser
Datenbank wird über alle aufgetretenen Ereignisse chronologisch
buchgeführt. Im einfachsten Fall handelt es sich dabei lediglich um einen
einfachen Logging-Mechanismus. Diese Informationen können aber auch
Autorisierungsentscheidungen als Grundlage dienen. Es gibt beispielweise
Anwendungsfälle, in denen eine Autorisierung nur dann gewährt werden
kann, wenn ein spezielles anderes Ereignis in der Vergangenheit bereits
aufgezeichnet wurde.
Das Policy Repository zuletzt ist eine Datenbank, die die verfügbaren
Dienste verwaltet und Auskünfte darüber erteilt, welche Autorisationsfälle
entschieden werden können. Zudem hat es Kenntnis darüber, welche
Regeln einer konkreten Autorisierungsentscheidung zugrunde liegen
müssen.
Ein wichtiger Punkt ist zudem noch, dass AAA-Server Proxy-Fähigkeit
besitzen müssen. Ein AAA-Server, der nicht über die gewünschten
Informationen verfügt, muss in der Lage sein, die Anfrage an einen
anderen AAA-Server weiterzuleiten. Zu diesem Zweck sollte das Protokoll,
dass der Kommunikation zwischen den AAA-Server zugrunde liegt, ein
Peer-2-Peer-Protokoll sein, in dem Sinne, dass jeder Node gleichzeitig als
Server und als Client im Netz auftreten kann.
In dieser Architektur wird eine Autorisierungsanfrage wie folgt bearbeitet:
1. Ein Benutzer stellt eine wohlformatierte Autorisierungsanfrage an
den Server. Wohlformatiert bedeutet in diesem Sinne, dass der AAA
Server keinerlei applikationsspezifische Informationen benötigt, um
eine Entscheidung auf Grundlage der Anfrage zu treffen.
2. Der AAA-Server überprüft die Anfrage, stellt fest, welche Art der
Autorisation benötigt wird, erhält eine Regel aus dem Policy
Repository und führt eine der folgenden Aktionen aus:
i)
ii)
iii)
Weiterleitung der Anfrage an das Application Specific
Module (ASM) zum Zweck der Evaluierung.
Autorisierungsentscheidung auf Grundlage der Daten aus
dem Policy Repository und dem Event Log.
Weiterleitung der Anfrage an einen anderen AAA-Server
In den Fällen 2.i und 2.ii sendet der AAA-Server anschließend die Antwort
an den initiierenden Client oder AAA-Server.
Im Falle 2.iii muss der AAA-Server auf die Antwort des angefragten
Servers warten.
2.3
Abwärtskompatibilität mit bestehenden Protokollen
Da heutzutage bereits sehr viele AAA-Implementierungen existieren und
man durch die Entwicklung einer neuen standardisierten Architektur die
Investitionen in die bestehenden Systeme nicht gefährden möchte, muss
ein Weg gefunden werden, die herkömmlichen Systeme in die neuen
Strukturen zu integrieren.
Eine möglicher Lösungsansatz ist die Verwendung von AAA-Gateways.
‚herkömmlicher’
Client
AAAGateway
AAAServer
(s. Abbildung 1)
Abbildung 2 – Kopplung herkömmlicher Protokolle durch AAA-Gateways
Das AAA-Gateway übernimmt die Funktion einer ‚Umladestation’ in dem
es die PDUs (Protocol Data Units) des herkömmlichen Protokolls in die
PDUs des neuen AAA-Protokolls verpackt.
Der AAA-Server, der diese verpackten Nachrichten erhält, kann ohne
Kenntnis über die Protokolldetails mit Hilfe des ASM eine adäquate
Entscheidung treffen.
3. Anforderungen an AAA-Protokolle
Es gibt einige grundsätzliche Anforderungen an AAA-Protokolle. Thema
dieses Abschnitts ist es, diese Anforderungen zu konkretisieren.
3.1
Authentifizierung
Authentifizierung bedeutet einerseits (irgendwie) sicher zu stellen, dass
man tatsächlich mit der Instanz kommuniziert, die sie vorgibt zu sein.
Dies bezeichnet man auch als ‚authentication of the channel end point’.
Andererseits ist es sehr oft gebräuchlich, dass sich der Initiator der
Nachricht zusätzlich gegenüber dem Empfänger ausweist. Dies ist
insbesondere dann wichtig, wenn ein Dienst in Anspruch genommen
werden soll. Der Dienst darf nur dann freigeschaltet werden, wenn sicher
festgestellt worden ist, dass die Instanz, mit der Kommuniziert wird, auch
die ist, die sie vorgibt zu sein. Dies bezeichnet man auch mit
‚authentication of the message originator’.
Authentifizierung kann auf verschiedenste Arten und Weisen geschehen.
Die wohl gebräuchlichste und zugleich die unsicherste Methode ist die
Kombination aus Benutzername und Passwort. Unsicher deshalb, weil
Passwörter, besonders wenn sie von den Anwendern selber gewählt
werden können, meistens kurz und deshalb leicht zu brechen sind.
Sicherere Methoden sind z.B. die Verwendung von Public-Key-Kryptografie
oder Challenge-Response-Schemata.
Authentifizierung ist ein wichtiger Bestandteil bei sicherheitskritischen
Diensten, da es viele verschiedene Sicherheitsanforderungen abdeckt.
Dazu gehört Schutz vor Man-In-The-Middle und Replay Attacken
(Mitschneiden des Datenverkehrs und Wiederverwendung aufgezeichneter
Nachrichten) etc.
3.2
Autorisierung
Ein Autorisierungsvorgang ist gleichbedeutend mit der Frage, ob ein
Benutzer ausreichende Rechte besitzt eine angeforderte Resource
zugeteilt zu bekommen oder nicht.
Normalerweise steht eine Autorisierungsprozedur in der Folge nach einer
bereits erfolgreich durchgeführten Benutzerauthentifizierung.
An einer Autorisierungsprozedur können für gewöhnlich bis zu vier
Instanzen beteiligt sein:
1. Der anfragende Benutzer, der zum Zugriff auf einen Dienst
autorisiert werden muss.
2. Die Heim-Organisation (HO; home organization) des Benutzers.
Dies ist die Instanz, mit der der Benutzer einen Vertrag
abgeschlossen hat und die in der Lage ist zu prüfen, ob der spezielle
Benutzer das Recht hat den angeforderten Dienst in Anspruch zu
nehmen. Die HO besitzt besitzt also die benötigten Informationen,
z.B. über den Kredit des Benutzers, um die Frage der Autorisierung
adäquat beantworten zu können.
3. Der AAA-Server des Service-Providers, der den Dienst abhängig
von dem Vertrag des Benutzers mit seiner HO freischalten kann
oder nicht.
4. Das Service-Equipment des Service Providers, das den
gewünschten Dienst erbringt. Dies kann z.B. der Network-AccessServer (NAS) eines Internet-Service-Providers sein, der seinen
Kunden einen Modem-Einwahlpool zur Verfügung stellt.
Die wesentlichen Anforderungen an Autorisierungsprozeduren in
Systemen lassen sich in den folgenden Punkten zusammenfassen:
3.2.1
AAA-
Ein AAA-Protokoll sollte separate und muss kombinierte
Authentifizierungs- und Autorisierungs-Nachrichten unterstützen.
Ein AAA-Protokoll muss proxyfähig sein, d.h. es muss eine
Benutzeranfrage an einen anderen AAA-Server zur Bearbeitung
weiterleiten können.
Wenn Vermittlungsknoten (Broker) an einer Kommunikation
zwischen den Elementen eines AAA-Systems beteiligt sind, ist eine
Absicherung der Kommunikation auf Ende-zu-Ende-Basis nötig
Broker müssen in der Lage sein auf Anfrage die Adresse des
Kommunikationspartners mitzuteilen, an den die AAA-Nachrichten
weitergeleitet werden, damit die beteiligten Nodes auch direkt
miteinander kommunizieren können.
Autorisierungssequenzen
Es existieren drei verschiedene Autorisierungssequenzen: agent, push
und pull.
1. Agent-Sequence
In der Agent-Sequence fungiert der AAA-Server als Agent zwischen
dem Benutzer und dem Service-Equipment, das den Dienst zur
Verfügung stellt.
1
User
4
Service-Provider
AAA-Server
2
3
Service
equipment
Abbildung 3 – Agent-Seqence
1. Der Benutzer schickt seine Anfrage an den AAA-Server.
2. Der AAA-Server wendet eine dem Benutzer entsprechende Regel
an und sendet nach erfolgter Autorisierung die Anfrage weiter an
das Service-Equipment.
3. Das Service-Equipment startet den Dienst und meldet
anschließend dem AAA-Server, dass der Dienst nun für den
Benutzer bereitsteht.
4. Der AAA-Server meldet dem Benutzer, dass der gewünschte
Dienst nun zur Verfügung steht.
2. Pull-Sequence
In der Pull-Sequence stellt der Benutzer seine Anfrage nach einem
gewünschten Dienst direkt an das Service-Equipment (1).
Das Service-Equipment seinerseits sendet die Anfrage zur
Entscheidung an den AAA-Server (2). Der AAA-Server entscheidet auf
Grundlage seiner Informationen und teilt dem Service-Equipment
anschließend mit, den Dienst zu starten oder auch nicht (3). Der
Service-Equipment startet den Dienst, wenn die Autorisierungsprozedur
erfolgreich war und meldet dem Benutzer, dass der Dienst nun zur
Verfügung steht (4).
Abbildung 4 zeigt ein Schema der Pull-Sequence.
Service-Provider
AAA-Server
User
1
4
3
2
Service
equipment
Abbildung 4 – Pull-Sequence
3. Push-Sequence
Die folgende Abbildung schematisiert die Push-Sequence.
1
User
Service-Provider
AAA-Server
2
3
4
Service
equipment
Abbildung 5 – Push-Sequence
In der Push-Sequence fragt der Benutzer den AAA-Server an, ob er
autorisiert ist den gewünschten Dienst zu benutzen (1). Besteht er
diese Prüfung, bekommt er vom AAA-Server ein Ticket ausgestellt (2).
Mit diesem Ticket ausgestattet wendet er sich nun an das ServiceEquipment und bittet es den Dienst zu starten (3).
Wenn der Dienst bereitsteht, meldet das Service-Equipment dies an
den Benutzer (4).
3.3
Accounting
Beim Accounting sammelt man Daten über den Verbrauch von Ressourcen
zu Analyse-, Planungs- und Abrechnungszwecken. In allen
Anwendungsfällen, in denen Accounting eingesetzt wird, gibt es
Sicherheitsanforderungen, die erfüllt sein müssen, damit dieser Dienst
zuverlässig funktioniert.
Besonders wichtig ist die Unterscheidung, ob Accounting innerhalb einer
administrativen Zone (Domäne) stattfindet (intra domain accounting),
oder ob die Domänengrenzen verlassen werden (inter domain
accounting). Da sich beim Inter-Domain-Accounting ein Teil der
Datensammlung und -übermittlung der eigenen administrativen Kontrolle
entzieht, ist diese Art wesentlich anfälliger gegenüber Verletzungen der
Sicherheit.
Da die AAAarch Gruppe keinerlei Aussagen über das zu verwendende
Transportprotokoll macht, muss insbesondere auch über die
Wahrscheinlichkeit und Konsequenz von Paketverlusten nachgedacht
werden.
Trendanalyse und Kapazitätsplanungen
Bei Trendanalyse und Kapazitätsplanung ist es kein Problem eine
moderate Paketverlustrate in Kauf zu nehmen, da es ‚lediglich’ darum
geht die zukünftige Netzwerkauslastung abzuschätzen. In diesem
Anwendungsfall muss Accounting also in der Lage sein mit geringen
(intra-domain-accounting) bzw. höheren (inter-domain-accounting)
Verlustraten robust umzugehen.
Abrechnung (Billing)
Wenn Accounting zum Zweck der Abrechnung von verbrauchten
Leistungen eingesetzt werden soll, muss man prinzipiell zwei Fälle
unterscheiden. Im ersten Fall findet eine Abrechnung unabhängig von den
tatsächlich verbrauchten Leistungen statt. Dieser Fall ist also verglichen
harmlos, weil selbst bei Totalverlust aller übermittelten Verbrauchsdaten
kein finanzieller Schaden entsteht.
In dem verbrauchsabhängigen Fall hingegen können schon geringe
Datenverluste bzw. –verzögerungen einen großen finanziellen Schaden für
den Dienstanbieter bedeuten. In diesem Anwendungsfall ist somit ein
archivarischer Ansatz erforderlich, der es erlaubt Paketverluste durch
Wiederholungen zu kompensieren.
Kostenumlage (cost allocation)
Cost-Allocation und Bill-Back-Methoden bieten die Möglichkeit auf ein
Firmennetzwerk zuzugreifen und die dabei entstehenden Kosten direkt,
ohne Umweg über die eigene Brieftasche, der Firma in Rechnung zu
stellen. Ein typischer Anwendungsfall sind z.B. Außendienstmitarbeiter, die
mit ihrem Laptop auf das Intranet der Firma zugreifen müssen.
Wenn Accounting zu diesem Zweck eingesetzt werden soll, sind genau
dieselben
Sicherheitsund
Verfügbarkeitsanforderungen
zu
berücksichtigen wie im Billing-Fall.
4. Existierende AAA-Protokolle
In diesem Abschnitt gibt einen Überblick über zwei existierende
vollwertige AAA Protokolle geben: RADIUS und DIAMETER
4.1 RADIUS (Remote Authentication Dial In User Service)
RADIUS ist ein weit verbreitetes Protokoll zum Zweck der Übertragung
von Authentifizierungs- , Autorisierungs- und Konfigurationsinformationen
zwischen einen Network Access Server (NAS) und einem AutorisierungsServer. RADIUS Accounting ist kein Bestandteil der eigentlichen RADIUSSpezifikation, wurde jedoch durch eine Erweiterung fester Bestandteil der
RADIUS-Funktionalität, so dass RADIUS zu einem vollständigen AAAProtokoll gewachsen ist.
Folgende Eigenschaften zeichnen das RADIUS-Protokoll aus:
Client/Server-Modell:
Ein Network Access Server (NAS) fungiert als RADIUS-Client. Der
Client
ist
dafür
verantwortlich
die
benötigten
Benutzerinformationen an den RADIUS-Server zu übermitteln und
auf der Grundlage der Antwort des Servers weiter mit der Anfrage
zu verfahren. Der RADIUS-Server besitzt also die nötige Logik
Benutzeranfragen zu bearbeiten, die Benutzer zu authentifizieren
und autorisieren und anschließend alle notwendigen
Konfigurationsinformationen an den Client zu senden, damit dieser
den Dienst für den Nutzer starten kann.
Netzwerksicherheit:
Alle Transaktionen zwischen dem Client und einem RADIUS-Server
werden durch symmetrische Verschlüsselung (shared secret)
authentifiziert. Der gemeinsame geheime Schlüssel wird dabei
niemals im Klartext über das Netzwerk übertragen. Zusätzlich
werden alle Benutzerpasswörter, die zwischen den Clients und
einem Server übertragen werden, verschlüsselt. Damit wird
versucht zu verhindern, dass ein Angreifer aus dem Mitlesen des
Netzwerkverkehrs Rückschlüsse auf die verwendeten Passwörter
ziehen kann.
Flexibler Authentifizierungsmechanismus:
RADIUS arbeitet mit einer Vielzahl von möglichen
Benutzerauthentifizierungsmechnismen zusammen. Dazu gehören
PPP, PAP oder CHAP, UNIX login etc.
Erweiterbares Protokoll:
Alle Nachrichten im RADIUS-System umfassen Attribut-Länge-Wert
3-Tupel mit variabler Länge. Neue Attribute-Value-Paare (AVP)
können leicht hinzugefügt werden, ohne bestehende
Implementierungen dieses Protokolls zu stören.
4.1.1 Arbeitsablauf von RADIUS
Wenn ein Client dafür konfiguriert ist, das RADIUS-Protokoll zu benutzen,
fordert er seinen Nutzer dazu auf, sich gegenüber dem System zu
identifizieren und authentifizieren. Dies geschieht in der Regel dadurch,
dass der Benutzer durch ein Login-Prompt angewiesen wird einen
Benutzernamen und ein Passwort einzugeben. Durch die hohe Flexibilität
von RADIUS können auch Mechanismen wie PPP, PAP oder CHAP etc. zum
Einsatz kommen.
Anschließend erzeugt der Client einen sogenannten ‚Access-Request’, den
er an den RADIUS-Server sendet. Der ‚Access-Request’ enthält als
Attribute den Benutzernamen, das Passwort, die Client-ID und die Port-ID,
auf die der Benutzer zugreift. In dem Fall, dass ein Passwort mit dem
‚Access-Request’ übertragen werden soll, wird dieses mit einem auf dem
RSA Message Digest Algorithmus (MD5) basiertem Chiffre verschlüsselt.
Der
wird anschließend über das Netzwerk an den
übertragen. Falls innerhalb einer Timeout-Zeitspanne
nicht adäquat auf die Client-Anfrage geantwortet wird, so findet eine
Wiederholung der Anfrage vom Client an den Server statt, solange bis der
Client den Verbindungsversuch abbricht.
Die Clients haben ebenfalls die Möglichkeit den ‚Access-Request’ an
alternative Server weiterzuleiten, falls der primäre Server down oder nicht
erreichbar ist.
‚Access-Request’
RADIUS-Server
Ein besonderer Fall ist derjenige, dass eine Verbindung von einem Client
zu dem gewünschten RADIUS-Ziel-Server über einen oder mehrere
RADIUS-Forwarding-Server ‚geschaltet’ ist. In der RADIUS-Architektur
kann ein Server sowohl die Funktionalität eines Forwarding-Server, als
auch die eines Remote-Servers übernehmen. Abbildung 6 stellt diese
Situation grafisch dar.
RADIUSClient
1
RADIUS-Client 1
kommuniziert mit RADIUSServer 1
RADIUS-
RADIUS-
Server 1
Server 2
RADIUSClient
2
RADIUS-Client 2
kommuniziert mit RADIUSServer 2
Abbildung 6 – RADIUS-Server als Forwarding- und Remoteserver
Die Farbbalken sollen in diesem Diagramm symbolisieren, dass jeweils
zwei an einer Kommunikation beteiligte Nodes einen gemeinsamen
geheimen Schlüssel besitzten. Da in einer RADIUS-Transaktion niemals
ein Benutzerpasswort im Klartext über das Netz verschickt werden darf,
sorgt dieser Mechanismus dafür, dass eine Verbindung über ForwardingServer stehts gesichert ablaufen kann.
Wenn ein Server eine ‚Access-Request’-Nachricht erhält und er selber
nicht der Remote-Server ist, so finden die folgenden Schritte statt:
i)
ii)
iii)
Der Forwarding-Server dechiffriert das Benutzerpasswort
mit dem Schlüssel, den er sich mit dem sendenden Client
oder Forwarding-Server teilt.
Anschließend wird die Client-ID auf den neuesten Stand
gebracht.
Zum Schluss Verschlüsselt der Forwarding-Server das
Benutzerpasswort mittels desjenigen Schlüssels, den er
sich mit dem Remote-Server oder dem nächsten
Forwarding-Server teilt und schickt die Nachricht weiter.
Hat der gewünschte Remote-Server letztendlich den initiierenden ‚Accesserhalten, validiert er den Client, von dem er die Nachricht
erhalten hat. Hat der Server die Nachricht nicht direkt, sondern über einen
Forwarding-Server erhalten, so ist aus Sicht des Remote-Servers eben
diese letzte Station der Client.
Validierung heißt in diesem Fall, dass der Remote-Server anhand der
Client-ID überprüft, ob er sich mit diesem Client ein Geheimnis teilt,
sprich ob ein gemeinsamer Schlüssel zur Dechiffrierung der Nachricht
vorhanden ist. Erhält ein Server eine Nachricht von einem Client, der
keine Bekannte ID hat, so muss diese Nachricht ohne eine Antwort
vernichtet bzw. ignoriert werden.
Request’
Wenn festgestellt wurde, dass der Client dem Server bekannt ist, kann der
Remote-Server den ‚Access-Request’ bearbeiten. Zu diesem Zweck fragt
der Server eine interne Datenbank ab, ob die Informationen zu dem
anfragenden Benutzer lokal verfügbar sind. Wird ein solcher Datensatz
gefunden, erhält der Server eine Liste mit Bedingungen aus dem Policy
Repository, die erfüllt sein müssen, um dem Benutzer Zutritt zu
gewähren.
Dieses beinhaltet immer die Überprüfung des Passworts.
Jetzt besteht noch die Möglichkeit, dass der Server einen weiteren
Authentifikationsschritt durch ein Challenges/Response-Schema verlangt.
Dies geschieht dadurch, dass der Server mit einem ‚Access-Challenge’ auf
den ‚Access-Request’ antwortet. Ein Challenge/Response-Schema ist eine
weitaus sicherere Methode, da der Server eine dynamische
Herausforderung (Challenge) erzeugt, die (eigentlich) nur der Benutzer
selber durch z.B. ein Chipkarte oder einen nur ihm zugänglichen
Algorithmus bewältigen bzw. beantworten kann.
Nach Eingabe der Benutzerantwort erzeugt der Client eine neue ‚AccessRequest’ Nachricht, in dem er die originale ‚Access-Request’ Nachricht mit
einer neuen Request-ID ausstattet und das User-Passwort-Attribut durch
die (verschlüsselte) Challenge-Response ersetzt. Diese Nachricht wird nun
an den Server zurückgeschickt.
Der Server kann auf diese neue ‚Access-Request’ Nachricht mit einer
‚Access-Accept’,
‚Access-Reject’ oder ‚Access-Challenge’ Nachricht
antworten.
Der RADIUS-Server hat nun wiederum die Möglichkeit andere Server zu
kontaktieren, um eine Entscheidung bzgl. des ‚Access-Request’ treffen zu
können.
Wenn eine der Bedingungen nicht erfüllt sein sollte, sendet der Server ein
‚Access-Reject’, um dem Benutzer mitzuteilen, dass er keinen Zugriff auf
das System bekommt.
Wenn alle Bedingungen an den Benutzer erfüllt sind, wird die Liste der
Konfigurationsvariablen in eine ‚Access-Accept’ Nachricht verpackt. Diese
Variablen definieren den Service-Typ (z.B. SLIP, PPP, Login User) und alle
nötigen Informationen, um den Dienst zu starten. Zu diesen Information
gehören bei z.B. einer PPP- oder SLIP-Verbindung die zugewiesene IPAdresse, Subnetzmaske, MTU etc.
4.1.2. RADIUS-Accounting
Accounting ist kein Bestandteil des ursprünglichen RADIUS-Protokolls.
RADIUS-Accounting wurde später in einer Erweiterung dem RADIUSProtokoll hinzugefügt.
Diese Protokollerweiterung beschreibt die Übertragung von AccountingInformationen von einem Network Access Server zu einem RADIUSAccount-Server.
Identisch zu den Merkmalen des ursprünglichen RADIUS-Protokolls
fungiert auch bei RADIUS-Accounting der NAS (Network Access Server)
als Client. Er hat die Aufgabe einem speziellen Accounting-Server die
gesammelten Informationen zum Ressourcenverbrauch der Nutzer
zukommen zu lassen. Der RADIUS-Accounting-Server hat im Gegenzug
die Aufgabe diese Informationen zu empfangen und zu speichern und dem
Client die eingegangenen Accounting-Nachrichten zu quittieren.
Auch in dieser Architektur kann ein Accounting-Server als Proxy auftreten
und Accounting-Nachrichten an andere Accounting-Server weiterleiten.
Ebenfalls identisch ist, das jegliche Transaktionen zwischen einem
RADIUS-Client und einem RADIUS-Accounting-Server durch einen
symmetrischen Schlüssel authentifiziert und gesichert werden.
4.1.3 Arbeitsablauf von RADIUS-Accounting
Wenn ein Client für die Benutzung von RADIUS-Accounting konfiguriert
wurde, dann geschieht folgendes, wenn ein Benutzer einen Dienst in
Anspruch nehmen möchte und dieser Dienst dann auch gestartet wird:
Der NAS generiert beim Start des Dienstes eine Accounting-Start
Nachricht. Innerhalb dieser Nachricht übermittelt er, welcher Dienst
gestartet wurde und welcher Benutzer diesen Dienst in Anspruch nimmt.
Nachdem die Nachricht zum Accounting-Server übertragen wurde
generiert dieser als Antwort eine Quittung, die bescheinigt, dass die
Accounting-Nachricht angekommen ist.
Wenn der Nutzer den Dienst nicht länger in Anspruch nehmen möchte
oder der Dienst aus irgendeinem anderen Grunde gestoppt wurde, sendet
der NAS eine Accouting-Stop Nachricht an den Accounting-Server. Inhalt
dieser Nachricht ist der Typ des Dienstes der ‚verbraucht’ worden ist,
sowie optional statistische Informationen wie z.B. die vergangene Zeit,
Transfervolumen etc. Der Accounting-Server generiert wiederum ein
Quittung, die den korrekten Erhalt der Nachricht bestätigt.
Die
werden, wie die anderen
auch, über möglicherweise verlustbehaftete Kanäle
Accounting-Start bzw. –Stop-Nachrichten
RADIUS-Nachrichten
übertragen.
Da, wie schon in den Anforderungen an Accounting definiert, eine korrekte
Abrechnung verbrauchter Ressourcen ein extrem wichtiger und
finanzkritischer Bereich ist, sollten auf jeden Fall Retransmission-Timer
eingesetzt werden, damit die Accounting-Nachrichten solange gesendet
werden, bis der Accounting-Server den Erhalt quittiert und keine
Nachrichten verloren gehen.
Die Clients haben ebenfalls die Möglichkeit ihre Accounting-Pakete an
alternative Server zu schicken, falls der primäre Accounting-Server nicht
zur Verfügung stehen sollte. Ein alternativer Server kann entweder nach
einer gewissen Anzahl von Fehlversuchen an den primären Server
ausgewählt werden, oder es wurde von vorne herein eine Ringstruktur von
Backup-Servern vorgesehen, die alle nacheinander abgefragt werden
können.
4.2 DIAMETER
Das RADIUS-Protokoll, wie in Abschnitt 4.1 beschrieben, wurde dafür
konzipiert AAA-Dienste für PPP-Einwahl- und Terminal-Server-Zugänge zu
erbringen.
Seit dem Anfang der 90er Jahre (im letzten Jahrhundert), als RADIUS
entwickelt wurde, haben sich die Profile der Benutzer dieser Dienste
jedoch stark geändert. Heutzutage besteht der Wunsch, ähnlich wie bei
dem GSM-Mobilfunknetz, an jedem beliebigen Ort der Welt einen
Netzzugang zur Verfügung zu haben, ohne mit einem jeweils neuen,
lokalen Anbieter einen Zugangsvertrag abschließen zu müssen.
Die von der IETF initiierte Roaming Operations Working Group (ROAMOPS)
kam zu dem Schluss, dass RADIUS für diese neuen Anforderungen nicht
geeignet ist. Ergebnis dieser Untersuchung war die Entwicklung von
DIAMETER als der Nachfolger von RADIUS.
Das
wurde nicht von Grund auf neu entwickelt.
diente den Designern als Grundlage, dessen unzulängliche
Eigenschaften geändert und das um neue Bestandteile ergänzt worden ist.
Das Basiskonzept von DIAMETER stellt einen AAA-Dienst dar, der beliebig
erweiterbar ist, um somit auch mit zukünftigen Zugangstechnologien
problemlos zusammenzuarbeiten.
DIAMETER-Protokoll
RADIUS
4.2.1 Unzulänglichkeiten bei RADIUS
Dieser Abschnitt gibt einen kurzen Überblick über bekannte Probleme bei
RADIUS.
Limitierung der Attribut-Datenwerte:
Alle protokoll- und appliktionsspezifischen Informationen werden
bei RADIUS in Attribut-Länge-Wert Tripel verpackt. Dabei kodiert
das Attributfeld die Art, das Längenfeld die Größe und das Wertfeld
die eigentliche Information. Durch die Beschränkung auf ein Byte
für das Längefeld können in RADIUS nur sehr umständlich, durch
Fragmentierungen, längere Wertfelder übertragen werden.
RADIUS verwendet UDP als Transportprotokoll:
Durch die Wahl von UDP als Transportprotokoll für RADIUS PDUs
ergeben sich einige schwierige Implikationen.
sieht keine Flußkontrollmechnismen vor, so dass ein RADIUSsich nicht vor Überlastungen durch die Clients schützen
kann.
UDP
kennt
zwar
keine
Retransmission-Prozeduren,
Paketwiederholungen sind aber dennoch notwendig. Für einen
RADIUS-Server ist es nur über sehr zeitaufwendige Tricks möglich,
wiederholte Pakete zu erkennen und Duplikate zu vernichten. Dies
kann wiederum zu Retransmissions führen.
Keine Quittungen der Nachrichten auf Ende-zu-Ende-Basis:
RADIUS sieht keine Quittungen für Nachrichten auf Ende-zu-EndeBasis vor (NAS <-> RADIUS-Server), so dass oftmals unnötige
Nachrichtenwiederholungen vorkommen, obwohl der Server mit
der Bearbeitung der Ursprungsnachricht noch gar nicht fertig ist.
Uneffiziente Nutzung von Proxy-Servern:
Da RADIUS keine Möglichkeit vorsieht, Serverausfälle zu erkennen,
können Proxy-Server im Fehlerfall nicht selbständig alternative
Server auswählen, sondern sind auf die Timeout- und RetransmitFunktion des NAS angewiesen.
UDP
Server
4.2.2 ROAMOPS Modell
Die ROAMOPS-Arbeitsgruppe innerhalb der IETF hat eine Reihe von
Spezifikationen vorgeschlagen, die definieren, wie einem PPP-Benutzer ein
Internetzugang zur Verfügung gestellt werden kann, ohne dass er oder sie
sich in den Modem-Pool seines oder ihres Heimat Service Providers
einwählen muss.
Dieses kann dann erreicht werden, wenn es den Providern ermöglicht
wird, ihre vertraglichen Benutzer wechselseitig zu authentifizieren.
Konkret bedeutet dies, dass ein Benutzer sich in das Netzwerk eines
lokalen Anbieters einwählen kann, wenn dieser ein Roaming-Abkommen
mit dem Vetragsanbieter des Benutzers abgeschlossen hat.
Da dieses System nur dann effektiv funktionieren kann, wenn jeder ISP
mit jedem anderen einen solchen Roaming-Vertrag eingeht, bei der
gleichzeitig hohen Anzahl von Internet Service Providern am Markt, wurde
schnell deutlich, dass auch dieses Modell starken Einschränkungen
unterliegt.
Zur Lösung dieses Problems hat die Arbeitsgruppe ein neues Element
innerhalb der DIAMETER-Architektur definiert, ein sogenannter ‚Broker’,
dessen alleinige Aufgabe darin besteht, die Roaming-Veträge der ISPs
untereinander zu verwalten.
Eine Gruppe von Internet Service Providern zusammen mit einem Broker
wird auch ‚Roaming Konsortium’ genannt.
4.2.3 DIAMETER Architektur
Die DIAMETER-Architektur besteht aus dem Basis-Protokoll und einem
Satz von Protokoll-Erweiterungen (z.B. starke Sicherheit, NASREQ
(Network Access Server Requirements), Mobile-IP und Accounting).
Funktionen, die allen unterstützten Diensten gemeinsam sind, sind in das
Basis-Protokoll
implementiert,
während
applikationsspezifische
Funktionalitäten durch den Erweiterungsmechanismus hinzugefügt werden
können.
Das Basis-Protokoll muss von allen DIAMETER-Applikationen unterstützt
werden und definiert das PDU-Format, einige Protokollkommandos und
grundlegende Sicherheitsmechanismen.
Im Gegensatz zu
arbeitet das DIAMETER-Protokoll über SCTP
, das eine gesicherte Übertragung
durch wohldefinierte Retransmission- und Timeout-Mechanismen
garantiert. Außerdem verfügt SCTP über ein Windowing-Schema, dass den
AAA-Servern ermöglicht den Fluss der eingehenden Pakete zu regulieren.
Durch die Fähigkeit Zustandsinformationen der Kommunikationspartner
abzufragen, kann im Fehlerfall schnell auf Backup-Server zurückgegriffen
werden.
RADIUS
(Stream Control Transmission Protokoll)
Eingeführt durch die ROAMOPS-Arbeitsgruppe, ist das neue Netzelement
des Brokers in die Architektur eingeflossen.
Der Broker dient als zwischengeschalteter Server, der NAS-Anfragen an
die Heimat-ISPs der Benutzer weiterleitet. Um einen sicheren BrokerDienst zu realisieren, ist eine Ende-zu-Ende-Absicherung der Verbindung
zwischen NAS und Home-Server notwendig, damit Broker nicht in der
Lage , sind die Inhalte dieser Nachrichten zu manipulieren.
4.2.4 DIAMETER Basis-Protokoll
Das Basis-Protokoll definiert das Nachrichtenformat von DIAMETER, einen
Satz von Protokollkommandos und legt fest, wie die Nachrichten gesichert
transportiert werden können.
Für die Entwicklung des Basis-Protokolls (d.h. nur grundlegende
Eigenschaften mit dem Ziel der Erweiterbarkeit) wurden u.a. die folgenden
Ziele formuliert:
Leichtgewichtig und einfach zu implementieren
Unterstützung einer großen Anzahl von AVPs
Effiziente Verschlüsselung von Attributen (wie bei RADIUS)
Unterstützung für Herstellereigene AVPs und Kommandos
Zuverlässigkeit durch das unterlagerte SCT-Protokoll (SCTP)
Schnelle Erkennung unerreichbarer Peers
Unterstützung für unangeforderte Nachrichten an ‚Clients’
Ein
Session-Objekt
pro
Authentifizierungs/Autorisierungsanforderung
Unterstützung für Redirect-Dienste, um Proxys zu umgehen
Der Grundgedanke des DIAMETER Basis-Protokolls war nicht die Schaffung
eines
allumfassenden
AAA-Protokolls,
das
sämtliche
Applikationscharakteristika heute und in Zukunft abdecken kann, sondern
lediglich die Bereitstellung eines sicheren Transportdienstes für die
Nachrichten der verschiedensten applikationsspezifischen Erweiterungen.
Aus diesem Grunde sollte es leichtgewichtig und einfach zu
implementieren sein.
In DIAMETER werden alle Informationen in Attribut-Wert-Paare (AVPs)
verpackt. Ein AVP besteht aus drei Teilen:
Identifikationsnummer, Längenfeld, Datenfeld.
Die eindeutige Identifikationsnummer wird dazu verwendet, die
verschiedenen Inhalte des Datenfeldes zu unterscheiden bzw. zu
klassifizieren. Die Menge der möglichen Identifikationsnummer muss
natürlich so groß sein, dass auch zukünftige Protokollerweiterungen ihre
eigenen AVPs definieren können.
Im Gegensatz zum Client/Server-Modell im RADIUS-Protokoll, liegt
eine Peer-2-Peer Kommunikationsstruktur zugrunde. Diese
Struktur, in der jeder Peer sowohl als Client als auch als Server fungieren
kann, erlaubt es auch unangeforderte Nachrichten an die NASes zu
versenden. Dies hat sehr viele Vorteile gegenüber dem klassischen
Client/Server-Modell. Nun ist es z.B. möglich Accounting-Daten zu
sammeln und erst auf Anforderung an einen Server zu übertragen, bzw.
hat ein Server nun die Möglichkeit eine Benutzersitzung von sich aus zu
beenden.
DIAMETER
Das DIAMETER-Protokoll ist ein sitzungsorientiertes Protokoll. Für jeden
authentifizierten Nutzer wird eine Sitzung zwischen dem Initiator der
Authentifizierungs-/Autorisierungsanfrage und dem Heimat-DIAMETERServer verwaltet, die über die komplette Nutzungszeit global eindeutig ist.
Alle nachfolgenden DIAMETER-Transaktionen (z.B. Accounting) müssen
den Sitzungsbezeichner jeweils mit übertragen.
Um eine DIAMETER-Sitzung zu beenden, wird entweder eine ‚Session
Termination’-Nachricht verschickt, oder der Sitzungs-Timer läuft ab und
die Sitzung wird durch ein Timeout-Ereignis abgebrochen.
Dieser Mechanismus wurde implementiert, um eine Sitzung in jedem Fall
adäquat beenden zu können.
Da heutige Mikroprozessoren dafür ausgelegt sind, vier Byte Worte zu
verarbeiten, fordert das DIAMETER-Protokoll eine Ausrichtung auf 32-bit
für alle Header und das Datenfeld.
4.2.5 DIAMETER Roaming Support
Das DIAMETER-Protokoll wurde von Anfang an so konzipiert, um für
Roaming-Situationen anwendbar zu sein.
Zu diesem Zweck wurde von der ROAMOPS-Arbeitsgruppe das
Netzelement des Brokers eingeführt. Ein Broker fungiert in einem
DIAMETER-System entweder als Proxy-Server oder als Redirect-Server
und hat die Aufgabe eine Verbindung zwischen dem lokalen ISP und dem
Heimat
ISP
herzustellen,
um
Authentifizierungsbzw.
Autorisierungsinformationen austauschen zu können.
Abbildung 7 zeigt den Einsatz eines Brokers als Proxy-Server in einer
Roaming-Situation.
Network
Access
Server
Local ISP
Primary
Proxy
Server
Home ISP
Primary
Home
Server
2 nd
Proxy
Server
2 nd
Home
Server
Abbildung 7 – Broker als Proxy-Server
Wird ein
als
eingesetzt, so übernimmt er in der
die Aufgabe eines einfachen Routers.
erlauben
direkt zu kommunizieren,
indem sie einen Routing-Informationsservice bereitstellen.
Broker
Redirekt-Server
DIAMETER-Architektur
Redirekt-Server
DIAMETER-Peers
Wenn ein Redirekt-Server eine Anfrage erhält, wird eine RedirektResponse-Nachricht an den Initiator der Anfrage zurückgesendet, mit den
nötigen Informationen, die gebraucht werden, damit der lokale
DIAMATER-Server direkt mit dem Server des Heimat ISPs in Kontakt
treten kann.
Abbildung 8 verdeutlich diese Situation.
Redirect
Server
Request
Response mit
Result Code=
Redirect
Local
DIAMETER
Server
Direkte
Kommunikation
Home
DIAMETER
Server
Abbildung 8 – Broker als Redirect-Server
4.2.6 DIAMETER Erweiterungen
Die DIAMETER-Architektur besteht aus dem DIAMETER Basis-Protokoll und
einem Satz von Erweiterungen, von denen einige in diesem Abschnitt kurz
eingeführt werden sollen.
4.2.6.1 Strong Security Erweiterung
Das DIAMATER Basis-Protokoll ermöglicht DIAMETER-Servern eine sichere
Kommunikation mittels hop-by-hop Authentifizierung. Hop-by-Hop
Authentifizierung bedeutet, dass der anfragende Server eine gesicherte
Kommunikation mit einem Proxy- oder Redirect-Server nutzt, und der
Proxy wiederum nutzt eine sichere Verbindung mit dem Home-Server
(siehe RADIUS).
Die Strong-Security-Erweiterung bietet starke Verschlüsselung für
ausgewählte AVPs. Dies wird für eine gesicherte Kommunikation auf Endezu-Ende-Basis benötigt, wenn die Verbindung über Proxy-Server
geschaltet ist.
4.2.6.2 NASREQ (Network Access Server Requirements) Erweiterung
Die NASREQ Erweiterung bietet Authentifizierung und Autorisierung für
Einwahl-PPP-Nutzer und Terminal-Server-Zugänge.
Diese Erweiterung benutzt dazu direkt die in RADIUS definierten AVPs, um
die benötigten Informationen zu übertragen. Diese Methode wurde
benutzt, um eine einfachere Migration von existierenden RADIUS-Servern
hin zu der DIAMETER zu ermöglichen, da so die bestehenden Nutzerprofile
weiterverwendet werden konnten.
Außerdem wird so der Rechenaufwand für Systeme minimiert, die in
einem Inter-Working-System als Bridge zwischen den bestehenden
RADIUS- und den neuen DIAMETER-Systemen fungieren.
4.2.6.3 Accounting Erweiterung
Die Accounting Erweiterung bietet eine Verbrauchsermittlung sowohl für
die Mobile-IP Erweiterung, die hier nicht weiter besprochen wird und die
NASREQ Erweiterung.
Wie das
überträgt DIAMETER die Accountinginnerhalb von Attribut-Wert-Paaren (AVP). Die Accounting
definiert einen Satz von Accounting AVPs, die für alle Dienste
genutzt werden, jede Erweiterung bringt aber von sich aus noch ihre
eigene dienstspezifischen Accounting AVPs mit.
RADIUS-Protokoll
Informationen
Erweiterung
Die DIAMETER Accounting Erweiterung bietet eine Echtzeit-Übertragung
der Accounting-Informationen, was besonders in Umgebungen gebraucht
wird, in denen diese Informationen in einem engen Zeitfenster übertragen
werden müssen, wie z.B. bei dem Gebrauch von Kundenkarten.
5. Zusammenfassung
Das Ziel der AAAarch Arbeitsgruppe eine generelle AAA-Architektur zu
etablieren, ist, vor allem im Hinblick auf zukünftige Anwendungsfelder,
sicherlich noch lange nicht erreicht.
RADIUS und DIAMETER, die einzigen wirklichen AAA-Protokolle, die
heutzutage verfügbar sind, wurden für spezielle Anwendungsfälle
konzipiert und leisten die AAA-Dienste mit Hilfe ihrer
Erweiterungsmechanismen.
Neue Entwicklungen, wie die Vernetzung von mobilen Geräten in Ad hoc
Netzwerken oder die dynamischen Netzwerkzugehörigkeit in IP-basierten
Umgebungen bei Mobile-IP, schaffen Voraussetzungen, die von dem
vorgeschlagenen Modell der AAAarch nicht erfüllbar sind.
Insbesondere in Ad hoc Netzwerken, bei denen man durch die
hochdynamische Natur von keiner festen Topologie oder Infrastruktur
ausgehen kann, ist das Modell des AAA-Servers in dieser Form sicherlich
nicht realisierbar und es muss über eine dezentrale Struktur nachgedacht
werden.
Authentifizierung, Autorisierung und Accounting haben in dieser Art von
Netzwerkstruktur neue Probleme und Anforderungen, die in ein
allgemeines Modell mit einfließen müssen, um für die Zukunft gerüstet zu
sein.
6. Quellenverzeichnis
[1]
[2]
[3]
[4]
[5]
Levijoki, „Authentication, Authorisation and Accounting in Ad Hoc
networks”, Helsinki, May 2000
Laat, Gross, Gommans, Vollbrecht, Spence, “Generic AAA
Architecture”, “RFC 2903”, August 2000
Rigney, Livingston, Willens, Rubens Merit, Simpson Daydreamer,
“Remote Authentication Dial In User Service (RADIUS)”, “RFC 2865”,
June 2000
Rigney, Livingston, “RADIUS Accounting”, “RFC 2866”, June 2000
Calhoun, Zorn, Pan, Akhtar, “Diameter Framework”, draft-ietf-aaadiameter-framework-01.txt, March 2001

Documents pareils