エンタープライズ サポート
Visual Studio Code は、あらゆる規模のエンタープライズ チームの開発ツールとして使用できます。IT 管理者は、組織全体で一貫性と互換性を実現するために VS Code を構成できます。
ネットワーク: 一般的なホスト名
VS Code 内の一部の機能 (自動更新メカニズム、拡張機能のクエリとインストール、テレメトリなど) は、動作するためにネットワーク通信が必要です。これらの機能がプロキシ環境で適切に動作するためには、製品が正しく構成されている必要があります。
必要なドメインについては、ネットワークの一般的なホスト名リストを参照してください。
許可される拡張機能の構成
インストールできる拡張機能を制御するには、VS Code でアプリケーション全体の extensions.allowed
設定を構成します。設定が構成されていない場合、すべての拡張機能が許可されます。設定が構成されている場合、リストにないすべての拡張機能はインストールがブロックされます。既にインストールされている拡張機能またはバージョンをブロックすると、拡張機能は無効になります。
組織で許可される拡張機能を一元管理するには、Windows グループ ポリシーなどのデバイス管理を使用して、個々のデバイス上の VS Code 設定をオーバーライドするポリシーを作成します。
許可される拡張機能のサポートは、VS Code バージョン 1.96 以降で使用できます。
extensions.allowed
設定には、許可またはブロックされる拡張機能を決定する拡張機能セレクターのリストが含まれています。次のタイプの拡張機能セレクターを指定できます。
- パブリッシャーからのすべての拡張機能を許可またはブロックする
- 特定の拡張機能を許可またはブロックする
- 特定の拡張機能バージョンを許可する
- 特定の拡張機能バージョンとプラットフォームを許可する
- 拡張機能の安定版のみを許可する
- パブリッシャーからの安定版拡張機能のみを許可する
次の JSON スニペットは、さまざまな extensions.allowed
設定値の例を示しています。
"extensions.allowed": {
// Allow all extensions from the 'microsoft' publisher. If the key does not have a '.', it means it is a publisher ID.
"microsoft": true,
// Allow all extensions from the 'github' publisher
"github": true,
// Allow prettier extension
"esbenp.prettier-vscode": true,
// Do not allow docker extension
"ms-azuretools.vscode-docker": false,
// Allow only version 3.0.0 of the eslint extension
"dbaeumer.vscode-eslint": ["3.0.0"],
// Allow multiple versions of the figma extension
"figma.figma-vscode-extension": ["3.0.0", "4.2.3", "4.1.2"],
// Allow version 5.0.0 of the rust extension on Windows and macOS
"rust-lang.rust-analyzer": ["5.0.0@win32-x64", "5.0.0@darwin-x64"],
// Allow only stable versions of the GitHub Pull Requests extension
"github.vscode-pull-request-github": "stable",
// Allow only stable versions from redhat publisher
"redhat": "stable",
}
パブリッシャー ID でパブリッシャーを指定します。キーにピリオド (.
) がない場合、パブリッシャー ID と見なされます。キーにピリオドがある場合、拡張機能 ID と見なされます。現在、ワイルドカードの使用はサポートされていません。
microsoft
をパブリッシャー ID として使用して、パブリッシャー ID が異なる場合でも、Microsoft が発行するすべての拡張機能を指すことができます。
バージョン範囲はサポートされていません。拡張機能の複数のバージョンを許可する場合は、各バージョンを個別に指定する必要があります。プラットフォームによってバージョンをさらに制限するには、@
記号を使用してプラットフォームを指定します。たとえば、"rust-lang.rust-analyzer": ["5.0.0@win32-x64", "5.0.0@darwin-x64"]
のようにします。
セレクターがより具体的であるほど、優先順位が高くなります。たとえば、"microsoft": true
および "microsoft.cplusplus": false
は、C++ 拡張機能を除くすべての Microsoft 拡張機能を許可します。
重複するキー値はサポートされていません。たとえば、"microsoft": true
と "microsoft": false
の両方を含めると、無効なポリシーになります。
VS Code の拡張機能の詳細については、拡張機能のドキュメントを参照してください。
許可される拡張機能の一元管理
デバイス管理を使用して、組織でインストールが許可される拡張機能を一元的に制御します。AllowedExtensions
VS Code ポリシーを構成して、ユーザーのデバイス上の対応する extensions.allowed
VS Code 設定をオーバーライドします。このポリシーの値は、許可される拡張機能を含む JSON 文字列です。
ポリシー値に構文エラーがある場合、extensions.allowed
設定は適用されません。VS Code のウィンドウ ログでエラーを確認できます (⇧⌘P (Windows、Linux Ctrl+Shift+P) を押し、[ウィンドウ ログの表示] と入力します)。
自動更新の構成
update.mode
VS Code 設定は、新しいバージョンがリリースされたときに VS Code が自動的に更新されるかどうかを制御します。更新プログラムは、Microsoft オンライン サービスから取得されます。
設定には次のオプションがあります。
none
- 更新は無効になりますmanual
- 更新の自動チェックは無効になりますが、ユーザーは手動で更新をチェックできますstart
- VS Code の起動時にのみ更新をチェックし、更新の自動チェックは無効になりますdefault
- 更新の自動チェックが有効になり、バックグラウンドで定期的に実行されます
自動更新の一元管理
デバイス管理を使用して、組織内のデバイス全体で VS Code が更新プログラムを管理する方法を一元的に制御します。対応する update.mode
VS Code 設定をユーザーのデバイス上でオーバーライドする UpdateMode
VS Code ポリシーを構成します。このポリシーの値は、更新モードを含む文字列です。
テレメトリ レベルの構成
telemetry.telemetryLevel VS Code 設定は、VS Code テレメトリ、ファーストパーティ拡張機能テレメトリ、および参加しているサードパーティ拡張機能テレメトリを制御します。一部のサードパーティ拡張機能は、この設定を尊重しない場合があります。収集するデータの詳細をご覧ください。
all
- 使用状況データ、エラー、およびクラッシュ レポートを送信しますerror
- 一般的なエラー テレメトリとクラッシュ レポートを送信しますcrash
- OS レベルのクラッシュ レポートを送信しますoff
- すべての製品テレメトリを無効にします
テレメトリ レベルの一元管理
デバイス管理を使用して、組織内のデバイス全体でテレメトリ レベルを一元的に制御します。ユーザー デバイス上の対応する telemetry.telemetryLevel
VS Code 設定をオーバーライドする TelemetryLevel
VS Code ポリシーを構成します。このポリシーの値は、テレメトリ レベルを含む文字列です。
フィードバック メカニズムの構成
telemetry.feedback.enabled
VS Code 設定は、問題レポーターやアンケートなどのフィードバック メカニズムを有効にするかどうかを制御するブール値です。
フィードバック メカニズムの一元管理
デバイス管理を使用して、組織内のデバイス全体でフィードバック メカニズムを一元的に制御します。ユーザーのデバイス上の対応する telemetry.feedback.enabled
VS Code 設定をオーバーライドする EnableFeedback
VS Code ポリシーを構成します。このポリシーの値は、フィードバック メカニズムを有効にするか無効にするかを示すブール値です。
デバイス管理
デバイス管理ソリューションを通じて VS Code の特定の機能を制御して、組織のニーズを満たすようにすることができます。
VS Code は現在、管理者によって制御される次の機能をサポートしています。
ポリシー | 説明 | VS Code 設定 | 利用可能開始バージョン |
---|---|---|---|
AllowedExtensions |
インストールできる拡張機能を制御します。 | extensions.allowed |
1.96 |
UpdateMode |
新しいバージョンがリリースされたときに VS Code が自動的に更新されるかどうかを制御します。 | update.mode |
1.67 |
TelemetryLevel |
テレメトリ データのレベルを制御します | telemetry.telemetryLevel |
1.99 |
EnableFeedback |
問題レポーターやアンケートなどのフィードバック メカニズムを制御します | telemetry.feedback.enabled |
1.99 |
Windows のグループ ポリシー
VS Code は、Windows レジストリベースのグループ ポリシーをサポートしています。VS Code バージョン 1.69 以降、各リリースには、次のパス C:\Windows\PolicyDefinitions
に追加できる ADMX テンプレート ファイルを含む policies
ディレクトリが同梱されています。対応する adml
ファイルも C:\Windows\PolicyDefinitions\<your-locale>
ディレクトリにコピーしてください。
ポリシー定義がインストールされると、管理者はローカル グループ ポリシー エディターを使用してポリシー値を管理できます。
ポリシーは、コンピューター レベルとユーザー レベルの両方で設定できます。両方が設定されている場合、コンピューター レベルが優先されます。ポリシー値が設定されている場合、値はすべてのレベル (既定、ユーザー、ワークスペースなど) で構成された VS Code の設定値をオーバーライドします。
macOS の構成プロファイル
構成プロファイルは、macOS デバイスの設定を管理します。プロファイルは、使用可能なポリシーに対応するキーと値のペアを持つ XML ファイルです。これらのプロファイルは、モバイル デバイス管理 (MDM) ソリューションを使用して展開するか、手動でインストールできます。
VS Code バージョン 1.99 以降、各リリースにはサンプルの .mobileconfig
ファイルが同梱されています。このファイルは、Contents/Resources/app/policies
の下の .app
バンドル内にあります。テキスト エディターを使用して、組織の要件に合わせてポリシーを手動で編集または削除します。
.app
バンドルの内容を表示するには、Finder でアプリケーション (たとえば、/Applications/Visual Studio Code.app
) を右クリックし、[パッケージの内容を表示] を選択します。
文字列ポリシー
次の例は、AllowedExtensions
ポリシーの構成を示しています。ポリシー値は、サンプル ファイルでは空で始まります (拡張機能は許可されていません)。
<key>AllowedExtensions</key>
<string></string>
適切な JSON 文字列を <string>
タグの間に追加して、ポリシーを定義します。
<key>AllowedExtensions</key>
<string>{"microsoft": true, "github": true}</string>
UpdateMode
などの他のポリシーは、事前定義された値のセットからの文字列を受け入れます。
<key>UpdateMode</key>
<string>start</string>
ブール値ポリシー
ブール値ポリシーの値は、<true/>
または <false/>
で表されます。
<key>EnableFeedback</key>
<true/>
特定のポリシーを省略するには、.mobileconfig
ファイルからそのキーと値のペアを削除します。たとえば、更新モード ポリシーを適用しない場合は、UpdateMode
キーと、それに続く <string></string>
タグを削除します。
提供されている .mobileconfig
ファイルは、そのバージョンの VS Code で利用可能なすべてのポリシーを初期化します。不要なポリシーは削除してください。
サンプル .mobileconfig
からポリシーを編集または削除しない場合、そのポリシーは既定の (制限の厳しい) ポリシー値で適用されます。
構成プロファイルを手動でインストールするには、Finder で .mobileconfig
プロファイルをダブルクリックし、システム環境設定の [一般] > [デバイス管理] で有効にします。システム環境設定からプロファイルを削除すると、VS Code からポリシーが削除されます。
構成プロファイルの詳細については、Apple のドキュメントを参照してください。
追加ポリシー
目標は、現在の VS Code 設定をポリシーとして昇格させ、既存の設定に密接に従うことで、名前と動作の一貫性を保つことです。より多くのポリシーを制定する要求がある場合は、VS Code のGitHub リポジトリで問題を提起してください。チームは、目的の動作に対応する設定が既にあるかどうか、または目的の動作を制御するための新しい設定を作成する必要があるかどうかを判断します。
プリインストールされた拡張機能を使用して VS Code をセットアップする
プリインストールされた拡張機能のセット (ブートストラップ) を使用して VS Code をセットアップできます。この機能は、VS Code がプリインストールされており、特定の拡張機能がユーザーがすぐに利用できるマシン イメージ、仮想マシン、またはクラウド ワークステーションを準備する場合に役立ちます。
拡張機能のプリインストールのサポートは、現在 Windows でのみ利用可能です。
拡張機能をブートストラップするには、次の手順に従います。
-
VS Code インストール ディレクトリに
bootstrap\extensions
フォルダーを作成します。 -
プリインストールする拡張機能のVSIX ファイルをダウンロードし、
bootstrap\extensions
フォルダーに配置します。 -
ユーザーが VS Code を初めて起動すると、
bootstrap\extensions
フォルダー内のすべての拡張機能がバックグラウンドでサイレントにインストールされます。
ユーザーは、プリインストールされた拡張機能をアンインストールできます。拡張機能をアンインストールした後で VS Code を再起動しても、拡張機能は再インストールされません。
よく寄せられる質問
VS Code は Linux で構成プロファイルをサポートしていますか?
Linux のサポートはロードマップにありません。Linux での構成プロファイルに関心がある場合は、VS Code のGitHub リポジトリで問題を提起し、シナリオの詳細を共有してください。