Ich arbeite seit Jahren mit n8n. Jetzt, da es ziemlich populär wird, sehe ich immer mehr Video-Tutorials und Artikel darüber, was großartig ist. Beim Versuch, die Benutzerfreundlichkeit von n8n zu demonstrieren, wird leider auf die Authentifizierung vergessen. Ich verstehe es - dieser Teil ist langweilig, er nimmt Zeit von der eigentlichen Demonstration der Automatisierung weg, und Videos zu machen ist schon schwer genug, ohne zu viel über den Authentifizierungsteil nachzudenken.
Man soll aber natürlich nicht alle Content Creator in den gleichen Topf werfen Nehmen Sie die Videos von Nate Hark zum Beispiel, wo auf die Authentifizierung explizit eingegangen wird.
Ich möchte trotzdem einen Beitrag erstellen, der diesem Thema gewidmet ist. Man könnte argumentieren, dass das etwas ist, was von den Erstellern von n8n gemacht werden sollte, aber das ist keine Schwäche von n8n, es ist Ihre Verantwortung, Ihre Daten zu sichern. Genauso wie Sie es als Ihre Verantwortung ansehen würden, Ihre Tür zu schließen und zu versperren, richtig?
Wie in der realen Welt könnten Sie andere Maßnahmen haben, um Ihre Daten zu sichern. n8n kann keine Authentifizierung bei Ihren Webhooks und MCP Servern erzwingen. Es ist Ihre Aufgabe zu entscheiden, wie und wann Sie Ihren Zugang sichern (immer! Sie müssen immer den Zugang sichern).
Webhooks und MCP Server
Webhooks
Beginnen wir zuerst mit Webhooks. Wenn Sie einen Webhook-Trigger in n8n einfügen, wird er standardmäßig so aussehen:

n8n Webhook-Trigger
Wenn Sie sich die Details ansehen, werden Sie sehen, dass die Authentifizierung auf None
gesetzt ist.

n8n Webhook-Trigger ohne Authentifizierung
Was das bedeutet ist, dass jeder mit der URL des Webhooks diesen Workflow auslösen und potentiell auf Ihre Daten zugreifen kann.
Lassen Sie mich das mit einem einfachen Beispiel demonstrieren. Ich habe einen Node hinzugefügt, der einen geheimen Text zurückgeben wird. Dieser sollte natürlich nicht öffentlich zugänglich sein.
curl https://cvx.app.n8n.cloud/webhook/2fd7f5ee-0cef-4213-bc1c-b8194333fd90
{"secret":"this data is secret and should not be public"}
Autsch, das ist nicht gut. Unsere supergeheimen Daten sind jetzt öffentlich zugänglich.
Authentifizierung hinzufügen
Authentifizierung hinzuzufügen ist super einfach, aber wie immer hängt es davon ab, welche Optionen Sie im Tool haben, das den Webhook aufruft. Typischerweise würden Sie sich für Header-basierte Authentifizierung entscheiden. Das bedeutet, dass Sie den Header sowie den Wert definieren, der vom Tool gesendet werden soll, das den Webhook aufruft.
Um Header-basierte Authentifizierung hinzuzufügen, würden Sie zum Webhook-Trigger gehen, auf Authentication klicken,
und Header Auth
auswählen.Authentifizierung zum Webhook hinzufügen
Dann, wenn Sie das erste Mal Authentifizierung hinzufügen, werden Sie aufgefordert, einen neuen Header hinzuzufügen.neue Berechtigung erstellen
Jetzt können Sie den Header und den Wert hinzufügen, der vom Tool gesendet werden soll, das den Webhook aufruft. Sie können jeden Header-Namen und Wert verwenden, den Sie möchten; Sie müssen nur den gleichen Header und Wert verwenden, wenn Sie den Webhook aufrufen.

