EN DE

Leitfäden

Discord-Berechtigungs-Bitfelder erklärt: So funktionieren Rollen- und Bot-Integer

Nutze diesen Leitfaden, um zu verstehen, was ein Discord-Berechtigungs-Integer wirklich ausdrückt, bevor du Rollen, Kanäle oder Bot-Scopes änderst.

Was ein Discord-Bitfeld ist

Ein Bitfeld ist ein einzelner Integer, der viele Ja-Nein-Berechtigungen gleichzeitig speichert. Jedes Recht hat seine eigene Bit-Position, und die Endzahl ist die Summe der aktivierten Bits.

Darum wirkt ein roher Discord-Berechtigungswert zunächst undurchsichtig, bis du ihn wieder in benannte Rechte zurückübersetzt.

  • Ein gesetztes Bit bedeutet, dass ein Recht aktiv ist.
  • Mehrere gesetzte Bits ergeben gemeinsam eine Dezimalzahl.
  • Die Zahl ist kompakt für APIs, aber für Menschen nur schwer lesbar.

Ein Beispiel mit echten Zahlen

Konkrete Zahlen machen die Idee greifbar. Discord gibt jedem Recht einen festen Wert, der eine Zweierpotenz ist, sodass sich keine zwei Bits überschneiden. Kanal ansehen ist 1024, Nachrichten senden ist 2048, Nachrichten verwalten ist 8192, Mitglieder kicken ist 2, Mitglieder bannen ist 4, Kanäle verwalten ist 16, und Administrator ist nur 8.

Weil sich die Bits nicht überschneiden, ist das Kombinieren einfach eine Addition. Eine normale Chat-Rolle, die einen Kanal sehen und darin schreiben darf, ist 1024 + 2048 = 3072. Eine Moderationsrolle, die kicken, bannen und Nachrichten aufräumen darf, ist 2 + 4 + 8192 = 8198. Das Dekodieren dreht diese Summe einfach wieder in die Liste der benannten Rechte zurück.

Hier stolpern viele über eine Überraschung: Eine größere Zahl bedeutet nicht mehr Macht. Der Moderationswert 8198 sieht viel größer aus als der Administrator-Wert 8, doch eine Rolle mit nur 8 übertrumpft ihn, weil Administrator fast jede andere Prüfung umgeht. Genau deshalb dekodierst du den Integer, statt den Zugriff an seiner Größe zu messen.

  • Kanal ansehen (1024) + Nachrichten senden (2048) = 3072 → eine Lese-und-Schreib-Rolle.
  • Kicken (2) + Bannen (4) + Nachrichten verwalten (8192) = 8198 → eine Moderationsrolle.
  • Administrator = 8 allein übertrumpft trotzdem den Rest, also behandle dieses eine Bit als den Wert mit dem höchsten Risiko.

Rollen, Bots und Kanal-Überschreibungen sind verschiedene Ebenen

Das rohe Bitfeld ist nur ein Teil des Discord-Berechtigungsmodells. Rollen-Hierarchie, Kanal-Überschreibungen und die Administrator-Berechtigung verändern weiterhin, wie der tatsächliche Zugriff aussieht.

Ein Integer zu dekodieren ist deshalb notwendig, aber nicht immer ausreichend, wenn du einen vollständigen Audit durchführst.

  • Rollen-Bitfelder definieren die Baseline der Rechte.
  • Kanal-Überschreibungen erlauben oder verbieten einzelne Aktionen zusätzlich.
  • Administrator verändert die Bedeutung vieler anderer Prüfungen.

Wie du risikoreiche Rechte prüfst

Einige Berechtigungen verdienen mehr Aufmerksamkeit als andere, weil sie größeren operativen Einfluss haben. Administrator ist das offensichtliche Beispiel, aber auch Rechte zur Verwaltung von Rollen, Kanälen, Nachrichten oder Webhooks können weitreichende Folgen haben.

Beginne bei einem Audit mit den Rechten, die Moderation, Nachrichtenkontrolle oder Integrationen stark beeinflussen.

  • Prüfe Administrator zuerst.
  • Danach folgen Rollen verwalten, Kanäle verwalten, Nachrichten verwalten und Webhooks verwalten.
  • Erst danach solltest du die normalen Nachrichtenrechte gegen den tatsächlichen Anwendungsfall halten.

Ein guter Audit-Ablauf für Berechtigungs-Integer

Ein praktischer Prüfpfad startet beim Zweck und arbeitet rückwärts. Frage zuerst, was Rolle oder Bot wirklich dürfen sollen, und vergleiche das dann mit dem dekodierten Bitfeld.

So entdeckst du überdimensionierte Rollen oder Bot-Invites, die ungewollt zu viel Macht mitbringen.

  • Definiere zuerst die Aufgabe: Moderation, Ankündigungen, Support, Logging oder Automatisierung.
  • Dekodiere den Integer in benannte Rechte.
  • Entferne alle Rechte, die für diese Aufgabe nicht zwingend nötig sind.

Wo Berechtigungs-Audits trotzdem scheitern

Viele Teams hören nach dem Dekodieren der Zahl auf. Für eine brauchbare Risiko-Prüfung braucht es aber fast immer noch einen Schritt mehr: Die dekodierten Rechte müssen mit der tatsächlichen Aufgabe von Rolle oder Bot im Server verglichen werden.

Genau dort taucht Überberechtigung am häufigsten auf: Ein Automations-Bot besitzt Moderationsrechte, die er nie nutzt, oder eine Hilfsrolle behält Verwaltungsrechte, obwohl die Einrichtungsphase längst vorbei ist.

  • Prüfe, ob jedes hochwirksame Recht eine echte wiederkehrende Aufgabe unterstützt.
  • Behandle temporäre Einrichtungsrechte als Kandidaten für spätere Entfernung.
  • Kontrolliere Kanal-Überschreibungen separat, wenn das Bitfeld harmlos wirkt, der tatsächliche Zugriff aber trotzdem zu weit reicht.
  • Dokumentiere, warum Administrator oder andere Verwaltungsrechte aktiv bleiben sollen.

Zurück nach oben

FAQ

Warum wird aus einer Discord-Berechtigungszahl eine ganze Liste von Rechten?
Weil die Zahl mehrere Ein-Aus-Bits gleichzeitig speichert. Beim Dekodieren siehst du, welche Bits gesetzt sind.
Macht Administrator den Rest des Bitfelds irrelevant?
Nicht vollständig, aber Administrator verändert die praktische Wirkung vieler anderer Rechte. Deshalb sollte dieses Recht immer separat geprüft werden.
Kann eine Kanal-Überschreibung ein Recht aus dem Rollen-Bitfeld trotzdem blockieren?
Ja. Kanal-Überschreibungen bleiben relevant, daher ist das rohe Bitfeld nur ein Teil der endgültigen Zugriffsentscheidung.
Sollte ich Bot-Invite-Berechtigungen genauso prüfen wie Rollenrechte?
Ja. Das Prinzip ist gleich: Zahl dekodieren, mit der tatsächlichen Aufgabe vergleichen und alles entfernen, was nicht nötig ist.

Empfohlenes Tool nutzen

Bitfeld dekodieren oder aufbauen

Nutze den Rechner, wenn du zwischen verständlichen Berechtigungen und der rohen Zahl wechseln musst, die Discord intern verwendet.