Discordの権限の整数:一つの数字に権限を格納する仕組み
権限の整数は、各二進数の桁がDiscordの一つの権限をオンまたはオフにする、一つの数字です。 ボットの招待リンクのpermissionsの後ろにある数字で(値8は管理者を意味します)、Discordとボットが、権限の一式を一つの値に格納できるようにします。
数字の仕組み
Discordには、チャンネルを見る、メッセージを送る、メンバーをBANするなど、数十の権限があります。それぞれは、固定の二の冪を持ちます。チャンネルを見るは1024、メッセージを送るは2048、メッセージの管理は8192、管理者は8です。権限を組み合わせるには、数字を足します。チャンネルを見ると、メッセージを送るを持つロールは、1024 + 2048 = 3072です。
すべての権限が独自のビットを使うので、二つの組み合わせが同じ合計になることはなく、その合計を正確な一覧に戻せます。
それを見る場所
- 招待リンク:
permissions=の値は、ボットを追加したときにボットのロールが得る権利を示します。OAuth2のスコープをご覧ください。 - ロールとチャンネルの上書き:Discordは、各ロールの権限と、各チャンネルの許可と拒否の一覧を、これらの数字として保存します。
- 開発者のツール:ボットは、メンバーが何かをしてよいかを確かめるために、その値を読みます。
オーナーにとっての意味
注意すべき権限が二つあります。管理者(8)は、すべてのチャンネルの上書きを迂回するので、それを持つロールは何でもできます。完全に信頼する人のためにとっておいてください。そして、ボットが大きな整数を求めたら、承認する前に解読してください。読めない数字には、そのボットが必要としないメンバーのBANやWebhookの管理が含まれているかもしれないからです。権限の計算ツールは、チェックボックスを数字に、数字をチェックボックスに変換します。
ロールは、その位置によっても制限されます。権限を持っていても、自分より上のロールを管理できるわけではありません。ロールの階層をご覧ください。
権限とNoxyr
Noxyrは、管理者ではなく、決まった一覧の権利を求めます。それには、チケットや認証のための投稿、埋め込み、チャンネルとロールの管理、荒らし対策のための監査ログの表示、そして保護のモジュールのためのキック、BAN、タイムアウトが含まれます。権限のリファレンスに、それぞれと、それがないと何が壊れるかが示されています。多くの上書きがあるサーバーでは、管理者は依然として最も簡単な選択です。カテゴリの一つの拒否された上書きが、チケットの作成を止めることがあるからです。ただし、必須ではありません。
ボットに必要最小限だけを与えることの平易な説明は、ボットの最小権限の記事をお読みください。
手で読む
3072のような数字を取ります。収まる最大の権限の値(2048)を引き、次(1024)を引くと、ゼロが残ります。よって、メッセージを送るとチャンネルを見る、です。計算ツールは同じ計算を瞬時に行い、書き間違いを防ぎます。
よくある質問
権限の値8は、何を意味しますか?
値8は管理者の権限です。それを付けて招待されたボットは、サーバーのすべての権利を得ます。
権限の数字を一覧に変えるにはどうすればよいですか?
権限の計算ツールを使ってください。どんな数字も、それに含まれる個々の権限に解読します。
Noxyrには管理者が必要ですか?
いいえ。その招待は決まった権限の一覧を使います。管理者は、多くのチャンネルの上書きがあるサーバーで最も簡単な選択肢にすぎません。