1. 单点登录配置指南
专属集成平台
  • 快速开始
    • 集成平台概览
  • 身份与用户管理
    • 用户管理
      • 用户与组织架构管理
    • 角色管理
      • 角色管理配置说明
    • 属性管理
      • 属性管理配置说明
      • IDAAS 扩展物理字段使用说明
    • 上游身份数据集成
      • 通讯录身份集成概述
      • 集成连接器配置指南
        • 通讯录集成-泛微
        • 通讯录集成-飞书
        • 通讯录集成-企业微信
        • 通讯录集成-AD
        • 通讯录集成-睿人事
        • 通讯录集成-北森
        • 通讯录集成-SCIM
        • 通讯录集成-用友EHR
        • 通讯录集成-Azure AD
        • 通讯录集成-致远
        • 通讯录集成-LDAP
        • 通讯录集成-数据库
        • 通讯录集成-钉钉
          • 基础说明
          • 钉钉集成连接器如何配置属性映射
      • 通过连接流实现身份集成
        • 在连接流画布中完成身份集成配置
      • 身份集成常见问题
        • 常见问题 & 排错指南
    • 下游身份数据同步
      • 通讯录同步概述
      • 同步连接器配置指南
        • 通讯录同步-企业微信
        • 通讯录同步-AD
        • 通讯录同步-用友U8C
        • 通讯录同步-钉钉
          • 基础说明
          • 如何配置部门职位扩展字段
      • 通过连接流实现身份同步
        • 使用连接流实现身份下游同步
      • 身份同步常见问题
        • 常见问题 & 排错指南
        • 使用代理网关进行身份同步
  • 认证源管理
    • 认证源基础说明
      • 认证源选型说明
      • 认证源管理概述
    • 认证源配置指南
      • 基础协议配置
        • 认证源-CAS协议
        • 认证源-OIDC协议
        • 认证源-OAuth2协议
      • 三方认证源配置手册
        • 认证源-钉钉
        • 认证源-AD
        • 认证源-飞书
        • 认证源-LDAP
        • 认证源-微信
        • 认证源-微信公众号
        • 认证源-Google Workspace
        • 认证源-AD Azure
        • 认证源-美云智数
        • 认证源-企业微信
  • 应用管理
    • 基础说明
      • 应用管理概述
      • 应用创建与配置
    • 应用单点登录
      • 单点登录概述
      • 单点登录配置
      • 单点登出配置
      • 授权范围配置
      • 自定义集成单点登录配置说明
      • 应用密码代填
      • 应用网关
      • 单点登录配置指南
        • 单点登录-OIDC
        • 单点登录-SAML协议
        • 单点登录-OAuth2
        • 单点登录-CAS协议
        • 单点登录-钉钉SSO
        • 单点登录-分贝通
        • 单点登录-用友NCC
        • 单点登录-宜搭
        • 单点登录-泛微OA
        • 单点登录-致远OA
        • 单点登录-金蝶云星空
        • 单点登录-中国电子云邮箱
        • 单点登录-阿里云控制台(RAM)
        • 单点登录-纷享销客应用
        • 单点登录-纷享销客待办
        • 单点登录-Exchange
        • Exchange-双入口配置指南
    • 应用授权管理
      • 应用授权概述
      • 基于组织架构和用户授权
      • 基于角色授权(RBAC)
      • 基于用户属性授权(ABAC)
      • 用户自主申请应用(OA审批授权)权限
    • 应用分发
      • 企业应用分发
      • ABM应用分发
    • 使用应用调用集成平台 OPENAPI
      • M2M接口授权
      • 接口调用权限配置说明
  • 连接中心
    • 产品概述
      • 什么是 AI 连接流
      • AI 连接流的典型使用场景
    • 基础功能
      • 流程运行日志
      • 功能概览
      • 如何创建 AI 工作流
      • 授权凭证管理
      • 错误处理
    • 节点说明
      • 节点基础类型说明
      • 数据处理节点
        • 文本处理节点
        • 数组处理
        • 数据集合节点
      • 文件处理节点
        • 「Base64 转 URL」动作说明
        • 「PPT分页切割」动作说明
      • 应用节点
        • Teambition
        • 金蝶云 K3Cloud
      • 内置节点
        • 子流程调用
        • 缓存处理
        • 分支节点
        • 循环执行
        • MYSQL 触发动作说明
        • 数字签名
        • Webhook触发
        • 缓存列表处理
        • 条件分支
        • FTP
        • 延时节点
        • 模型子节点
        • MCP SERVER 工具
        • 邮件发送
        • 存储子节点
        • 工具子节点
        • HTTP 请求
        • 变量节点
        • 加解密节点
        • 返回变量
      • 运维管理节点
        • 数据校验节点
      • AI节点
        • 构建你的第一个 AI Agent
        • AI 浏览器操作节点
        • AI Agent节点使用指南
        • AI 消息对话节点 & 组件嵌入
  • 审计日志
    • 管理员行为日志
    • 用户变更日志
    • 接口调用日志
    • 用户行为日志
    • 消息发送日志
  • 权限中心
    • 管理员账号管理
    • 管理员角色管理
  • 品牌设置
    • 登录页设置
      • 登录页面配置
      • 登录页CSS自定义页面样式
      • CSS定制页面内容:样式修改指南及故障排除
    • 短信设置
      • 短信模板配置
      • 短信服务使用及签名修改使用指南
      • 短信服务-自定义连接流配置
      • 阿里云短信网关配置指引
    • 邮件设置
      • 邮件模板配置
      • 通过自定义连接流发送邮件
      • SMTP 配置与测试支持文档
    • 企业消息设置
      • 企业消息配置
      • 企业消息(钉钉_飞书)配置
    • 分发页面设置
      • 分发页面设置
  • 平台设置
    • 功能概述
    • 授权管理
    • 代理网关
    • 授权信息
    • 登录策略配置
      • 弱密码检测功能说明
      • 登录流程配置
      • 自动登录功能配置
    • MFA 配置
      • MFA基础配置
      • 使用连接流自定义 MFA 策略
    • 运维日志
      • 运维日志下载
  • 最佳实践
    • AD-LDAP接入指南
    • 第三方平台应用创建指南
      • 钉钉
        • 钉钉全套集成指南
        • 创建钉钉开放平台应用
      • 飞书
        • 飞书全套集成指南
        • 创建飞书开放平台应用
      • 企微
        • 企业微信全套集成指南
        • 创建企业微信开放平台应用
  • 开放接口
    • 鉴权认证
      • 获取access_token(请求体方式)
      • 获取access_token(Basic认证方式)
    • 用户管理
      • 查询用户
      • 创建用户
      • 根据多个条件过滤并查询用户信息
      • 根据用户帐号获取用户信息
      • 修改用户
      • 启用/禁用用户
      • 删除用户
      • 修改用户密码
    • 组织部门
      • 获取组/部门的列表
      • 创建组/部门
      • 根据组/部门ID获取组/部门的信息
      • 修改组/部门
      • 删除组/部门
      • 根据组/部门ID获取下级组/部门信息
      • 过滤部门信息
    • 角色管理
      • 创建角色
      • 获取单个角色详情
      • 修改角色
      • 删除角色
      • 查询角色列表
      • 根据应用ID和用户ID获取角色列表
      • 查看角色所对应的用户列表
      • 给多个用户添加静态角色
      • 删除用户静态角色
      • 获取用户的角色信息
    • 连接中心
      • Webhook启动连接流
    • 事件通知
      • 连接器事件通知
  1. 单点登录配置指南

