VS Code(Visual Studio Code)v1.57へバージョンアップ時の制限モード(Workspace Trust)のダイアログの対処

VS Code(Visual Studio Code)をv1.57へバージョンアップしたタイミングで
プロジェクトを信頼するかどうか(制限モードを利用)のダイアログについてメモしました。
経緯
VS Codeをアップデートした際にダイアログが表示され「No」を選択したところ
制限モードとなりできることが限定されてしまったためです。
環境
Visual Studio Code 2021 1.57
アップデート時のメッセージ
アップデート時に下記のメッセージが表示されました。
メッセージの内容原文
vbnetDo you trust the authors of the files in this folder?
Code provides features that may automatically execute files in this folder.
If you don't trust the authors of these files, we recommend to continue in restricted mode as the files may be malicious. See our docs to learn more.
メッセージの意味
開いたプロジェクトを信頼するかどうかのダイアログになります。
VS Codeでは他の人が作成したプログラムが実行される仕組みがあり、気付かぬうちに勝手に実行されてしまうことで不利益を被る可能性があります。
そのためプロジェクト自体が**信頼できる(Yes)か信頼できない(No)**かどうかの確認を求められています。
確認の回答
Yesと回答すると通常通りプロジェクトが起動します。
Noと回答すると制限モードでプロジェクトが起動します。
制限モードとは
ワークスペースの機能を一部無効化することのできる機能です。 タスク、デバッグ、ワークスペース設定、拡張機能など、いくつかのVS Code機能の操作を無効化や制限をすることによりコードの自動実行を防止します。
それぞれの制限
タスク
タスクはスクリプトとツールバイナリを実行できます。
タスク定義はワークスペースの.vscode
フォルダーで定義されているためリポジトリのソースとして管理するケースがあります。
その場合悪意のある人が作成したタスクがリポジトリへコミットされてしまった場合、知らないうちに実行する可能性があります。
そのため制限付きモードではタスクの実行は無効になります。
デバッグ
タスクの実行と同様に、デバッグ拡張機能は、デバッグセッションの起動時にデバッガーバイナリを実行できます。
そのため制限付きモードではデバッグは無効になります。
ワークスペース設定
ワークスペース設定はタスク同様に.vscode
配下のworkspace
のルートにあるフォルダーに保存されるため
悪意のある人悪意のあるコードを指すように設定すると、損傷を与える可能性があります。
そのため制限付きモードでは一部のワークスペース設定は無効になります。
拡張機能 拡張機能はユーザーに代わってコードを実行し害を及ぼす可能性があります。 そして一部の拡張機能には予期しない実行可能ファイルを実行するように構成されている場合に悪意を持って動作する可能性のある設定があります。
そのため制限付きモードではワークスペーストラストを明示的にオプトインしていない拡張機能は無効になります。
制限モードの切り替え
制限モードの切り替えは左下の歯車の設定から実施できます。
Manage Workspace Trustを開く
設定 > Manage Workspace Trust(ワークスペースの信頼を管理)
切り替え手順
信頼を取り消す場合とワークスペースを信頼する場合それぞれ下記の手順で実施します。
信頼を取り消す
Trusted Folders & workspaceの一覧から取り消したいプロジェクトの右側の×をクリック
ワークスペースを信頼する
Trusted Folders & workspaceの左下のAdd Folerから対象のディレクトリを開く
新規プロジェクト
ダイアログからYes, Itrust the authorsをクリック
参考文献
Visual Studio Code Workspace Trust security
- article
Copilot×Cursorでプラグインがぶつかる!VSCode拡張競合エラーの見分け方と対策集
- article
VSCode で快適に使う ESLint 拡張機能ガイド
- article
VSCodeで開発時のインポート補完(TypeScript)を相対パスからエイリアスにする設定
- article
Next.js のTypeScriptプロジェクトへeslint、stylelint、prittierを導入してVSCodeで自動フォーマットするまでの手順
- article
VS Code(Visual Studio Code)v1.57へバージョンアップ時の制限モード(Workspace Trust)のダイアログの対処
- review
ついに語られた業界の裏側!『フジテレビの正体』堀江貴文が描くテレビ局の本当の姿
- review
愛する勇気を持てば人生が変わる!『幸せになる勇気』岸見一郎・古賀史健のアドラー実践編で真の幸福を手に入れる
- review
週末を変えれば年収も変わる!『世界の一流は「休日」に何をしているのか』越川慎司の一流週末メソッド
- review
新しい自分に会いに行こう!『自分の変え方』村岡大樹の認知科学コーチングで人生リセット
- review
科学革命から AI 時代へ!『サピエンス全史 下巻』ユヴァル・ノア・ハラリが予見する人類の未来
- review
人類はなぜ地球を支配できた?『サピエンス全史 上巻』ユヴァル・ノア・ハラリが解き明かす驚愕の真実