Skip to content

Commit 4535818

Browse files
authored
Introduce trustedExtensionProtocolHandlers (microsoft#194304)
* remove url * use trustedExtensionProtocolHandlers
1 parent 3ff4f98 commit 4535818

File tree

10 files changed

+6
-153
lines changed

10 files changed

+6
-153
lines changed

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "code-oss-dev",
33
"version": "1.83.0",
4-
"distro": "7181d0c2e9094f4f9f90764e81ebac2443072cb7",
4+
"distro": "e61050c5d43d2c66a196fafaa2b78d4f2a8c929a",
55
"author": {
66
"name": "Microsoft Corporation"
77
},
@@ -231,4 +231,4 @@
231231
"optionalDependencies": {
232232
"windows-foreground-love": "0.5.0"
233233
}
234-
}
234+
}

src/vs/base/common/product.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -114,6 +114,7 @@ export interface IProductConfiguration {
114114
readonly languageExtensionTips?: readonly string[];
115115
readonly trustedExtensionUrlPublicKeys?: IStringDictionary<string[]>;
116116
readonly trustedExtensionAuthAccess?: readonly string[];
117+
readonly trustedExtensionProtocolHandlers?: readonly string[];
117118

118119
readonly commandPaletteSuggestedCommandIds?: string[];
119120

src/vs/code/electron-main/app.ts

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,6 @@ import { NativeParsedArgs } from 'vs/platform/environment/common/argv';
4141
import { IEnvironmentMainService } from 'vs/platform/environment/electron-main/environmentMainService';
4242
import { isLaunchedFromCli } from 'vs/platform/environment/node/argvHelper';
4343
import { getResolvedShellEnv } from 'vs/platform/shell/node/shellEnv';
44-
import { IExtensionUrlTrustService } from 'vs/platform/extensionManagement/common/extensionUrlTrust';
45-
import { ExtensionUrlTrustService } from 'vs/platform/extensionManagement/node/extensionUrlTrustService';
4644
import { IExtensionHostStarter, ipcExtensionHostStarterChannelName } from 'vs/platform/extensions/common/extensionHostStarter';
4745
import { ExtensionHostStarter } from 'vs/platform/extensions/electron-main/extensionHostStarter';
4846
import { IExternalTerminalMainService } from 'vs/platform/externalTerminal/electron-main/externalTerminal';
@@ -968,9 +966,6 @@ export class CodeApplication extends Disposable {
968966
// Menubar
969967
services.set(IMenubarMainService, new SyncDescriptor(MenubarMainService));
970968

971-
// Extension URL Trust
972-
services.set(IExtensionUrlTrustService, new SyncDescriptor(ExtensionUrlTrustService));
973-
974969
// Extension Host Starter
975970
services.set(IExtensionHostStarter, new SyncDescriptor(ExtensionHostStarter));
976971

@@ -1118,10 +1113,6 @@ export class CodeApplication extends Disposable {
11181113
const urlChannel = ProxyChannel.fromService(accessor.get(IURLService), disposables);
11191114
mainProcessElectronServer.registerChannel('url', urlChannel);
11201115

1121-
// Extension URL Trust
1122-
const extensionUrlTrustChannel = ProxyChannel.fromService(accessor.get(IExtensionUrlTrustService), disposables);
1123-
mainProcessElectronServer.registerChannel('extensionUrlTrust', extensionUrlTrustChannel);
1124-
11251116
// Webview Manager
11261117
const webviewChannel = ProxyChannel.fromService(accessor.get(IWebviewManagerService), disposables);
11271118
mainProcessElectronServer.registerChannel('webview', webviewChannel);

src/vs/platform/extensionManagement/common/extensionUrlTrust.ts

Lines changed: 0 additions & 13 deletions
This file was deleted.

src/vs/platform/extensionManagement/node/extensionUrlTrustService.ts

Lines changed: 0 additions & 97 deletions
This file was deleted.

src/vs/workbench/services/extensionManagement/browser/extensionUrlTrustService.ts

Lines changed: 0 additions & 18 deletions
This file was deleted.

src/vs/workbench/services/extensionManagement/electron-sandbox/extensionUrlTrustService.ts

Lines changed: 0 additions & 9 deletions
This file was deleted.

src/vs/workbench/services/extensions/browser/extensionUrlHandler.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,10 +26,10 @@ import { Action2, MenuId, registerAction2 } from 'vs/platform/actions/common/act
2626
import { IQuickInputService, IQuickPickItem } from 'vs/platform/quickinput/common/quickInput';
2727
import { IProgressService, ProgressLocation } from 'vs/platform/progress/common/progress';
2828
import { IsWebContext } from 'vs/platform/contextkey/common/contextkeys';
29-
import { IExtensionUrlTrustService } from 'vs/platform/extensionManagement/common/extensionUrlTrust';
3029
import { CancellationToken } from 'vs/base/common/cancellation';
3130

3231
import { ITelemetryService } from 'vs/platform/telemetry/common/telemetry';
32+
import { IProductService } from 'vs/platform/product/common/productService';
3333

3434
const FIVE_MINUTES = 5 * 60 * 1000;
3535
const THIRTY_SECONDS = 30 * 1000;
@@ -121,7 +121,7 @@ class ExtensionUrlHandler implements IExtensionUrlHandler, IURLHandler {
121121
@IConfigurationService private readonly configurationService: IConfigurationService,
122122
@IProgressService private readonly progressService: IProgressService,
123123
@ITelemetryService private readonly telemetryService: ITelemetryService,
124-
@IExtensionUrlTrustService private readonly extensionUrlTrustService: IExtensionUrlTrustService
124+
@IProductService private readonly productService: IProductService
125125
) {
126126
this.userTrustedExtensionsStorage = new UserTrustedExtensionIdStorage(storageService);
127127

@@ -166,7 +166,7 @@ class ExtensionUrlHandler implements IExtensionUrlHandler, IURLHandler {
166166
}
167167

168168
const trusted = options?.trusted
169-
|| (options?.originalUrl ? await this.extensionUrlTrustService.isExtensionUrlTrusted(extensionId, options.originalUrl) : false)
169+
|| this.productService.trustedExtensionProtocolHandlers?.includes(extensionId)
170170
|| this.didUserTrustExtension(ExtensionIdentifier.toKey(extensionId));
171171

172172
if (!trusted) {

src/vs/workbench/workbench.desktop.main.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,6 @@ import 'vs/workbench/services/keybinding/electron-sandbox/nativeKeyboardLayout';
5555
import 'vs/workbench/services/path/electron-sandbox/pathService';
5656
import 'vs/workbench/services/themes/electron-sandbox/nativeHostColorSchemeService';
5757
import 'vs/workbench/services/extensionManagement/electron-sandbox/extensionManagementService';
58-
import 'vs/workbench/services/extensionManagement/electron-sandbox/extensionUrlTrustService';
5958
import 'vs/workbench/services/encryption/electron-sandbox/encryptionService';
6059
import 'vs/workbench/services/secrets/electron-sandbox/secretStorageService';
6160
import 'vs/workbench/services/localization/electron-sandbox/languagePackService';

src/vs/workbench/workbench.web.main.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,6 @@ import 'vs/workbench/services/keybinding/browser/keyboardLayoutService';
4141
import 'vs/workbench/services/extensions/browser/extensionService';
4242
import 'vs/workbench/services/extensionManagement/browser/webExtensionsScannerService';
4343
import 'vs/workbench/services/extensionManagement/common/extensionManagementServerService';
44-
import 'vs/workbench/services/extensionManagement/browser/extensionUrlTrustService';
4544
import 'vs/workbench/services/telemetry/browser/telemetryService';
4645
import 'vs/workbench/services/url/browser/urlService';
4746
import 'vs/workbench/services/update/browser/updateService';

0 commit comments

Comments
 (0)