Exchange-双入口配置指南

概述#

适用场景#

内网入口:访问 Exchange OWA/ECP,保留表单认证(FBA)
外网入口:经钉钉网关访问,跳转专属集成平台 → ADFS → Exchange,完成 SAML 登录
单服务器(如 MAIL01)上通过"两个 IIS 站点 + 两套虚拟目录"实现内外分流

目标拓扑与域名#

外网入口:https://mail01.digitalsee.co/owa(经钉钉网关对外发布,走 SAML/ADFS)
内网入口:http://mail-internal.digitalsee.co/owa(直连 Exchange,FBA)
可后续把内网入口升级为 HTTPS(绑定证书即可)

前置检查#

1
检查Exchange与ADFS状态
Get-ExchangeServer | ft Name,AdminDisplayVersion
Get-Service adfssrv | Select Name,Status
2
获取现有配置快照
Get-OwaVirtualDirectory | Select Identity,InternalUrl,ExternalUrl,AdfsAuthentication,FormsAuthentication,WindowsAuthentication | ft
Get-EcpVirtualDirectory | Select Identity,InternalUrl,ExternalUrl,AdfsAuthentication,FormsAuthentication,WindowsAuthentication | ft
Get-OrganizationConfig | Select AdfsIssuer,AdfsAudienceUris,AdfsSignCertificateThumbprints | fl

