Wenn Sie Probleme mit Kerberos-Konfigurationen und Pre-Authentication-Fehlern haben, die Sie nachts wach halten, sind Sie nicht allein. Selbst die erfahrensten Systemadministratoren kennen die einzigartigen Frustrationen, die mit der Einrichtung der Kerberos-Authentifizierung einhergehen.
Und Sie können kleine Fehler nicht umgehen, weil Sie wissen, dass sie eine entscheidende Rolle in der Unternehmenssicherheit spielen, als Rückgrat der Authentifizierungsprotokolle für Organisationen jeder Größe. Deshalb benötigt Ihr Entwicklungsteam Plattformen, um Ihre Kerberos-authentifizierten APIs zu testen, was eine Herausforderung sein kann, da selbst die beliebtesten Testplattformen wie Postman dies leider noch nicht unterstützen oder die Verwendung wie in SoapUI zu kompliziert ist.
Hier kommt Apidog ins Spiel und bietet native Unterstützung für die Kerberos- und NTLM-Authentifizierungsprotokolle, sodass Sie mit dem Testen von Kerberos-authentifizierten APIs unter Windows, Mac und Linux beginnen können. Egal, ob wir Ihr Interesse geweckt haben oder nicht, lesen Sie bitte den Rest unseres Blogs weiter, in dem wir Ihnen helfen, sich mit Kerberos vertrauter zu machen, seine Bedeutung zu erklären und zu zeigen, wie Sie es auf unserer Plattform verwenden können.
Bevor wir uns mit den Schritten befassen, werfen wir einen kurzen Blick auf das Kerberos Authentication Protocol – den Kern vieler Unternehmenssicherheitssysteme.
Was ist das Kerberos Authentication Protocol?
Kerberos wurde von MIT entwickelt und ist ein Netzwerksicherheits-Authentifizierungsprotokoll, das eine sichere Möglichkeit zur Übertragung von Benutzeridentitätsdaten über ein Netzwerk bietet. Es ist besonders beliebt in Microsoft Windows-Umgebungen und ist ein wesentlicher Bestandteil von Single Sign-On (SSO)-Lösungen, mit denen sich Benutzer einmal authentifizieren und auf mehrere Dienste zugreifen können, ohne Passwörter erneut eingeben zu müssen.
Wie funktioniert die Kerberos-Authentifizierung?
Das Herzstück von Kerberos sind mehrere Schlüsselkomponenten, die zusammenarbeiten, um eine sichere Authentifizierung zu gewährleisten:
- KDC (Key Distribution Center): Dies ist der zentrale Server, der Authentifizierungsanforderungen verwaltet. Es umfasst zwei kritische Komponenten:
- AS (Authentication Server): Überprüft die Identität des Benutzers und stellt das Ticket Granting Ticket (TGT) aus.
- TGS (Ticket Granting Service): Stellt Diensttickets aus, mit denen Benutzer auf bestimmte Ressourcen zugreifen können.
- TGS (Ticket Granting Service): Stellt Diensttickets aus, mit denen Benutzer auf bestimmte Ressourcen zugreifen können.
- Service Tickets: Diese werden vom TGS ausgestellt und dienen zur Authentifizierung des Zugriffs auf bestimmte Dienste.
Der Kerberos-Authentifizierungsablauf ist einfach, aber sicher:
- Der Benutzer meldet sich an und fordert ein TGT vom AS an.
- Der AS überprüft die Identität des Benutzers und stellt ein TGT aus.
- Um auf einen Dienst zuzugreifen, fordert der Benutzer mit seinem TGT ein Dienstticket vom TGS an.
- Der TGS überprüft das TGT und stellt das Dienstticket aus.
- Der Benutzer verwendet das Dienstticket, um den Zugriff auf den angeforderten Dienst zu authentifizieren.
In diesem Prozess fungiert das KDC als zentrale Entität, die zwei Schlüsselkomponenten umfasst: den Authentication Server (AS) und den Ticket Granting Service (TGS). Das TGT (Ticket Granting Ticket) und die Diensttickets dienen als wesentliche Anmeldeinformationen, um die Identität zu überprüfen und den Zugriff während des gesamten Authentifizierungsablaufs zu autorisieren.
Dieses Design ermöglicht es Benutzern, sich nur einmal zu authentifizieren (indem sie ein TGT erhalten) und dann bei Bedarf mehrere Diensttickets anzufordern, ohne ihre Anmeldeinformationen erneut eingeben zu müssen. Dieser Ansatz unterstützt Single Sign-On (SSO) und bietet ein nahtloses Benutzererlebnis bei gleichzeitiger Aufrechterhaltung einer robusten Sicherheit innerhalb des Systems.

