diff --git a/app/common/config-schemata.ts b/app/common/config-schemata.ts index e2db7b80f..7b3ad8dcb 100644 --- a/app/common/config-schemata.ts +++ b/app/common/config-schemata.ts @@ -41,4 +41,5 @@ export const configSchemata = { export const enterpriseConfigSchemata = { ...configSchemata, presetOrganizations: z.string().array(), + allowNtlmCredentialsForDomains: z.string().array(), }; diff --git a/app/main/index.ts b/app/main/index.ts index e04c59936..ac3508500 100644 --- a/app/main/index.ts +++ b/app/main/index.ts @@ -18,6 +18,7 @@ import * as remoteMain from "@electron/remote/main"; import windowStateKeeper from "electron-window-state"; import * as ConfigUtil from "../common/config-util.js"; +import * as EnterpriseUtil from "../common/enterprise-util.js"; import {bundlePath, bundleUrl, publicPath} from "../common/paths.js"; import * as t from "../common/translation-util.js"; import type {RendererMessage} from "../common/typed-ipc.js"; @@ -207,6 +208,14 @@ function createMainWindow(): BrowserWindow { const ses = session.fromPartition("persist:webviewsession"); ses.setUserAgent(`ZulipElectron/${app.getVersion()} ${ses.getUserAgent()}`); + const allowNtlmCredentialsForDomains = EnterpriseUtil.getConfigItem( + "allowNtlmCredentialsForDomains", + [], + ); + for (const domain of allowNtlmCredentialsForDomains) { + ses.allowNTLMCredentialsForDomains(domain); + } + function configureSpellChecker() { const enable = ConfigUtil.getConfigItem("enableSpellchecker", true); if (enable && process.platform !== "darwin") {