Discord-Berechtigungs-Integer: Wie eine Zahl Rechte speichert
Der Berechtigungs-Integer ist eine einzige Zahl, in der jede Binärstelle eine Discord-Berechtigung ein- oder ausschaltet. Er steht nach permissions in einem Bot-Einladungslink, und der Wert 8 bedeutet Administrator. So können Discord und Bots eine ganze Berechtigungsgruppe in einem einzigen Wert speichern.
So funktioniert die Zahl
Discord hat Dutzende Berechtigungen, etwa Kanäle ansehen, Nachrichten senden oder Mitglieder bannen. Jede hat eine feste Zweierpotenz. Kanäle ansehen ist 1024, Nachrichten senden ist 2048, Nachrichten verwalten ist 8192 und Administrator ist 8. Um Berechtigungen zu kombinieren, addierst du die Zahlen. Eine Rolle mit Kanäle ansehen und Nachrichten senden hat 1024 + 2048 = 3072.
Da jede Berechtigung ihr eigenes Bit hat, ergibt keine Kombination dieselbe Summe. Deshalb lässt sich die Summe wieder in die genaue Liste zurückverwandeln.
Wo du sie siehst
- Einladungslinks: der Wert
permissions=legt fest, welche Rechte die Rolle des Bots beim Hinzufügen erhält. Siehe OAuth2-Scopes. - Rollen und Kanal-Überschreibungen: Discord speichert die Berechtigungen jeder Rolle und die Erlauben- und Verbieten-Listen jedes Kanals als solche Zahlen.
- Entwicklerwerkzeuge: Bots lesen den Wert, um zu prüfen, ob ein Mitglied etwas tun darf.
Warum es für Besitzer wichtig ist
Zwei Berechtigungen verdienen Sorgfalt. Administrator (8) umgeht jede Kanal-Überschreibung, eine Rolle mit diesem Recht kann also alles. Behalte es für Leute, denen du voll vertraust. Und wenn ein Bot eine große Zahl verlangt, dekodiere sie, bevor du zustimmst. Eine Zahl, die du nicht lesen kannst, könnte Mitglieder bannen oder Webhooks verwalten enthalten, was der Bot nicht braucht. Der Berechtigungsrechner wandelt Häkchen in eine Zahl um und eine Zahl zurück in Häkchen.
Auch Rollen sind durch ihre Position begrenzt. Eine Berechtigung zu haben erlaubt einer Rolle nicht, Rollen über ihr zu verwalten, siehe Rollenhierarchie.
Berechtigungen und Noxyr
Noxyr fragt eine feste Liste von Rechten an, nicht Administrator. Dazu gehören Posten und Einbetten, Verwalten von Kanälen und Rollen für Tickets und Verifizierung, Ansehen des Audit-Logs für Anti-Nuke sowie Kicken, Bannen und Timeout für seine Schutzmodule. Die Berechtigungsreferenz zeigt jedes Recht und was ohne es nicht funktioniert. Administrator ist auf Servern mit vielen Kanal-Überschreibungen trotzdem die einfachste Wahl, weil eine verbotene Überschreibung einer Kategorie die Ticket-Erstellung stoppen kann. Vorgeschrieben ist es aber nicht.
Eine einfache Erklärung, wie du einem Bot gerade genug gibst, findest du im Artikel Least Privilege für Bots.
Eine Zahl von Hand lesen
Nimm eine Zahl wie 3072. Ziehe die größte Berechtigung ab, die hineinpasst (2048), dann die nächste (1024). Übrig bleibt null, also sind es Nachrichten senden und Kanäle ansehen. Der Rechner erledigt dieselbe Rechnung sofort und vermeidet Fehler.
Häufige Fragen
Was bedeutet der Berechtigungswert 8?
Der Wert 8 ist die Berechtigung Administrator. Ein Bot, der mit ihr eingeladen wird, erhält jedes Recht auf dem Server.
Wie wandle ich eine Berechtigungszahl in eine Liste um?
Nutze den Berechtigungsrechner. Er zerlegt jede Zahl in die einzelnen Berechtigungen, die darin stecken.
Braucht Noxyr Administrator?
Nein. Der Einladungslink verwendet eine feste Liste von Berechtigungen. Administrator ist nur die einfachste Option auf Servern mit vielen Kanal-Überschreibungen.