4.2. Microsoft Visual Studio Code の信頼できる拡張機能の設定
Microsoft Visual Studio Code の product.json
ファイル内の trustedExtensionAuthAccess
フィールドを使用して、認証トークンにアクセスするために信頼される拡張機能を指定できます。
"trustedExtensionAuthAccess": [ "<publisher1>.<extension1>", "<publisher2>.<extension2>" ]
これは、GitHub、Microsoft、または OAuth を必要とするその他のサービスへのアクセスを必要とする拡張機能がある場合に特に便利です。このフィールドに拡張 ID を追加すると、これらのトークンにアクセスするパーミッションが付与されます。
変数は devfile または ConfigMap で定義できます。ニーズに合ったオプションを選択してください。ConfigMap を使用すると、変数はすべてのワークスペースに伝播されるため、使用している各 devfile に変数を追加する必要はありません。
誤用するとセキュリティー上のリスクにつながる可能性があるため、trustedExtensionAuthAccess
フィールドは注意して使用してください。信頼できる拡張機能にのみアクセスを許可します。
Microsoft Visual Studio Code エディターは che-code
イメージ内にバンドルされているため、ワークスペースの起動時にのみ product.json
ファイルを変更できます。
VSCODE_TRUSTED_EXTENSIONS 環境変数を定義します。devfile.yaml で変数を定義するか、代わりに変数を使用して ConfigMap をマウントするかを選択します。
devfile.yaml で VSCODE_TRUSTED_EXTENSIONS 環境変数を定義します。
env: - name: VSCODE_TRUSTED_EXTENSIONS value: "<publisher1>.<extension1>,<publisher2>.<extension2>"
VSCODE_TRUSTED_EXTENSIONS 環境変数を使用して ConfigMap をマウントします。
kind: ConfigMap apiVersion: v1 metadata: name: trusted-extensions labels: controller.devfile.io/mount-to-devworkspace: 'true' controller.devfile.io/watch-configmap: 'true' annotations: controller.devfile.io/mount-as: env data: VSCODE_TRUSTED_EXTENSIONS: '<publisher1>.<extension1>,<publisher2>.<extension2>'
検証
-
変数の値はワークスペースの起動時に解析され、対応する
trustedExtensionAuthAccess
セクションがproduct.json
に追加されます。