neue Berechtigungseinstellungen
In diesem Beispiel verwende ich den Header Authentication
und den Wert SuperSecretPassword
.
Bitte verwenden Sie niemals dieses Passwort in der Produktion, es ist nur ein Beispiel.
Jetzt einfach speichern, und Sie können loslegen.Verwenden Sie niemals dieses Passwort
Der Webhook wird jetzt mit dem Header Authentication
und dem Wert SuperSecretPassord
gesichert,
ich weiß, dass ist ein furchtbares Passwort, aber besser als es komplett offen zu lassen.Webhook mit Authentifizierung
Also, versuchen wir das nochmal.
curl https://cvx.app.n8n.cloud/webhook/2fd7f5ee-0cef-4213-bc1c-b8194333fd90
Authorization data is wrong!⏎
Viel besser! Jetzt können wir sehen, dass der Webhook-Aufruf abgelehnt wird, wenn der Header nicht korrekt oder, in diesem Fall, fehlend ist.
Header-basierte Authentifizierung verwenden
Ich verstehe es—ich erkläre hier, wie man Header-basierte Authentifizierung verwendet, was super einfach in n8n ist, aber zeige Beispiele, wie man es mit curl verwendet, was für die meisten Menschen sehr verwirrend sein könnte. Leider hängt es vom Tool ab, das Sie verwenden; die Einrichtung ist unterschiedlich. Mit diesem curl-Beispiel versuche ich nur, Ihnen zu zeigen, wie n8n in jedem Fall reagiert.
curl -H "Authentication: SuperSecretPassword" https://cvx.app.n8n.cloud/webhook/2fd7f5ee-0cef-4213-bc1c-b8194333fd90
{"secret":"this data is secret and should not be public"}
🎉 Erfolg!
Die geheimen Daten werden jetzt zurückgegeben, aber nur wenn der Header korrekt ist.
In curl
würden Sie den Header mit dem -H
Flag hinzufügen: -H "Authentication: SuperSecretPassword"
.
In Ihrem Tool der Wahl wird die Einrichtung anders sein, aber höchstwahrscheinlich wird es
Header-Name- und Wert-Felder geben.
MCP Server
Jetzt zum MCP Server—die Einrichtung hier ist im Grunde die gleiche wie die Webhook-Einrichtung.
Diesmal werden wir jedoch die Bearer Auth
-Option verwenden.
Authentifizierung hinzufügen
Die Bearer-Auth ist in diesem Fall fast das gleiche wie die Header-Auth, aber anstatt einen Header hinzuzufügen, würden Sie ein Bearer-Token hinzufügen. Es klingt kompliziert, aber es ist tatsächlich sehr einfach. Denken Sie einfach an das Token als ein Passwort, das Sie definieren.
Erstellen Sie jetzt einen neuen MCP Server Trigger und wählen Sie Bearer Auth
im Authentication-Bereich.n8n MCP Server Trigger
Klicken Sie auf neue Berechtigung und fügen Sie eine neue Berechtigung hinzu.eine neue Berechtigung hinzufügen
Machen Sie Ihre Hände bereit und schlagen Sie auf die Tastatur, um eine lange zufällige Zeichenfolge zu generieren, oder noch besser, verwenden Sie einen Zufallspasswort-Generator—
etwas wie das: dXL6SCTazoYC6BF6d087UMNsYQTZJgsNutV
Nehmen Sie jetzt diese zufällige Zeichenfolge, setzen Sie sie in einen Texteditor Ihrer Wahl und fügen Sie das Wort Bearer
davor hinzu.
Es sollte jetzt so aussehen: Bearer dXL6SCTazoYC6BF6d087UMNsYQTZJgsNutV
Kopieren Sie das Ganze und fügen Sie es in das Token-Feld in n8n ein.Bearer Auth zum MCP Server hinzufügen
Und das war’s—Sie haben jetzt Bearer Auth zu Ihrem MCP Server hinzugefügt.MCP Server mit Bearer Auth
Das in Claude Desktop verwenden
Um das in Claude Desktop zu verwenden, müssen Sie die Claude Desktop-Einstellungen
in der Datei claude_desktop_config.json
aktualisieren.
Sie finden Details darüber, wo Sie die Datei finden, in der offiziellen MCP-Dokumentation.
Zusätzliche Informationen finden Sie auch in der n8n-Dokumentation.
Hier ist ein Beispiel der Konfigurationsdatei:
{
"mcpServers": {
"n8n": {
"command": "npx",
"args": [
"mcp-remote",
"https://foo.app.n8n.cloud/mcp/7d11cb75-5d95-4d8f-bcea-36785d4c4b3e/sse",
"--header",
"Authorization: Bearer ${AUTH_TOKEN}"
],
"env": {
"AUTH_TOKEN": "dXL6SCTazoYC6BF6d087UMNsYQTZJgsNutV"
}
}
}
}
Eine allgemeine Anmerkung zur Authentifizierung
Authentifizierung ist auch eine sehr häufige Sache, die in mehreren Tools erforderlich ist. Wenn diese Tools einen Node in n8n haben, werden Sie aufgefordert, Authentifizierung zu diesem Tool hinzuzufügen. n8n wird in diesem Fall dafür sorgen, dass die Authentifizierung sicher und verschlüsselt bleibt. Aber da n8n so flexibel ist, können Sie auch HTTP-Node verwenden, um andere Tools aufzurufen, und wenn diese Tools Authentifizierung erfordern, könnten Sie versucht sein, einen HTTP-Header zum Node hinzuzufügen. Bitte tun Sie das niemals, und verwenden Sie stattdessen die Authentifizierungsoptionen, die in n8n verfügbar sind. Ich habe darüber im n8n Forum geschrieben, nachdem ich gesehen habe, dass Leute versehentlich ihre Workflows mit ihren Authentifizierungsdetails gepostet haben.
Ihre nächsten Schritte
- Überprüfen Sie Ihre aktuellen n8n-Workflows - prüfen Sie jeden Webhook und MCP Server auf fehlende Authentifizierung
- Implementieren Sie Header- oder Bearer-Auth auf allen ungesicherten Endpunkten
- Dokumentieren Sie Ihre Authentifizierungseinrichtung für Ihr Team
Brauchen Sie Hilfe bei der Implementierung dieser Sicherheitsmaßnahmen? Buchen Sie eine Beratung und lassen Sie uns gemeinsam Ihre Automatisierungen sichern.
Foto von Max Bender auf Unsplash