为单因素密码登录的弃用做好计划¶
为了改善其所有客户的安全状况,Snowflake 即将推出几项变更,要求所有使用密码的人类用户使用多重身份验证 (MFA),并禁止所有服务用户使用密码。这些变更将在多个行为变更版本 (BCRs) 中推出。为了帮您做好相应的计划,本主题介绍如何弃用单因素密码登录。
备注
本主题中描述的弃用过程不适用于阅读者账户、Open Catalog 账户和试用账户。您仍可使用单因素密码登录这些类型的账户。
了解推出过程¶
弃用单因素密码登录的过程分为多个里程碑。
每个里程碑均使用 Snowflake 既定的行为变更发布流程实现。在此过程中,Snowflake 每个月都会发布一个 行为变更捆绑包。由于变更将包含在行为变更捆绑包中,因此新限制的实施将与捆绑包的生命周期一致。
如需进一步了解行为变更捆绑包的生命周期,以便为每个里程碑的实施做好计划,请参阅 行为变更策略。
人类用户与服务用户¶
Snowflake 中的 User 对象并非总是对应于人类用户。有些用户会在没有人工交互的情况下登录 Snowflake – 例如应用程序或服务。这些用户被视为 服务用户。
管理员使用用户对象的 TYPE
参数来定义用户是人类用户还是服务用户。
对于人类用户,
TYPE=PERSON
。如果未设置TYPE
参数或将其设置为 NULL,则用户将被视为人类用户。对于服务用户,
TYPE=SERVICE
。备注
LEGACY_SERVICE
用户类型可帮助客户为服务用户转为使用安全的身份验证形式。将用户的类型设置为LEGACY_SERVICE
可暂时允许用户使用密码进行身份验证,即使它是应用程序或服务。本主题所述的推出涉及到此用户类型的逐步弃用。
人类用户与服务用户之间的区分非常重要,因为此次推出对这两类用户的影响不同。为了加强这两类用户的安全状况,弃用单因素密码登录包括以下内容:
所有使用密码身份验证的 人类用户 都需要使用第二个身份验证因素。如需查看描述 Snowflake 将如何实现此目标的时间表,请参阅 适用于人类用户的里程碑。
当前使用密码身份验证的所有 服务用户 都需要迁移到更安全的身份验证方法。如需查看描述 Snowflake 将如何实现此目标的时间表,请参阅 服务用户的里程碑。
弃用时间表¶
下表提供了弃用单因素密码登录的时间表。
预计日期 |
受影响的用户 |
里程碑 |
---|---|---|
2025 年 5 至 2025 年2025 年 |
人类用户 |
|
2025 年 8 月至 2025 年 10 月 |
人类用户 |
|
2025 年 11 月至 2026 年 1 月 |
服务用户 |
|
2026 年 3 月至 2026 年 5 月 |
人类用户 |
|
2026 年 6 月至 2026 年 8 月 |
服务用户 |
适用于人类用户的里程碑¶
目标:目前使用密码进行身份验证的所有人类用户都必须使用第二个身份验证因素。
为实现此目标而开展的推出工作包括以下里程碑。每个里程碑都从行为变更捆绑包的发布开始(即测试期开始),到捆绑包正式启用时结束。启用捆绑包后,将立即实施与里程碑相关联的限制。
- 2025_04 捆绑包(2025 年 5 月 - 2025 年 7 月)[1]_ :强制要求所有 Snowsight 用户(新用户和现有用户)使用 MFA
人类用户在使用密码访问 Snowsight 时必须使用第二个身份验证因素,无一例外。
请记住以下几点:
此里程碑仅影响 Snowsight。人类用户可以继续使用单因素密码从商业智能 (BI) 和类似工具访问 Snowflake,即使其使用 Snowsight 注册 MFA 也不例外。您可以选择为其他这些工具强制执行 MFA;已注册 MFA 并在 Snowsight 之外使用 MFA 的用户将继续使用 MFA。
为 Snowsight 实现可选 MFA 注册的身份验证策略将被覆盖。
由于用户使用 Snowsight 登录界面通过 Snowflake OAuth 进行身份验证,他们必须注册 MFA。
单点登录用户不受此变更的影响,可以在不做调整的情况下继续访问 Snowsight。
旧版服务用户 (
TYPE=LEGACY_SERVICE
) 不受此变更的影响,并且可以继续使用单因素密码访问 Snowsight。
- 2025_07 捆绑包(2025 年 8 月至 2025 年 10 月)[1]_ :所有 新增 人类用户必须注册 MFA
在启用行为变更捆绑包后创建的所有人类用户都必须使用第二个身份验证因素,包括那些使用 BI 工具或类似工具的人类用户。
在启用捆绑包 之前 存在的人类用户不受影响。这些密码用户可以继续使用 BI 工具或类似工具(除 Snowsight 之外的任何工具),而不需要第二个身份验证因素,直至 2026 年 3 月。
例如,假设您的管理员在 2025 年 9 月 10 日选择使用与此里程碑关联的行为变更捆绑包。在此日期或之后创建的所有人类用户都必须使用第二个身份验证因素,而无论其使用哪个界面。在此日期之前存在的人类用户可以继续为 BI 工具(Snowsight 除外)使用仅有密码的身份验证。
- 即将发布的捆绑包(2026 年 3 月 - 2026 年 5 月)[1]_ :对于 所有 人类用户(无一例外)强制要求 MFA
启用与此里程碑关联的行为变更捆绑包后,所有新增和现有人类用户在使用密码进行身份验证时都必须使用第二个因素,无一例外。
服务用户的里程碑¶
目标:所有服务用户都必须使用安全的身份验证形式。
为实现此目标而开展的推出工作包括以下里程碑。每个里程碑都从行为变更捆绑包的发布开始,到捆绑包正式启用时结束。启用捆绑包后,将立即实施与里程碑相关联的限制。
具有 TYPE=SERVICE
的用户不能使用密码身份验证,无一例外。为了暂时允许服务和应用程序使用密码进行身份验证,Snowflake 提供了 LEGACY_SERVICE
用户类型。从单因素密码登录迁移的重点是逐渐弃用此 LEGACY_SERVICE
用户类型,因此所有非人类用户的类型都必须是 SERVICE
。
- 即将发布的捆绑包(2025 年 11 月 - 2026 年 1 月)[2]_ :不再 新增 旧版服务用户
在启用行为变更捆绑包后创建的所有非人类用户的类型都必须是
SERVICE
,这会阻止这些用户使用密码。在创建新的用户对象时,LEGACY_SERVICE
类型不再可用。此外,管理员无法将现有用户的类型更改为LEGACY_SERVICE
。例如,假设您的管理员在 2025 年 12 月 10 日选择使用与此里程碑关联的行为变更捆绑包。在此日期之后,执行 CREATE USER 或 ALTER USER 命令时,
TYPE=LEGACY_SERVICE
将成为无效选项。
- 即将发布的捆绑包(2026 年 6 月 - 2026 年 8 月)[2]_ :不再使用旧版服务用户
启用与此里程碑关联的行为变更捆绑包后,将阻止所有非人类用户使用密码进行身份验证。
LEGACY_SERVICE
用户类型已完全弃用。所有具有TYPE=LEGACY_SERVICE
的现有用户对象均迁移到TYPE=SERVICE
,这会阻止他们使用密码。
所有日期均为预估日期,取决于捆绑包的发布和生命周期。要了解此生命周期,请参阅 每月行为变更捆绑包。
需要提前实施 MFA¶
考虑到禁止使用单因素密码登录可以提高安全性,您可能会决定在本主题中提供的时间表之前加以实施。本节介绍如何在不等待推出完成的情况下实施限制。
强制性的 MFA 推出会区分 Snowsight 与其他界面,还会区分新老用户。您可以使用自定义 身份验证策略,立即为所有客户端类型的 所有 人类用户强制实施 MFA,无需等待推出过程完成。
您需要谨慎定义新身份验证策略的所有参数,但至少应包含以下参数,以实现防止单因素密码登录的目的:
CREATE AUTHENTICATION POLICY require_mfa_policy
MFA_AUTHENTICATION_METHODS = ('PASSWORD')
MFA_ENROLLMENT = REQUIRED;
有关这些参数的更多信息,请参阅 CREATE AUTHENTICATION POLICY。
要为账户设置身份验证策略,使其治理所有 人类用户 的身份验证,请执行以下语句:
USE ROLE ACCOUNTADMIN; ALTER ACCOUNT SET AUTHENTICATION POLICY require_mfa_policy;
注册多因素身份验证¶
有关用户如何注册 MFA 的信息,请参阅 注册多重身份验证 (MFA)。