Testen von Kerberos-authentifizierten APIs mit Apidog unter macOS

Nachdem Sie nun verstanden haben, wie Kerberos funktioniert, gehen wir die Schritte zum Testen eines Kerberos-authentifizierten API-Endpunkts mit Apidog unter macOS durch.
Schritt 1: Vorbereitung
Zunächst benötigen Sie einige grundlegende Kerberos-bezogene Informationen, die Ihre Organisation normalerweise bei der Verwendung der Kerberos-Authentifizierung bereitstellt:
- Account: Ihr Kerberos-Benutzerkonto (z. B. Scarlett@APIDOG.LOCAL).
- Password: Ihr Kerberos-Anmeldepasswort.
- Kerberos Realm: Der Domänenname in Großbuchstaben (z. B. APIDOG.LOCAL).
- KDC Server Address: Der Fully Qualified Domain Name (FQDN) oder die IP-Adresse des KDC (z. B. ills7i8hyt2.apidog.local).
Bevor Sie beginnen, stellen Sie sicher, dass Sie die neueste Version von Apidog heruntergeladen und installiert haben. Beachten Sie, dass die Webversion von Apidog Kerberos nicht unterstützt, daher müssen Sie den Desktop-Client verwenden.
Schritt 2: Ändern Sie Ihr lokales DNS für die Kerberos-Authentifizierung:
Die Kerberos-Authentifizierung wird typischerweise innerhalb eines internen Netzwerks verwendet. Um eine ordnungsgemäße Konnektivität zu gewährleisten, müssen Sie Ihren DNS-Server so konfigurieren, dass er auf Ihre Active Directory (AD)-Serveradresse verweist.
Schritt 3: Konfigurieren Sie /etc/krb5.conf
unter macOS
Die Datei krb5.conf
ist die zentrale Konfiguration für Kerberos. Sie definiert Ihren Kerberos-Bereich und die KDC-Serveradresse. Sie müssen diese Datei auf Ihrem System erstellen oder ändern.
- Öffnen Sie ein Terminal und überprüfen Sie, ob
krb5.conf
bereits vorhanden ist:
cat /etc/krb5.conf
- Wenn die Datei nicht existiert, erstellen Sie sie:
nano /etc/krb5.conf
- Fügen Sie den folgenden Inhalt hinzu, um den Kerberos-Bereich und den KDC-Server zu konfigurieren:
[libdefaults]
default_realm = APIDOG.LOCAL # Ihr Kerberos-Realm-Name, typischerweise die Großschreibweise des Domänennamens Ihrer Organisation
[realms]
EXAMPLE.COM = {
kdc = ills7i8hyt2.apidog.local # KDC-Serveradresse, hier wird der FQDN des Domänencontrollers angenommen
admin_server = ills7i8hyt2.apidog.local # Normalerweise identisch mit dem KDC
}
[domain_realm]
.apidog.local = APIDOG.LOCAL # Zuordnung zwischen Domänennamen und Kerberos-Realm-Namen, linke Seite ist klein geschrieben
apidog.local = APIDOG.LOCAL
- Speichern und schließen Sie die Datei.
Schritt 4: Melden Sie sich beim AD-Konto an
Um sich mit Kerberos zu authentifizieren, können Sie entweder die GUI- oder CLI-Tools unter macOS verwenden.
GUI: Verwenden Sie den Ticket Viewer, um Ihre Identität hinzuzufügen. Öffnen Sie Spotlight, suchen Sie nach Ticket Viewer und fügen Sie dann Ihre Anmeldeinformationen hinzu.

