多重身份验证 (MFA) 是一种安全过程,要求用户提供两个或多个验证因素才能访问系统、应用程序或帐户。这增加了一层额外的保护,而不仅仅是使用密码。
通过要求多种验证方法,MFA 有助于降低未经授权访问的风险,即使有人获得了您的密码。强烈建议使用它来保护存储在笔记中的敏感信息。
[!警告] OpenID 和 TOTP 不能同时使用!
一、使用 OpenID 使用您的 Google 帐户登录!
OpenID 是一种标准化方式,可让您使用其他服务(例如 Google)的帐户登录网站来验证您的身份。
二、为什么选择基于时间的一次性密码?
TOTP(基于时间的一次性密码)是一种安全功能,可在您的设备(例如智能手机)上生成一个唯一的临时代码,该代码每 30 秒更改一次。您可以使用此代码和密码登录您的帐户,使其他人更难访问它们。
三、设置
MFA 只能在服务器实例上设置。
[!注意] 在服务器实例上启用多重身份验证 (MFA) 后,新的桌面实例可能无法与其同步。作为临时解决方法,您可以禁用 MFA 以完成初始同步,然后重新启用 MFA。此问题将在将来的版本中得到解决。
3.1 TOTP
转到“菜单”->“选项”->“MFA”
如果未选中,请单击“启用多重身份验证”复选框
在 MFA 方法下选择“基于时间的一次性密码 (TOTP)”
单击“生成 TOTP 密钥”按钮
将生成的密钥复制到身份验证应用/扩展
单击“生成恢复代码”按钮
保存恢复代码。如果您无法访问身份验证器,则可以使用恢复代码代替 TOTP。使用恢复代码后,它将显示在 MFA 选项选项卡中使用该代码时的 unix 时间戳。
TOTP 设置完成后(刷新页面后)需要重新登录。
3.2 开放ID
为了设置 OpenID,您需要设置身份验证提供程序。这需要一些额外的设置。按照以下说明通过 Google 设置 OpenID 服务。Trilium 的重定向 URL 是 。https://<your-trilium-domain>/callback
在文件中设置 和 (查看[missing note]了解更多信息)。
oauthBaseUrloauthClientIdoauthClientSecretconfig.ini
您还可以通过环境变量进行设置:
标准:
TRILIUM_MULTIFACTORAUTHENTICATION_OAUTHBASEURLTRILIUM_MULTIFACTORAUTHENTICATION_OAUTHCLIENTIDTRILIUM_MULTIFACTORAUTHENTICATION_OAUTHCLIENTSECRET
旧版(仍支持): , ,
TRILIUM_OAUTH_BASE_URLTRILIUM_OAUTH_CLIENT_IDTRILIUM_OAUTH_CLIENT_SECRET
oauthBaseUrl
应该是你的 Trilium 实例服务器的链接,例如 。https://<your-trilium-domain>
重新启动服务器
转到“菜单”->“选项”->“MFA”
如果未选中,请单击“启用多重身份验证”复选框
在“MFA 方法”下选择“OAuth/OpenID”
刷新页面并通过 OpenID 提供商登录
[!注意] 默认的 OAuth 颁发者是 Google。要使用其他服务,例如 Authentik 或 Auth0,您可以通过文件中的 、 和 配置设置。或者,可以使用环境变量设置这些值:
oauthIssuerBaseUrloauthIssuerNameoauthIssuerIconconfig.ini
标准:
TRILIUM_MULTIFACTORAUTHENTICATION_OAUTHISSUERBASEURLTRILIUM_MULTIFACTORAUTHENTICATION_OAUTHISSUERNAMETRILIUM_MULTIFACTORAUTHENTICATION_OAUTHISSUERICON
旧版(仍支持): , ,
TRILIUM_OAUTH_ISSUER_BASE_URLTRILIUM_OAUTH_ISSUER_NAMETRILIUM_OAUTH_ISSUER_ICON
oauthIssuerName
并且是在登录页面显示正确发卡机构信息所必需的。oauthIssuerIcon
3.2.1 Authentik
如果您还没有正在运行的 Authentik 实例,请按照以下说明进行设置。
在 Authentik 管理仪表板中,按照以下步骤创建新的 OAuth2 应用程序。确保将重定向 URL 设置为: 。
https://<your-trilium-domain>/callback
在config.ini文件中,设置相关的 OAuth 变量:
oauthIssuerBaseUrl
→ 使用应用程序概述页中的 URL。OpenID Configuration Issuer
oauthIssuerName
和 → 设置这些以自定义登录页面上显示的名称和图标。如果省略,则默认显示 Google 的名称和图标。oauthIssuerIcon
通过重新启动服务器来应用更改。
从“OpenID”部分的步骤 3 开始继续执行其余步骤。