You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在BizTalk 2020中创建并部署SSO应用

BizTalk 2020 SSO 应用部署与调用方案

部署实现路径

你可以根据团队技术栈选择以下两种方案中的任意一种:

  • 复用原有BTDF逻辑:BTDF已经支持BizTalk 2020,无需完全替换原有部署体系。只需要在VSTS构建代理上安装适配BizTalk 2020的BTDF版本,修改项目中.btdfproj文件的TargetBizTalkVersion节点值为2020,原有SSO应用的配置规则完全可以沿用,直接把BTDF的构建、部署命令嵌入VSTS流水线步骤即可。
  • 原生PowerShell脚本实现:如果要完全弃用BTDF使用BizTalk原生能力,可直接调用SSO官方公开的管理接口编写PowerShell脚本,完成SSO应用创建、配置写入操作,将脚本作为VSTS部署环节的执行步骤即可,多环境的配置参数可以存储在VSTS的环境变量库中,不同环境部署时自动拉取对应值注入脚本。

核心操作示例

SSO 应用创建与配置写入PowerShell脚本示例

# 加载SSO客户端程序集
Add-Type -Path "C:\Program Files\Common Files\Enterprise Single Sign-On\Microsoft.BizTalk.Interop.SSOClient.dll"
$ssoConfigStore = New-Object Microsoft.BizTalk.Interop.SSOClient.ISSOConfigStore
# 新建SSO应用,ENV_TYPE为VSTS注入的环境标识,比如Dev/UAT/Prod
$appName = "你的业务应用名_$env:ENV_TYPE"
$ssoConfigStore.CreateApplication($appName, "业务应用配置存储", [Microsoft.BizTalk.Interop.SSOClient.SSO_FLAG_APP_ALLOW_USERS], 2, "配置项名", "配置项值")
# 写入多组配置值,所有变量均从VSTS环境变量库读取
$configKeys = @("ApiEndpoint", "DbConnectionStr", "Timeout")
$configValues = @($env:API_ENDPOINT, $env:DB_CONN_STR, $env:TIMEOUT)
$ssoConfigStore.SetConfigInfo($appName, "Default", $configKeys, $configValues)

Orchestration 读取SSO变量实现

  • 原有BizTalk 2013 R2版本中读取SSO的代码逻辑可完全复用,BizTalk 2020的SSO接口完全向下兼容,无需调整核心逻辑,只需要确保Orchestration引用的Microsoft.BizTalk.Interop.SSOClient程序集版本对应BizTalk 2020的运行时版本即可。
  • 也可以封装通用SSO读取帮助类库,在所有Orchestration中统一调用,避免重复编码,多环境下只需要通过配置传入对应环境的SSO应用名即可自动读取对应配置。

多环境部署注意事项

  • 不同环境的SSO应用名建议增加环境后缀区分,避免跨环境配置串扰,敏感配置值建议存储在VSTS的机密变量库中,部署过程中不会明文输出到日志,保障信息安全。
  • VSTS部署代理的运行账号需要提前授予SSO管理员权限,确保脚本执行时有权限调用SSO接口创建应用、写入配置。
  • 部署前可新增校验步骤,判断对应SSO应用是否已存在,存在则调用更新接口,不存在则走创建逻辑,避免重复创建报错。

内容的提问来源于stack exchange,提问作者Parveen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.09 00:12:00