TeamViewer单点登录(SSO)旨在通过将TeamViewer与身份提供者和用户目录相连接来减少大公司的用户管理工作。
本文适用于具有Enterprise/Tensor许可证的TeamViewer客户。
要求
要使用TeamViewer单点登录,您需要
- TeamViewer版本13.2.1080或更新版本
- SAML 2.0兼容身份提供商(IdP)*
- TeamViewer帐户,用于访问管理控制台并添加域
- 访问您域的DNS管理以验证域所有权
- TeamViewer Tensor (Classic)许可证。
TeamViewer管理控制台(MCO)配置
使用此域的电子邮件地址为所有TeamViewer帐户在域级别激活单点登录(SSO)。激活后,登录相应TeamViewer帐户的所有用户都将重定向到已为域配置的身份提供程序。
出于安全原因和防止滥用,需要在激活功能之前验证域所有权。
添加新域名
要激活SSO,请登录TeamViewer 管理平台 (Management Console)并选择Single Sign-On菜单条目。单击添加域,然后输入要为其激活SSO的域。
您还需要为身份提供者提供元数据。有三种选择可供选择:
- 通过URL:在相应的字段中输入您的IdP元数据URL
- 通过XML:选择并上传您的元数据XML
- 手动配置:手动输入所有必要信息。请注意,公钥必须是Base64编码的字符串。
创建自定义标识符
添加域后,可以生成自定义标识符。 TeamViewer不存储此自定义标识符,但用于SSO的初始配置。它不能在任何时间点更改,因为这将打破单点登录并且需要新的设置。任何随机字符串都可以用作客户标识符。稍后需要此字符串来配置IdP。
验证域名所有权
成功添加域后,您需要验证域所有权。
在域验证完成之前,不会激活单点登录。
要验证域名,请使用验证页面上显示的值为您的域名创建新的TXT记录。
📌注意: 由于DNS系统,验证过程可能需要几个小时。
添加TXT记录的对话框可能类似于:
📌注意: 根据您的域管理系统,输入字段的描述可能有所不同。
创建新的TXT记录后,单击“开始验证”按钮开始验证过程。
📌请注意,由于DNS系统,验证过程可能需要几个小时。
💡提示: TeamViewer将在开始验证后24小时内查找TXT验证记录。如果我们在24小时内找不到TXT记录,则验证失败并且状态会相应更新。在这种情况下,您需要通过此对话框重新启动验证。
💡提示: 为单点登录添加域时,建议将拥有帐户添加到排除列表中。这样做的原因是即使IdP不工作,您仍然可以访问域配置。
示例:TeamViewer帐户“admin@example.com”为单点登录添加域“example.com”。添加域后,应将电子邮件地址“admin@example.com”添加到排除列表中。
💡提示:为单点登录添加域时,建议在SSO域中添加其他所有者,因为SSO所有权未在您的公司内部继承。
示例:在TeamViewer帐户“ admin@example.com”为单点登录添加域“ example.com”之后,他添加了多个公司管理员(例如“ admin2@example.com”)作为域所有者,以便他们也可以 管理域及其SSO设置。
使用Okta进行身份提供商设置
本节介绍如何设置Okta以用作TeamViewer SSO服务的IdP。
💡提示: 您需要根据您的设置将用户分配给Okta中的应用程序。
在这里找到Okta文档(英文)。
使用TeamViewer Okta应用程序自动配置
- 登录您的Okta Administrator仪表板
- 添加TeamViewer应用程序
- 选择SAML 2.0
- 将用户分配给应用程序
- 使用MCO中域管理中的元数据激活SAML
使用Okta Web用户界面进行手动配置
转到管理界面并添加新的SAML应用程序。在“SAML设置”页面上指定以下值:
(方便您进行复制粘贴)
Single Sign On URL https://sso.teamviewer.com/saml/acs
Audience URI (SP Entity ID) https://sso.teamviewer.com/saml/metadata
Name ID Format EmailAddress
Application username Email
添加以下属性语句(名称格式 - 未指定):
📌请注意:最初设置的“客户标识符”不得更改,否则SSO将中断。 TeamViewer未存储此值。
- 更复杂的绘图 -
📌请注意: emailaddress的值可能包含更复杂的映射规则。因此,Okta为您提供了一种表达式语言您可以在此处查看有关它的官方文档:https://developer.okta.com/reference/okta_expression_language/index
A公司为其用户保留了两个电子邮件地址域 - @ a1.test和@ A2.test。 Okta用户将@ a1.test域与其帐户相关联。
应仅为@ A2.test电子邮件地址启用TeamViewer SSO。
emailaddress语句的值可能如下所示:
String.append(String.substringBefore(user.email,“@”),“@ a2.test”)
这会导致SAML响应包含正确的电子邮件地址。
TeamViewer客户端配置
从版本13.2.1080开始,TeamViewer与Single Sign-On兼容。
以前的版本不支持单点登录,并且在登录期间无法将用户重定向到您的身份提供商。客户端配置是可选的,但允许更改已使用的浏览器以进行IdP的SSO登录。
默认情况下,TeamViewer客户端将使用嵌入式浏览器进行身份提供程序身份验证。如果您更喜欢使用操作系统的默认浏览器,则可以通过以下注册表项更改此行为:
Windows
HKEY_CURRENT_USER\Software\TeamViewer\SsoUseEmbeddedBrowser = 0 (DWORD)
macOS:
defaults write com.teamviewer.teamviewer.preferences SsoUseEmbeddedBrowser -int 0
📌注意: 您需要在创建或更改注册表后重新启动TeamViewer客户端。