サーバーで管理される展開では、エンタープライズ チームのメンバーシップに基づいてユーザーのグループに異なるガバナンス設定を適用するように、エンタープライズの managed-settings.json ファイルを構成できます。 企業は、すべての設定を中央の場所で定義し、チーム メンバーシップによって、特定の値のセットを受け取るユーザーが決定されます。
**
managed-settings.json ファイルをまだ作成していない場合は、エンタープライズ管理設定を使い始める を参照してください。**
チームのオーバーライドの対象となるキーを作成するには、managed-settings.jsonでoverridableとしてマークします。 オーバーライド可能なキーは、設定時にチームの値を使用するか、チームが設定を解除したときにエンタープライズの既定値にフォールバックします。
サポートされているキー
{ "overridable": <VALUE> }構文は、model、permissions.disableBypassPermissionsMode、permissions.deny、permissions.ask、permissions.allow、allowedMcpServers、およびdeniedMcpServersキーに適用されます。
enabledPlugins と extraKnownMarketplaces は追加的に動作します。 エンタープライズ managed-settings.json はベースラインを設定します。エンタープライズ チーム ファイルでは、その上にプラグインとマーケットプレースを追加できます。
これらのキーとその構文の詳細については、 エンタープライズ管理設定 を参照してください。
特定のチームの設定の上書き
これらの手順は、サーバーで管理されるデプロイ (managed-settings.jsonでホストされているGitHub) に適用されます。 その他の展開方法では、エンタープライズ チームのオーバーライドがサポートされていないため、MDM プラットフォームを介して異なる設定を異なるユーザー グループに展開する必要があります。
copilot/team-mappings.jsonと copilot/teams/ ディレクトリを使用して、既定のcopilot/managed-settings.json値とは異なる設定を使用するエンタープライズ チームを構成します。
このセクションを完了すると、 .github-private リポジトリの構造は次のようになります。
.github-private/copilot/
managed-settings.json
**: { "model": { "overridable": "auto" } }
* **
team-mappings.json
**: { "no-auto.json": ["special-team"] }
* teams/
* **
no-auto.json
**: { "model": "unmanaged" }
Steps
-
エンタープライズの
copilot/managed-settings.jsonファイルで、{ "overridable": <VALUE> }構文を使用してオーバーライドの対象にする各キーをマークします。 チームにマップするjsonファイルは、オーバーライド可能としてマークしたキーに対してのみ異なる値を送信できます。
managed-settings.jsonで指定したoverridable値は、チーム ファイルが特定のキーに対して異なる値を宣言しない場合の既定値です。
たとえば、 model、 disableBypassPermissionsMode、 allowedMcpServers をチームに延期するには、次のようにします。
```json
{
"model": { "overridable": "auto" },
"permissions": {
"disableBypassPermissionsMode": { "overridable": "disable" }
},
"allowedMcpServers": {
"overridable": [
{ "serverUrl": "https://mcp.company.com/*" }
]
}
}
```
-
企業の
.github-privateリポジトリで、copilot/team-mappings.jsonを作成します。 各チーム設定ファイルを、1つ以上のエンタープライズチームスラッグに関連付けます。 キーは設定ファイル名であり、値はチーム スラッグの配列であるため、複数のチームに 1 つのファイルを適用できます。{ "devs.json": ["developers-all", "finops-dev"], "ai-users.json": ["ai-baseline-trained"], "frontier.json": ["ai-pioneers"] } -
copilot/teams/の下にチーム設定ファイルを作成します。 オーバーライド可能としてマークしたキーに加えて、追加キーのenabledPluginsとextraKnownMarketplacesを含めることができます。 その他のすべてのキーは、エンタープライズの既定値によって管理されます。{ "model": "unmanaged", "permissions": { "disableBypassPermissionsMode": "unmanaged" }, "allowedMcpServers": [ { "serverUrl": "https://team-specific-mcp.company.com/*" } ] } -
変更をコミットして既定のブランチにプッシュします。
GitHub は、エンタープライズ チームのメンバーシップを評価し、各ユーザーに一致する設定を適用します。 ユーザーが複数のチームに属している場合、チーム ファイルは各キーの最も制限の厳しい値を使用して結合され、エンタープライズ設定の下に適用され、プラットフォームの決定が常に優先されます。