アクセスグループは、一度定義してチャネル許可リストからDocumentation Index
Fetch the complete documentation index at: https://docs2.openclaw.ai/llms.txt
Use this file to discover all available pages before exploring further.
accessGroup:<name> で参照する、名前付きの送信者リストです。
同じ人たちを複数のメッセージチャネルで許可したい場合や、信頼済みの 1 つの集合を DM とグループ送信者認可の両方に適用したい場合に使用します。
アクセスグループは、それ自体ではアクセスを付与しません。グループが意味を持つのは、許可リストフィールドがそれを参照している場合だけです。
静的メッセージ送信者グループ
静的送信者グループはtype: "message.senders" を使用します。
| キー | 意味 |
|---|---|
"*" | グループを参照するすべてのメッセージチャネルでチェックされる共有エントリ。 |
discord | Discord の許可リスト照合でのみチェックされるエントリ。 |
telegram | Telegram の許可リスト照合でのみチェックされるエントリ。 |
whatsapp | WhatsApp の許可リスト照合でのみチェックされるエントリ。 |
allowFrom ルールで照合されます。OpenClaw はチャネル間で送信者 ID を変換しません。Alice に Telegram ID と Discord ID がある場合は、該当するキーの下に両方の ID を列挙してください。
許可リストからグループを参照する
メッセージチャネルパスが送信者許可リストをサポートする場所ならどこでも、accessGroup:<name> でグループを参照します。
DM 許可リストの例:
サポートされるメッセージチャネルパス
アクセスグループは、共有メッセージチャネル認可パスで利用できます。たとえば次のものが含まれます。channels.<channel>.allowFromなどの DM 送信者許可リストchannels.<channel>.groupAllowFromなどのグループ送信者許可リスト- 同じ送信者照合ルールを使用する、チャネル固有のルーム単位の送信者許可リスト
- メッセージチャネル送信者許可リストを再利用するコマンド認可パス
message.senders グループはチャネルに依存しないように設計されているため、新しいメッセージチャネルは、カスタムの許可リスト展開ではなく共有 Plugin SDK ヘルパーを使用することで、それらをサポートする必要があります。
Plugin 診断
Plugin 作成者は、構造化されたアクセスグループ状態を、フラットな許可リストへ展開し直さずに調査できます。allowFrom 配列を想定している互換性パスに限り、expandAllowFromWithAccessGroups(...) を使用してください。
Discord チャネルオーディエンス
Discord は動的アクセスグループ型もサポートします。discord.channelAudience は「現在このギルドチャネルを表示できる Discord DM 送信者を許可する」ことを意味します。OpenClaw は認可時に Discord 経由で送信者を解決し、Discord の ViewChannel 権限ルールを適用します。
#maintainers や #on-call のように、Discord チャネルがすでにチームの信頼できる情報源である場合に使用します。
要件と失敗時の挙動:
- ボットはギルドとチャネルにアクセスできる必要があります。
- ボットには Discord Developer Portal の Server Members Intent が必要です。
- Discord が
Missing Accessを返した場合、送信者をギルドメンバーとして解決できない場合、またはチャネルが別のギルドに属している場合、アクセスグループはフェイルクローズします。
セキュリティメモ
- アクセスグループは許可リストのエイリアスであり、ロールではありません。それ自体では、所有者を作成したり、ペアリング要求を承認したり、ツール権限を付与したりしません。
dmPolicy: "open"でも、有効な DM 許可リスト内に"*"が必要です。アクセスグループを参照することは、公開アクセスと同じではありません。- 存在しないグループ名はフェイルクローズします。
allowFromにaccessGroup:operatorsが含まれていて、accessGroups.operatorsが存在しない場合、そのエントリは誰も認可しません。 - チャネル ID は安定させてください。チャネルが表示名と数値/ユーザー ID の両方をサポートする場合は、表示名よりも数値/ユーザー ID を優先してください。
トラブルシューティング
送信者が一致するはずなのにブロックされる場合:- 許可リストフィールドに正確な
accessGroup:<name>参照が含まれていることを確認します。 accessGroups.<name>.typeが正しいことを確認します。- 送信者 ID が一致するチャネルキーの下、または
"*"の下に列挙されていることを確認します。 - エントリがそのチャネルの通常の許可リスト構文を使用していることを確認します。
- Discord チャネルオーディエンスについては、ボットがギルドチャネルを表示でき、Server Members Intent が有効になっていることを確認します。
openclaw doctor を実行してください。ランタイム前に、多くの無効な許可リストとポリシーの組み合わせを検出できます。