CLI: Alternativ können Sie den Befehl kinit
verwenden: bash kinit <username@domain>
Überprüfen Sie Ihre Kerberos-Tickets mit: bash klist
# Erhalten Sie ein Ticket für ein AD-Konto
kinit <username@domain>
# Überprüfen Sie lokale Tickets
klist
Schritt 5: Konfigurieren Sie die Kerberos-Authentifizierung in Apidog
Nachdem Sie sich nun bei Ihrem AD-Konto angemeldet und Kerberos eingerichtet haben, öffnen Sie Apidog und führen Sie die folgenden Schritte aus:
- Erstellen Sie eine
Neue Anfrage
in Apidog.

- Wählen Sie im Abschnitt „Auth“ Kerberos als Authentifizierungstyp aus.

- Geben Sie den Service Principal Name (SPN) ein, der eine Kombination aus Ihrem KDC-Server und dem Realm-Namen ist. Zum Beispiel:
HTTP/ills7i8hyt2.apidog.local@APIDOG.LOCAL

- Klicken Sie auf Senden, um die API zu testen.

Fehlerbehebung bei 401-Fehlern
Wenn ein 401 Unauthorized-Fehler auftritt, überprüfen Sie Folgendes:
- DNS-Konfiguration: Stellen Sie sicher, dass DNS richtig eingerichtet ist.
- Kerberos-Setup: Überprüfen Sie Ihre Kerberos-Konfiguration in
krb5.conf
. - Gültigkeit der Anmeldeinformationen: Stellen Sie sicher, dass Ihr Benutzername und Ihr Passwort korrekt und aktiv sind.
- API-Zugriffsberechtigungen: Bestätigen Sie, dass Sie die erforderlichen Berechtigungen für den Zugriff auf die API haben.
- Ticket-Ablauf: Kerberos-Tickets laufen ab, also stellen Sie sicher, dass Ihr Ticket noch gültig ist. Möglicherweise müssen Sie es mit
kinit
erneuern.

Konfigurieren der Kerberos-Authentifizierung unter Windows
Für Domänen-verbundene Windows-Systeme lässt sich Apidog nahtlos in bestehende Kerberos-Konfigurationen integrieren. Wenn Ihr System bereits Teil einer Domäne ist, ist keine zusätzliche Konfiguration erforderlich, um mit dem Testen von Kerberos-authentifizierten APIs zu beginnen.
Für Nicht-Domänen-Systeme benötigen Sie Administratorrechte und gültige Domänenanmeldeinformationen, um der Domäne beizutreten und Kerberos einzurichten. Hier sind die beteiligten Schritte:
- Konfigurieren Sie Ihre DNS-Einstellungen so, dass sie auf die DNS-Server der Domäne verweisen.
- Navigieren Sie zu Systemeinstellungen > Auf Arbeit oder Schule zugreifen, um auf die Domäneneinstellungen zuzugreifen.
- Schließen Sie den Domänenbeitrittsprozess ab, indem Sie die erforderlichen autorisierten Anmeldeinformationen angeben.
Verwenden von Apidog zum Testen von NTLM-authentifizierten APIs
Zusätzlich zu Kerberos unterstützt Apidog auch die NTLM-Authentifizierung, die häufig für Legacy-Systeme verwendet wird. NTLM ist schneller, aber weniger sicher als Kerberos, was es ideal für kleinere Netzwerke oder als Fallback macht, wenn Kerberos nicht verfügbar ist.
Für die NTLM-Authentifizierung geben Sie einfach Ihren Benutzernamen und Ihr Passwort im Abschnitt Auth von Apidog ein und klicken Sie auf Senden – es ist keine zusätzliche Einrichtung erforderlich.
Schritt 1: Vorbereitung & Lokales DNS ändern
Die NTLM-Authentifizierung ist unkompliziert und erfordert nur Ihr vom Unternehmen bereitgestelltes Konto und Passwort. Stellen Sie sicher, dass Sie die neueste Version von Apidog heruntergeladen und registriert haben.
Da auf NTLM-authentifizierte Endpunkte häufig innerhalb des internen Netzwerks zugegriffen wird, stellen Sie sicher, dass Ihr DNS-Server so konfiguriert ist, dass er auf die Active Directory (AD)-Serveradresse verweist.
Schritt 2: Konfigurieren Sie Auth in Apidog
Das Konfigurieren der NTLM-Authentifizierung in Apidog ist einfach und erfordert keine zusätzliche Einrichtung.
Wählen Sie im Abschnitt Auth
von Apidog NTLM Authentication
als Authentifizierungstyp aus. Sie werden aufgefordert, Ihren Benutzernamen und Ihr Passwort in die entsprechenden Felder einzugeben.

