Synology SSO Server配置DSM OIDC单点登录全指南(DSM 7.x适配,含元数据导入与故障解决)

在企业或团队管理多台Synology DSM设备时,员工需反复输入不同DSM账户密码登录,不仅降低工作效率,还增加密码泄露与遗忘风险。通过Synology SSO Server为DSM配置OIDC(OpenID Connect)单点登录,可实现“一次登录SSO Server,无缝访问多台DSM设备”,既通过集中身份管理简化操作,又能统一管控用户权限,提升NAS集群的安全性。但多数用户因不熟悉OIDC协议(IdP/客户端交互逻辑)、SSO Server的OIDC参数配置,或DSM客户端回调地址设置错误,导致出现“登录无响应”“令牌验证失败”“用户信息同步不全”等问题。本文基于Synology官方技术文档,从“前提准备→OIDC IdP配置(SSO Server)→OIDC客户端配置(DSM)→测试验证→故障解决”五大维度,手把手完成DSM与SSO Server的OIDC集成,覆盖DSM 7.x全版本,兼顾单DSM与多DSM集群场景。



一、前提准备:4大核心条件,奠定OIDC集成基础

OIDC单点登录对环境版本、权限、网络有严格要求,基础条件不满足会直接导致配置失败,需优先核查,确保后续步骤无卡点。


1. 环境与版本适配(必须达标,功能缺一不可)

OIDC功能仅在特定版本中支持,旧版本需升级后才能配置,具体要求如下表:

| 组件                | 版本要求                          | 说明                                  |

|---------------------|-----------------------------------|---------------------------------------|

| Synology DSM        | DSM 7.0及以上版本                 | DSM 6.2及以下无OIDC客户端功能,需通过“控制面板→更新和还原”升级 |

| Synology SSO Server | 2.1.0及以上版本                   | 从“套件中心→所有套件”搜索安装,安装后点击“更新”确保为最新版 |

| OIDC协议版本        | OpenID Connect 1.0                | SSO Server默认支持,无需额外配置协议版本 |

| 网络环境            | SSO Server与DSM在同一局域网/可互通 | 多DSM集群需确保所有DSM能访问SSO Server元数据地址 |


- 版本检查方法: 

- DSM版本:登录DSM→点击右上角“问号”图标→“关于DSM”,确认版本号(如DSM 7.2.1-69057 Update 4); 

- SSO Server版本:进入“套件中心→已安装”,找到“SSO Server”查看版本,低于2.1.0需点击“更新”。


2. OIDC基础认知:3分钟搞懂核心角色与流程

OIDC基于OAuth 2.0协议扩展,核心是“身份提供商(IdP)”与“客户端(Client)”的交互,避免后续配置时混淆概念:

- 身份提供商(IdP):由Synology SSO Server担任,负责验证用户身份(如核对DSM账户密码),并生成OIDC令牌(ID Token、Access Token); 

- 客户端(Client):由DSM担任,需向SSO Server发起身份验证请求,接收并验证IdP返回的令牌,完成登录; 

- 核心流程:DSM用户点击“OIDC登录”→跳转至SSO Server验证身份→SSO返回令牌→DSM验证令牌有效性→登录成功,全程无需重复输入密码。


3. 权限准备:2类关键管理员权限(缺一不可)

| 操作对象                | 所需权限                          | 获取方式                                  |

|-------------------------|-----------------------------------|-------------------------------------------|

| Synology SSO Server     | DSM超级管理员权限(如admin账户)  | 需具备“套件管理”“用户管理”“OIDC配置”权限,由NAS管理员分配 |

| DSM(客户端)           | DSM管理员权限(目标DSM设备)      | 需在目标DSM中登录管理员账户,才能配置OIDC客户端参数 |


4. 证书与元数据准备:确保通信安全(HTTPS必启用)

OIDC传输需加密,避免令牌被拦截篡改,需提前完成以下准备:

- HTTPS证书:SSO Server与DSM均需启用HTTPS,推荐使用第三方CA证书(如Let’s Encrypt),测试环境可使用Synology自签名证书; 

