EASYBOT GUIDE
Discord Botの招待権限の選び方|必要最小限で安全に設定
OAuth2 URLでBotを招待する時の権限選択、管理者権限のリスク、チャンネル権限の確認方法を説明します。
Discord Botの招待権限は、Botがサーバー内で実行できる操作を決めます。動かすためだけにAdministratorを付けると影響範囲が大きいため、機能に必要な権限だけを選びます。
機能ごとに権限を決める
メッセージ送信、履歴閲覧、ロール管理など、機能ごとに必要な権限を洗い出します。Botが使わない権限は招待URLへ含めません。
- Botの機能一覧を作る
- 各機能に必要な権限を対応させる
- 管理者権限が本当に必要か再確認する
チャンネル権限を確認
サーバー権限を持っていても、チャンネル固有の上書き設定で操作が拒否される場合があります。Botのロール順序やカテゴリの権限も確認します。
- Botロールが対象チャンネルにアクセスできるか見る
- ロール階層と管理対象ロールの順序を確認する
- カテゴリから同期された権限を確認する
招待URLを検証
OAuth2のScopesでbotやapplications.commandsを選び、権限値を確認します。意図しない権限を含むURLを第三者が配布していないか注意します。
- Developer PortalのOAuth2 URL Generatorを使う
- 必要なScopesだけ選択する
- 実際の招待確認画面で権限を読む
安全な運用
権限を増やす時は理由を記録し、不要になったら外します。Botを他のサーバーへ公開する場合は、管理者が権限を理解できる説明を用意します。
- 機能変更時に権限を見直す
- Botの操作を監査可能なログへ残す
- トークンや招待URLを公開場所へ貼らない