Sobald Sie Ihre Anmeldeinformationen eingegeben haben, klicken Sie auf die Schaltfläche Senden
, um den Authentifizierungsprozess abzuschließen.
Vorteile der Kerberos-Authentifizierung
Kerberos bietet mehrere Vorteile, die es zur bevorzugten Authentifizierungsmethode für Unternehmen machen:
- Zentrale Authentifizierung: Die gesamte Authentifizierung wird von einem zentralen Server verarbeitet, wodurch die Benutzerverwaltung und die Durchsetzung von Richtlinien vereinfacht werden.
- Gegenseitige Authentifizierung: Sowohl der Client als auch der Server überprüfen gegenseitig ihre Identität, was eine zusätzliche Sicherheitsebene bietet.
- Single Sign-On (SSO): Nach der Authentifizierung können Benutzer auf mehrere Dienste zugreifen, ohne sich erneut anmelden zu müssen.
- Ticketbasierte Authentifizierung: Benutzeranmeldeinformationen (Passwörter) werden niemals über das Netzwerk übertragen. Stattdessen werden verschlüsselte Tickets verwendet, um die Identität nachzuweisen.
- Begrenzte Ticketgültigkeit: Tickets sind mit einem Zeitstempel versehen und laufen nach einer festgelegten Zeit ab, wodurch die Risiken im Zusammenhang mit kompromittierten Anmeldeinformationen reduziert werden.
- Reduzierte Serverauslastung: Server müssen Benutzer nicht wiederholt authentifizieren, wodurch die Systemleistung verbessert wird.
Fazit
In modernen Unternehmensumgebungen spielen sowohl Kerberos als auch NTLM eine entscheidende Rolle bei der Authentifizierung. Während Kerberos eine verbesserte Sicherheit für groß angelegte Bereitstellungen bietet, bietet NTLM Kompatibilität mit älteren Systemen und kleineren Netzwerken.
Mit der nativen Unterstützung von Apidog für beide Protokolle wird das Testen von APIs, die sich auf diese Authentifizierungsmethoden verlassen, unkompliziert, egal ob Sie mit Kerberos-authentifizierten Diensten in einer Windows-, Mac- oder Linux-Umgebung arbeiten oder NTLM für Legacy-Systeme verwenden.
Apidog hilft Ihnen, Ihr Authentifizierungs-Setup effizient zu testen und zu validieren, wodurch Sie Zeit sparen und die Frustration für Entwickler und QA-Teams reduzieren. Beginnen Sie noch heute mit Apidog und erleben Sie nahtloses, sicheres API-Testen mit integrierter Kerberos- und NTLM-Unterstützung.