> ## Documentation Index
> Fetch the complete documentation index at: https://ayakaleaf-pro.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# 迁移到 LDAP 或 SAML

```text theme={null}
{
  _id:        '123',
  email:      'alice@example.com'
  first_name: 'Alice',
  last_name:  'Jones'
}
```

现在，你希望与公司的 LDAP/Active Directory 系统集成。在该系统中，Alice 的信息如下：

```text theme={null}
Alice:
  - uid:  'alicejones'
  - mail: 'alicejones@tech.example.com'
  - givenName:   'Alice'
  - sn: 'Jones'
```

你的目标是让 Alice 使用其 LDAP 用户名（`alicejones`）和密码登录，而不是使用原来的 Overleaf 凭据，并且不丢失任何工作成果。下面介绍如何实现这一点。

<Warning>
  此过程需要重新创建 **sharelatex** 容器，这会导致一段时间的停机。我们强烈建议你先在测试/预发布环境中完整演练一遍，以熟悉此过程。
</Warning>

<Steps>
  <Step title="要求用户更新其邮箱地址">
    Overleaf 账户与邮箱地址绑定，因此第一步是让用户的 Overleaf 邮箱与其 LDAP 或 SAML 邮箱保持一致。

    在我们的示例中，你需要让 Alice 登录其 Overleaf 账户，并将邮箱从 `alice@example.com` 更改为 `alicejones@tech.example.com`。

    <Warning>
      别忘了你自己！如果你是管理员，你也需要更新自己的邮箱地址。
    </Warning>

    <Check>
      如果用户数量很多，你可以使用[用户名迁移](/zh-CN/on-premises/user-and-project-management/user-management/username-migration)脚本批量更改用户的主邮箱地址。
    </Check>
  </Step>

  <Step title="启用 LDAP 或 SAML 模块">
    所有人的邮箱地址都更新完毕后，就可以切换了！你需要为新的身份验证方式设置相应的环境变量，然后使用 `bin/up -d` 命令重新创建 **sharelatex** 容器。

    这会将标准的 Overleaf 登录表单替换为新的 LDAP 或 SAML 登录表单。

    <Info>
      你可以在[此处](/zh-CN/on-premises/configuration/overleaf-toolkit/authentication/ldap-authentication)找到启用 LDAP 的相关信息，在[此处](/zh-CN/on-premises/configuration/overleaf-toolkit/authentication/saml-authentication)找到启用 SAML 2.0 的相关信息。
    </Info>
  </Step>

  <Step title="用户现在可以通过 LDAP 或 SAML 登录">
    Alice 下次登录时，将看到新的登录表单。

    <img src="https://mintcdn.com/ayakaleaf-pro/x9kfDjtWlyyhG_mR/images/on-premises/image-4.jpg?fit=max&auto=format&n=x9kfDjtWlyyhG_mR&q=85&s=d1ff36e97d059a8833611541dfcdc317" alt="LDAP/Active Directory 登录页面" width="348" height="261" data-path="images/on-premises/image-4.jpg" />

    他们可以输入 LDAP 用户名（`alicejones`）和密码，由于其邮箱地址现在与 LDAP 中的一致，他们将直接登录到现有的 Overleaf 账户。所有项目都会原封不动地保留。

    如果你启用的是 SAML 2.0，用户会看到一个按钮，点击后会被重定向到你的 IdP 输入凭据。身份验证成功后，他们会被重定向回你的 Overleaf 实例并登录到自己的账户。

    <img src="https://mintcdn.com/ayakaleaf-pro/x9kfDjtWlyyhG_mR/images/on-premises/image-5.jpg?fit=max&auto=format&n=x9kfDjtWlyyhG_mR&q=85&s=5a3486d88ffd5fe90549a596c05d7aa9" alt="SAML 登录页面" width="353" height="198" data-path="images/on-premises/image-5.jpg" />

    <Info>
      有关自定义登录页面体验的信息，请参阅[环境变量](/zh-CN/on-premises/configuration/overleaf-toolkit/environment-variables)页面。

      如果你需要回滚，只需注释掉 LDAP/SAML 配置，并使用 `bin/up -d` 命令重新创建 **sharelatex** 容器即可。之后用户将能够使用其当前邮箱地址和 Overleaf 专用密码登录。
    </Info>
  </Step>
</Steps>

## 反向操作：从 LDAP/SAML 切换回原生身份验证

如果你已经使用 LDAP 或 SAML 一段时间，现在想改用 Overleaf 的内置登录系统（例如你弃用了 LDAP），该怎么办？没问题！下面介绍如何进行切换。

<Steps>
  <Step title="检查所有人的邮箱是否正确">
    用户的账户已经关联到其 LDAP 或 SAML 邮箱地址。从现在起，他们将使用该邮箱登录，因此只需确认一切无误即可。
  </Step>

  <Step title="禁用 LDAP 或 SAML 模块">
    只需移除或取消设置 LDAP/SAML 配置项，并使用 `bin/up -d` 命令重新创建 **sharelatex** 容器。这样就会恢复 Overleaf 原生的邮箱和密码登录表单。

    <img src="https://mintcdn.com/ayakaleaf-pro/x9kfDjtWlyyhG_mR/images/on-premises/image-6.jpg?fit=max&auto=format&n=x9kfDjtWlyyhG_mR&q=85&s=6ab39d406809e864fc337f47bbd3b03b" alt="原生身份验证登录页面" width="407" height="279" data-path="images/on-premises/image-6.jpg" />
  </Step>

  <Step title="要求用户重置密码">
    现在用户访问登录页面时，将看到 Overleaf 登录表单，而不是 LDAP/SAML 登录表单。

    由于他们可能从未设置过 Overleaf 原生密码，因此需要创建一个。每位用户应当：

    * 点击“Forgot your password?”链接。
    * 输入与其账户关联的邮箱地址（即来自 LDAP/SAML 的邮箱）。
    * 按照密码重置邮件中的链接设置新密码。

    <Info>
      如果你尚未完成相关配置，请查看我们关于启用[邮件发送](/zh-CN/on-premises/configuration/overleaf-toolkit/email-delivery)的指南。
    </Info>

    完成后，他们就可以使用邮箱和新的 Overleaf 专用密码登录，访问自己的所有项目。
  </Step>
</Steps>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.