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
中。