- 证书配置:DSM→“控制面板→安全→证书”→新增或导入证书,设为默认证书; 

- 元数据地址记录:SSO Server的OIDC元数据地址(自动生成),格式为`https://SSO_Server域名/sso/oidc/.well-known/openid-configuration`(如https://sso-nas.yourcompany.com/sso/oidc/.well-known/openid-configuration),后续DSM配置需导入该元数据。



二、核心步骤一:Synology SSO Server配置OIDC IdP与客户端

SSO Server作为OIDC IdP,需先启用OIDC服务、创建DSM专属OIDC客户端,为DSM提供身份验证接口,每一步需严格按格式配置,避免参数错误。


步骤1:打开SSO Server并启用OIDC服务

1. 登录部署SSO Server的DSM设备→在桌面找到“SSO Server”套件图标(蓝色盾牌标识),双击打开; 

2. 在左侧导航栏中,点击“OIDC”→“设置”; 

3. 在“OIDC设置”页面,勾选“启用OIDC服务”(默认可能已启用,确认状态为“已启用”); 

4. 确认“Issuer”字段(IdP标识),默认格式为`https://SSO_Server域名/sso/oidc`(无需修改,与元数据一致); 

5. 点击“保存”,OIDC服务生效(若已启用,直接进入下一步)。


步骤2:创建DSM专属OIDC客户端(核心环节,参数不能错)

1. 在“OIDC”页面,点击“客户端”→“创建”,进入OIDC客户端配置页面; 

2. 按以下要求填写客户端核心参数(错误会导致DSM无法发起请求): 


| 参数名称                | 配置要求                          | 示例值                                  |

|-------------------------|-----------------------------------|---------------------------------------|

| 客户端名称              | 自定义,便于识别(如“DSM-Office-01”) | 按DSM设备用途命名,多DSM集群需区分 |

| 客户端类型              | 选择“机密”(Confidential)    | DSM作为服务器端客户端,需密钥验证 |

| 授权方式                | 勾选“授权码”(Authorization Code) | OIDC推荐的安全授权方式,其他方式不选 |

| 回调地址(Redirect URI) | 格式:`https://DSM域名/oidc/callback` | 需替换为目标DSM的HTTPS域名,如https://dsm-office-01.yourcompany.com/oidc/callback |

| 允许的scope             | 必选3项:`openid`、`profile`、`email` | `openid`(必选,OIDC核心标识)、`profile`(获取用户名)、`email`(获取用户邮箱) |

| 令牌有效期              | 默认3600秒(1小时),无需修改      | 有效期过短需频繁重新登录,过长增加安全风险 |


3. 参数填写完成后,点击“创建”; 

4. 客户端创建成功后,系统会自动生成“客户端ID”和“客户端密钥”→立即复制这两个值到记事本(后续DSM配置需使用,密钥仅显示一次,关闭页面后无法重新查看)。



三、核心步骤二:DSM配置OIDC客户端(对接SSO Server)

目标DSM作为OIDC客户端,需导入SSO Server的OIDC元数据(或手动填写参数),关联已创建的OIDC客户端,实现与SSO的身份交互。


步骤1:进入DSM OIDC配置页面

1. 登录目标DSM设备(需配置OIDC登录的DSM)→打开“控制面板”→在“安全”分类下,点击“单点登录”; 

2. 在“单点登录”页面,点击“OIDC客户端”→“新增”,进入OIDC客户端配置页面。


步骤2:导入SSO Server OIDC元数据(推荐,减少手动错误)

1. 在“OIDC客户端配置”页面,选择“导入元数据”→“元数据URL”; 

2. 粘贴提前记录的SSO Server OIDC元数据地址(如https://sso-nas.yourcompany.com/sso/oidc/.well-known/openid-configuration); 

3. 点击“获取”,系统会自动解析元数据,填充“授权端点”“令牌端点”“JWT验证密钥端点”三个核心参数(无需手动输入,避免拼写错误); 

- 若提示“无法获取元数据”,检查网络是否能访问SSO Server,或元数据URL是否正确(如域名拼写、端口是否放行)。


步骤3:填写OIDC客户端关联参数(与SSO客户端匹配)

1. “客户端ID”:粘贴SSO Server中创建的“客户端ID”(如“client_123456abc”); 

2. “客户端密钥”:粘贴SSO Server中创建的“客户端密钥”(如“secret_789def”); 

3. “Scope”:默认已包含“openid profile email”,无需修改(需与SSO客户端配置的scope一致); 

4. “登录按钮名称”:自定义(如“SSO登录”,用户登录时显示的按钮名称,便于识别); 

5. 点击“测试连接”→系统会跳转至SSO Server登录页面,输入SSO管理员账户密码→若提示“连接成功”,说明参数配置正确; 

6. 点击“确定”→“应用”,DSM OIDC客户端配置生效。


步骤4:启用DSM OIDC登录(用户可选择登录方式)

1. 在“单点登录”页面,勾选“启用OIDC登录”; 

2. (可选)设置“默认登录方式”:若需优先显示OIDC登录,选择“OIDC登录”,否则选择“本地登录”(用户可手动切换); 

3. 点击“应用”,DSM OIDC登录功能正式启用。



四、测试验证:2类用户测试,确保登录与同步正常

配置完成后需通过管理员与普通用户测试,验证登录流程与用户信息同步是否正常,避免实际使用时出现故障。


1. 管理员测试(验证配置正确性)

1. 退出当前DSM登录状态→返回DSM登录页面; 

2. 登录页面会新增“SSO登录”按钮(自定义的登录按钮名称),点击该按钮; 

3. 自动跳转至Synology SSO Server登录页面→输入SSO管理员账户(如admin)和密码→点击“登录”; 

4. 登录成功后,自动跳转回DSM→若能正常进入DSM桌面,且右上角显示的用户名/邮箱与SSO账户一致,说明管理员测试通过。


2. 普通用户测试(验证权限与信息同步)

1. 在SSO Server所在的DSM中,创建1个普通用户(如“dsm-user1”)→分配“SSO访问权限”(控制面板→用户与群组→编辑用户→应用权限→SSO Server→勾选“使用”); 

2. 在目标DSM中,为“dsm-user1”分配基础权限(如“File Station使用权限”); 

3. 退出DSM管理员登录→使用“dsm-user1”通过“SSO登录”(步骤同管理员测试); 

4. 验证要点: 

- 能否正常登录DSM,且仅能访问已授权的服务(如File Station,无管理员权限); 

- 进入DSM“控制面板→用户与群组→dsm-user1→编辑”,确认“电子邮件”“用户名”与SSO Server中的用户信息一致。



五、常见问题解答:解决OIDC集成的5类高频故障

1. Q:DSM点击“SSO登录”后,跳转至SSO Server提示“无效的回调地址”,怎么办?

A:回调地址不匹配(SSO客户端与DSM配置不一致),解决步骤: 

1. 登录SSO Server→“OIDC→客户端”→找到对应DSM客户端→点击“编辑”; 

2. 检查“回调地址”是否与DSM OIDC配置的“Redirect URI”完全一致(含域名、HTTPS、路径,如https://dsm-office-01.yourcompany.com/oidc/callback); 

3. 若不一致,修改SSO客户端的回调地址,保存后重新在DSM中测试连接。


2. Q:DSM导入元数据时提示“元数据解析失败”,原因是什么?

A:元数据URL错误或网络不通,解决方法: 

1. 检查元数据URL格式:确保为`https://SSO域名/sso/oidc/.well-known/openid-configuration`,无多余斜杠或拼写错误; 

2. 测试网络连通性:在DSM中打开“控制面板→网络→诊断”→“ping测试”,输入SSO Server域名,若ping失败,需检查防火墙是否放行443端口(HTTPS); 

3. 手动填写参数:若元数据仍无法导入,选择“手动配置”,从SSO元数据页面(直接访问元数据URL)复制“authorization_endpoint”“token_endpoint”“jwks_uri”手动填入DSM。


3. Q:SSO登录成功,但DSM提示“令牌验证失败”,如何处理?

A:JWT密钥不匹配或令牌过期,解决步骤: 

1. 登录SSO Server→“OIDC→设置”→点击“刷新JWT验证密钥”→重新生成密钥; 

2. 在DSM OIDC客户端配置中,点击“重新获取”元数据,更新JWT验证密钥端点; 

3. 检查令牌有效期:SSO客户端配置中“令牌有效期”设为3600秒以上,避免短期过期; 

4. 清除浏览器缓存(Ctrl+Shift+Del),重新尝试登录。


4. Q:普通用户SSO登录后,DSM提示“无访问权限”,怎么办?

A:DSM未为用户分配基础权限,解决步骤: 

1. 登录目标DSM管理员账户→“控制面板→用户与群组”→找到SSO登录的普通用户(如dsm-user1); 

2. 点击“编辑”→“应用权限”→为用户分配需访问的服务(如“File Station”“Photo Station”),勾选“使用”权限; 

3. 保存后,用户重新SSO登录,即可正常访问授权服务。


5. Q:多DSM集群配置OIDC时,部分DSM无法连接SSO Server,原因是什么?

A:网络互通问题或SSO客户端未创建,解决方法: 

1. 检查多DSM是否在同一局域网,或是否能访问SSO Server域名(外部访问需配置端口转发); 

2. 为每台DSM创建独立OIDC客户端(SSO Server→“OIDC→客户端→创建”),回调地址填写对应DSM的域名,避免共用一个客户端; 

3. 确保所有DSM的OIDC客户端scope、授权方式与SSO配置一致。



六、总结与维护建议:确保OIDC SSO长期稳定

Synology SSO Server配置DSM OIDC的核心是“参数精准匹配+权限完整分配”——SSO客户端的回调地址、scope需与DSM OIDC配置完全一致,用户权限需在SSO与DSM两端同步分配,测试环节需覆盖不同权限用户,避免遗漏。


后续维护关键要点:

1. 证书定期更新:HTTPS证书过期前1个月,在SSO Server与DSM中更新证书,避免元数据传输失败; 

2. 客户端密钥轮换:每3个月在SSO Server中重置OIDC客户端密钥(编辑客户端→“重置密钥”),并同步更新至DSM OIDC配置; 

3. 日志排查:登录失败时,查看SSO Server日志(“SSO Server→日志→OIDC日志”)和DSM日志(“控制面板→日志中心→安全→登录”),定位错误原因(如“令牌过期”“scope缺失”); 

4. 版本同步:SSO Server与DSM需同步更新至最新版,修复已知的OIDC兼容性问题(如DSM 7.2修复了部分令牌验证BUG)。


若您在操作中遇到“SSO Server OIDC服务无法启用”“多DSM集群登录不同步”等问题,可参考Synology官方文档(https://kb.synology.cn/zh-cn/DSM/tutorial/set_up_oidc_for_dsm_in_sso_server)获取型号适配细节,或告诉我您的SSO Server版本与DSM集群数量,我帮您定制解决方案。


要不要我帮你整理一份Synology SSO-DSM OIDC配置checklist,包含前提确认清单、SSO客户端与DSM参数配置表、测试步骤及故障解决流程,方便你实操时逐点核对,避免遗漏关键环节?

Synology SSO Server配置DSM OIDC单点登录全指南(DSM 7.x适配,含元数据导入与故障解决)

新闻中心

联系我们

技术支持

  • ·

    Synology 无法访问共享文...

  • ·

    Synology NAS Win...

  • ·

    如何用 DiXiM Media ...

  • ·

    Synology DSM常规设置...

  • ·

    Active Backup fo...

  • ·

    Synology NAS打开Of...

  • ·

    Synology Migrati...

  • ·

    Synology Office多...

相关文章

地址:北京市海淀区白家疃尚品园             1号楼225

北京群晖时代科技有限公司

微信咨询