Ein Discord-Bot-Token ist das Passwort für das Konto eines Bots. Wer ihn hat, kann den Bot bei Discord anmelden und ihn alles tun lassen, was seine Berechtigungen erlauben, auf jedem Server, dem er bereits beigetreten ist. Du bekommst ihn kostenlos im Discord Developer Portal, wenn du eine Bot-Anwendung anlegst. Behandle ihn wie ein Passwort, denn genau das ist er. Er ist kein öffentlicher Bezeichner wie die User-ID oder der Einladungslink eines Bots.
So bekommst du einen Discord-Bot-Token
- Öffne das Developer Portal. Gehe zu discord.com/developers/applications und melde dich mit dem Discord-Konto an, dem der Bot gehören soll.
- Lege eine Anwendung an. Drücke auf New Application und gib ihr einen Namen. Dieser Name ist noch nicht der Anzeigename des Bots, nur der der Anwendung.
- Öffne den Tab Bot. Discord legt automatisch einen Bot-User für die Anwendung an. Hier legst du Benutzernamen und Avatar fest. Das sehen die Mitglieder auf dem Server.
- Schalte die nötigen Intents ein. Unter Privileged Gateway Intents sind Server Members Intent und Message Content Intent standardmäßig aus. Die meisten Bots, die neue Mitglieder begrüßen, Nachrichtentext lesen oder Rollen verfolgen, brauchen beide.
- Drücke auf Reset Token. Discord erzeugt den Token und zeigt ihn dir genau einmal. Kopiere ihn sofort. Denn denselben Token kannst du später nicht mehr ansehen. Ein zweiter Druck auf Reset Token macht den ersten ungültig und stellt einen neuen aus.
- Trage ihn dort ein, wo er gebraucht wird. In den Code deines eigenen Bots als Umgebungsvariable oder in das Feld im Dashboard eines Hosting-Anbieters. Niemals in eine Chat-Nachricht, ein öffentliches Repository oder ein Support-Ticket.
Was ein Bot-Token tatsächlich erlaubt
Mit dem Token meldet sich der Code als Bot-User am Gateway und an der REST-API von Discord an. Mit einem gültigen Token kann der Code:
- Den Bot anmelden und online halten
- In jedem Kanal, den der Bot sehen kann, Nachrichten senden und lesen
- Jede Aktion ausführen, die die Rollenberechtigungen des Bots auf jedem Server erlauben, auf dem er bereits ist: Rollen verwalten, kicken, bannen, Kanäle löschen und so weiter
- Die DMs des Bots lesen und auf Interaktionen antworten (Slash-Befehle, Buttons, Modals)
Was der Token nicht erlaubt: den Bot zu neuen Servern hinzuzufügen. Dafür braucht es einen eigenen OAuth2-Autorisierungslink, der aus der Client-ID der Anwendung und einem gewählten Berechtigungssatz gebaut wird und den ein Server-Admin bestätigen muss. Ein geleakter Token kann den Bot also nicht irgendwo Neues einladen. Er kann aber auf jedem Server, dem der Bot bereits beigetreten ist, echten Schaden anrichten, soweit die Berechtigungen des Bots dort reichen.
Warum du einen Bot-Token nie in einen Chat einfügen solltest
Ein Bot-Token ist ein Klartext-Zugangsdatum ohne eingebautes Ablaufdatum. Jeder, der ihn hat, kann die Identität deines Bots nutzen, bis du den Token zurücksetzt. Das gilt auch auf Discord-Support-Servern, in GitHub-Issues oder bei Bildschirmfreigaben, wo er auch nur kurz sichtbar ist. Wer ihn öffentlich einfügt, zum Beispiel in einem GitHub-Commit, gilt bei Discord als geleaktes Zugangsdatum. Das ist eine typische Art, wie Bots gekapert werden, um jeden Server, auf dem sie sind, mit Spam zu überfluten. Im Nachhinein lässt sich nicht feststellen, wer einen geleakten Token benutzt hat oder was damit geschehen ist. Die einzige Lösung ist, ihn zurückzusetzen.
Dieselbe Vorsicht gilt, wenn du einen Token mit einem Hosting-Anbieter teilst. Trage ihn nur in das Dashboard-Feld des Anbieters über HTTPS ein, nie in eine Nachricht an eine Person, egal wie vertrauenswürdig, und nie in einen Fehlerbericht.
Ein Token-Reset beendet den Zugriff sofort
Ein Druck auf Reset Token im Developer Portal macht den alten Token sofort ungültig. Jeder Prozess, der ihn noch nutzt, also dein eigener Code, ein Hosting-Anbieter oder jemand, der ihn unbefugt erhalten hat, wird beim nächsten Verbindungsversuch getrennt und kann sich mit dem alten Wert nicht mehr anmelden. Daraus ergeben sich zwei Dinge, die du wissen solltest:
- Es ist dein Not-Aus. Vermutest du, dass ein Token geleakt wurde, setze ihn sofort zurück, bevor du irgendetwas anderes tust. Der Bot geht für jeden offline, der den alten Token hat, und kommt nur dort wieder online, wo der neue Token eingetragen ist.
- Damit wechselst du auch Anbieter. Hast du deinen Token einem Hosting-Dienst gegeben und willst aufhören? Setze den Token im Developer Portal zurück. Dann endet deren Zugriff sofort, und du musst niemanden bitten, etwas zu löschen.
Ein Bot, der durch einen zurückgesetzten Token getrennt wurde, zeigt in seinen Logs meist den Gateway-Close-Code 4004 (ungültiger Token). Das ist Discords Art zu sagen, dass das Zugangsdatum, das der Bot benutzen wollte, nicht mehr existiert.
Wie Noxyr deinen Token speichert
Noxyr fragt nur für sein Feature Custom Bot nach einem Bot-Token. Dort läuft der volle Funktionsumfang von Noxyr unter dem Namen und Avatar deines eigenen Bots. Der Token wird verschlüsselt gespeichert, nur benutzt, um deinen Bot am Gateway von Discord anzumelden, und nach dem Einfügen nie wieder dir oder anderen angezeigt. Wenn du den Zugriff beenden willst, setze den Token im Developer Portal genau so zurück, wie oben beschrieben. Der Bot von Noxyr wird dann sofort getrennt, wie jeder andere Client mit dem alten Token. Die vollständige Einrichtung, die nötigen Intents und das kostenlose Zugangsmodell per Top.gg-Vote stehen in der Custom-Bot-Dokumentation und in unserem Leitfaden zur Einrichtung des Custom Bots.
Häufige Fragen
Wo finde ich meinen Discord-Bot-Token? Im Developer Portal: deine Anwendung, Tab Bot, Reset Token. Er wird bei der Erzeugung einmal angezeigt. Es gibt keine Seite, die einen bestehenden Token erneut anzeigt.
Ist es sicher, einen Bot-Token zu teilen? Nein. Wer ihn bekommt, auch privat, hat die volle Kontrolle über den Bot auf jedem Server, dem er beigetreten ist. Trage ihn nur in deinen eigenen Code oder in das Dashboard-Feld eines Hosting-Anbieters ein.
Was passiert, wenn ich den Bot-Token zurücksetze? Der alte Token funktioniert überall, wo er benutzt wurde, sofort nicht mehr. Du bekommst einen neuen Token, den du in deinen Code oder das Anbieter-Dashboard einträgst. Die Identität des Bots, seine Server und die vorhandenen Daten bleiben unberührt.
Kann ein geleakter Token meinen Bot zu anderen Servern hinzufügen? Nein. Dafür braucht es den eigenen OAuth2-Einladungslink und die Bestätigung eines Admins auf dem Zielserver. Ein geleakter Token ist aber auf jedem Server, auf dem der Bot schon ist, weiterhin gefährlich.
Löscht das Zurücksetzen des Tokens etwas? Nein. Es macht nur das alte Zugangsdatum ungültig. Einstellungen, Rollen und gespeicherte Daten, die an die Anwendung und die User-ID des Bots gebunden sind, bleiben genau so, wie sie waren.
Richtest du einen eigenen Bot ein? Füge Noxyr kostenlos hinzu, oder lies den Hosting-Leitfaden, wenn du deinen eigenen Code schreibst.