教程:为 Tailscale 配置自动用户预配

本教程介绍了在 Tailscale 和 Microsoft Entra ID 中配置自动用户预配所需的步骤。 配置后,Microsoft Entra ID 会使用 Microsoft Entra 预配服务自动将用户和组预配到 Tailscale 以及取消预配。 有关此服务的功能、工作原理以及常见问题的重要详细信息,请参阅使用 Microsoft Entra ID 自动将用户预配到 SaaS 应用程序和取消预配

支持的功能

  • 在 Tailscale 中创建用户。
  • 在用户不再有访问需求的情况下,在 Tailscale 中删除用户。
  • 使用户属性在 Microsoft Entra ID 和 Tailscale 之间保持同步。
  • 在 Tailscale 中预配组和组成员身份
  • 单一登录到 Tailscale(推荐)。

先决条件

本教程中概述的方案假定你已具有以下先决条件:

步骤 1:规划预配部署

  1. 了解预配服务的工作原理
  2. 决定谁在预配范围中。
  3. 确定在 Microsoft Entra ID 与 Tailscale 之间映射的数据。

步骤 2:配置 Tailscale 以支持使用 Microsoft Entra ID 进行预配

你需要是 Tailscale 的所有者、管理员或 IT 管理员才能完成这些步骤。 请参阅 Tailscale 计划,了解哪些计划使 Microsoft Entra 的用户和组预配可用。

在 Tailscale 中生成 SCIM API 密钥。

在管理控制台的“用户管理”页中,

  1. 单击“启用预配”。
  2. 将生成的密钥复制到剪贴板。

将密钥信息保存在安全位置。 这是在 Microsoft Entra ID 中配置预配时需要使用的机密令牌。

从 Microsoft Entra 应用程序库添加 Tailscale,开始管理 Tailscale 的预配。 如果之前为 Tailscale 设置过 SSO,可以使用同一应用程序。 但建议你在最初测试集成时创建一个单独的应用。 若要详细了解如何从库中添加应用,可以单击此处

步骤 4:定义谁在预配范围内

借助 Microsoft Entra 预配服务,可根据对应用程序的分配和/或用户/组的属性来限定谁在预配范围内。 如果选择根据分配来限定要将谁预配到应用,可以使用以下步骤将用户分配到应用程序。 如果选择仅根据用户或组的属性来限定要对谁进行预配,可使用此处所述的范围筛选器。

  • 先小部分测试。 在向全员推出之前,请先使用少量的用户和组进行测试。 如果预配范围设置为分配的用户和组,则可以先尝试将一两个用户或组分配到应用。 当预配范围设置为所有用户和组时,可以指定基于属性的范围筛选器

  • 如果你需要其他角色,可以更新应用程序清单以添加新角色。

步骤 5:配置到 Tailscale 的自动用户预配

本部分逐步介绍了如何配置 Microsoft Entra 预配服务,以根据 Microsoft Entra ID 中的用户和/或组分配在 Tailscale 中创建、更新和禁用用户和/或组。

要在 Microsoft Entra ID 中为 Tailscale 配置自动用户预配:

  1. 至少以云应用程序管理员身份登录到 Microsoft Entra 管理中心

  2. 浏览到“标识”>“应用程序”>“企业应用程序”

    “企业应用程序”边栏选项卡的屏幕截图。

  3. 在应用程序列表中,选择“ Tailscale”。

    应用程序列表中 Tailscale 链接的屏幕截图。

  4. 选择“预配”选项卡。

    “预配”选项卡的屏幕截图。

  5. 将“预配模式”设置为“自动”。

    “预配”选项卡“自动”模式的屏幕截图。

  6. 在“管理员凭据”部分,输入 Tailscale 租户 URL 和机密令牌。 单击“测试连接”,以确保 Microsoft Entra ID 可以连接到 Tailscale。 如果连接失败,请确保 Tailscale 帐户具有管理员权限,然后重试。

    令牌的屏幕截图。

  7. 在“通知电子邮件”字段中,输入应接收预配错误通知的个人或组的电子邮件地址,并选中“发生故障时发送电子邮件通知”复选框 。

    通知电子邮件的屏幕截图。

  8. 选择“保存”。

  9. 在“映射”部分下,选择“将 Microsoft Entra 用户同步到 Tailscale”。

  10. 在“属性映射”部分,查看从 Microsoft Entra ID 同步到 Tailscale 的用户属性。 选为“匹配”属性的特性用于匹配 Tailscale 中的用户帐户以执行更新操作。 如果选择更改匹配目标特性,需要确保 Tailscale API 支持基于该特性筛选用户。 选择“保存”按钮以提交任何更改 。

    Attribute 类型 支持筛选 Tailscale 必需项
    userName 字符串
    活动 布尔
    displayName 字符串
    preferredLanguage 字符串
    name.givenName 字符串
    name.familyName 字符串
    name.formatted 字符串
    emails[type eq "work"].value 字符串
    externalId String
  11. 在“映射”部分下,选择“将 Microsoft Entra 组同步到 Tailscale”。

  12. 在“特性映射”部分,查看从 Microsoft Entra ID 同步到 Tailscale 的组特性。 选为“匹配”属性的特性用于匹配 Tailscale 中的组以执行更新操作。 选择“保存”按钮以提交任何更改。

    Attribute 类型 支持筛选 Tailscale 必需项
    displayName 字符串
    externalId String
    members 参考
  13. 若要配置范围筛选器,请参阅范围筛选器教程中提供的以下说明。

  14. 若要为 Tailscale 启用 Microsoft Entra 预配服务,请在“设置”部分将“预配状态”更改为“”。

    “预配状态”切换为“开”的屏幕截图。

  15. 通过在“设置”部分的“范围”中选择所需的值,定义要预配到 Tailscale 的用户和/或组。

    预配范围的屏幕截图。

  16. 在已准备好预配时,请单击“保存”。

    显示保存预配配置的屏幕截图。

此操作会对“设置”部分的“范围”中定义的所有用户和组启动初始同步周期 。 初始周期执行的时间比后续周期长,只要 Microsoft Entra 预配服务正在运行,后续周期大约每 40 分钟就会进行一次。

步骤 6:监视部署

配置预配后,请使用以下资源来监视部署:

  • 通过预配日志来确定哪些用户已预配成功或失败
  • 检查进度栏来查看预配周期的状态以及完成进度
  • 如果怀疑预配配置处于非正常状态,则应用程序将进入隔离状态。 可在此处了解有关隔离状态的详细信息。

更改日志

  • 2023/11/21 - 添加了对组预配的支持。

更多资源

后续步骤