配置步骤#

步骤一:规划并配置内外 DNS#

1
配置DNS记录
外网入口:mail01.digitalsee.co → 钉钉网关公网地址(已有)
内网入口:mail-internal.digitalsee.co → MAIL01 内网 IP
2
临时hosts测试
临时在服务器本机追加 hosts(测试用):
Add-Content $env:SystemRoot\System32\drivers\etc\hosts "`r`n192.168.50.101`tmail-internal.digitalsee.co"
ipconfig /flushdns
3
正式DNS配置
正式在内网 DNS 服务器添加 A 记录:
Add-DnsServerResourceRecordA -Name "mail-internal" -ZoneName "digitalsee.co" -IPv4Address 192.168.50.101 -CreatePtr

步骤二:SPN(服务主体名称)#

确保 MAIL01 计算机帐户包含内网入口所需的 HTTP SPN:
setspn -S HTTP/mail-internal.digitalsee.co MAIL01$
:: 如需确认
setspn -L MAIL01$
说明:外网入口当前正常,无需额外变更。

步骤三:创建内网专用站点与虚拟目录(OWA/ECP)#

1
创建IIS站点
在 IIS 管理器中创建站点(或使用 appcmd):
%windir%\system32\inetsrv\appcmd add site /name:"OWA-Internal" /bindings:http/*:80:mail-internal.digitalsee.co /physicalPath:"C:\\inetpub\\wwwroot"
2
创建虚拟目录
使用 Exchange 管理 Shell 创建"被 Exchange 识别"的虚拟目录:
New-OwaVirtualDirectory -WebSiteName "OWA-Internal" -InternalUrl http://mail-internal.digitalsee.co/owa -ExternalUrl http://mail-internal.digitalsee.co/owa
New-EcpVirtualDirectory -WebSiteName "OWA-Internal" -InternalUrl http://mail-internal.digitalsee.co/ecp -ExternalUrl http://mail-internal.digitalsee.co/ecp
注意:如果之前在 IIS 手工建过 owa/ecp,需先删除再由上述命令创建,否则 Get-OwaVirtualDirectory 查不到。

步骤四:分别设置两套入口的认证方式#

内网入口(OWA-Internal)使用 FBA:
Set-OwaVirtualDirectory -Identity "MAIL01\owa (OWA-Internal)" -AdfsAuthentication:$false -FormsAuthentication:$true -WindowsAuthentication:$true -BasicAuthentication:$false
Set-EcpVirtualDirectory -Identity "MAIL01\ecp (OWA-Internal)" -AdfsAuthentication:$false -FormsAuthentication:$true -WindowsAuthentication:$false -BasicAuthentication:$false
外网入口(Default Web Site)仅使用 ADFS(避免与 Forms 混用):
Set-OwaVirtualDirectory -Identity "MAIL01\owa (Default Web Site)" -AdfsAuthentication:$true -FormsAuthentication:$false -WindowsAuthentication:$false -BasicAuthentication:$false
Set-EcpVirtualDirectory -Identity "MAIL01\ecp (Default Web Site)" -AdfsAuthentication:$true -FormsAuthentication:$false -WindowsAuthentication:$false -BasicAuthentication:$false
应用生效:
net stop was /y
net start w3svc

步骤五:配置 Exchange 组织级 ADFS 参数#

# 设置 ADFS 发行者(Issuer)
Set-OrganizationConfig -AdfsIssuer "https://ad09.digitalsee.co/adfs/ls/"

# 设置受众 URI(Audience)
Set-OrganizationConfig -AdfsAudienceUris @(
  "https://mail01.digitalsee.co/owa/", "https://mail01.digitalsee.co/owa",
  "https://mail01.digitalsee.co/ecp/", "https://mail01.digitalsee.co/ecp"
)

# 设置 ADFS 签名证书指纹(从 ADFS 服务器获取)
$adfsCert = Get-AdfsCertificate -CertificateType "Token-Signing"
Set-OrganizationConfig -AdfsSignCertificateThumbprints $adfsCert.Thumbprint

ADFS 受众 URI(如新增外网或内网域名时)#

若需要把新的服务域名纳入受众(Audience):
Set-OrganizationConfig -AdfsAudienceUris @(
  "https://mail01.digitalsee.co/owa/", "https://mail01.digitalsee.co/owa",
  "https://mail01.digitalsee.co/ecp/", "https://mail01.digitalsee.co/ecp",
  "https://mail.digitalsee.co/owa/",  "https://mail.digitalsee.co/owa",
  "https://mail.digitalsee.co/ecp/",  "https://mail.digitalsee.co/ecp"
)
同时在 ADFS 的信赖方中确保存在对应标识符(Identifier/Audience)。

验证#

1
配置结果核对
Get-OwaVirtualDirectory | Select Identity,InternalUrl,AdfsAuthentication,FormsAuthentication,WindowsAuthentication | ft
Get-EcpVirtualDirectory | Select Identity,InternalUrl,AdfsAuthentication,FormsAuthentication,WindowsAuthentication | ft
2
访问验证
# 内网入口应返回 302 到 /owa/auth/logon.aspx(表单)
Invoke-WebRequest http://mail-internal.digitalsee.co/owa/ -UseBasicParsing -MaximumRedirection 0

# 外网入口应 302 到 ADFS/IDaaS 登录页
Invoke-WebRequest https://mail01.digitalsee.co/owa/ -UseBasicParsing -MaximumRedirection 0

常见问题#

在 IIS 手工创建的 owa/ecp 目录 Exchange 不识别,需用 Exchange 命令 New-OwaVirtualDirectory/ New-EcpVirtualDirectory 创建
Get-Website 等 IIS 命令报找不到提供程序:请在"Windows PowerShell(管理员)"下安装并导入 WebAdministration,或使用 appcmd
DNS 未解析导致访问失败:先用 hosts 临时验证,再落地到内网 DNS
同时启用 ADFS 与 Forms 可能引起体验混淆,外网建议仅保留 ADFS

回滚与恢复#

1.
恢复单入口(仅 Default Web Site):
Remove-OwaVirtualDirectory -Identity "MAIL01\\owa (OWA-Internal)"
Remove-EcpVirtualDirectory -Identity "MAIL01\\ecp (OWA-Internal)"
%windir%\system32\inetsrv\appcmd delete site "OWA-Internal"
net stop was /y; net start w3svc
2.
恢复原认证(示例:默认站点恢复 FBA):
Set-OwaVirtualDirectory -Identity "MAIL01\owa (Default Web Site)" -AdfsAuthentication:$false -FormsAuthentication:$true -WindowsAuthentication:$false
Set-EcpVirtualDirectory -Identity "MAIL01\ecp (Default Web Site)" -AdfsAuthentication:$false -FormsAuthentication:$true -WindowsAuthentication:$false
net stop was /y; net start w3svc
修改于 2026-05-06 13:02:30
上一页
单点登录-Exchange
下一页
应用授权概述
Built with