You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Auth0控制台仅为指定Node.js应用启用Multi-factor Authentication (MFA)

为单个Auth0应用启用MFA(不影响其他应用)

Auth0支持通过**规则(Rules)**实现应用级别的MFA控制,无需全局启用。具体实现步骤如下:

步骤1:创建自定义规则

  1. 登录Auth0控制台,左侧菜单选择 "Rules",点击 "Create Rule" 后选择 "Empty Rule" 模板。
  2. 在规则编辑器中替换默认代码为以下逻辑(记得把TARGET_CLIENT_ID替换成你要启用MFA的目标应用Client ID):
function (user, context, callback) {
  // 目标应用的Client ID,可在应用Settings页面获取
  const TARGET_CLIENT_ID = '你的应用Client ID';
  
  // 判断当前登录应用是否为目标应用,且未完成MFA验证
  if (context.clientID === TARGET_CLIENT_ID && !context.multifactor) {
    // 触发MFA验证,用户会收到完成多因素认证的提示
    return callback(new UnauthorizedError('请完成多因素认证以继续登录'));
  }
  
  callback(null, user, context);
}
  1. 点击 "Save" 保存规则。

步骤2:验证效果

  • 使用目标应用的登录流程,会被强制要求完成MFA;
  • 其他应用的登录流程不受影响,仍保持原有验证逻辑。

补充调整

  • 若要给多个应用启用MFA,可把单个Client ID改成数组,比如const TARGET_CLIENT_IDS = ['应用1ID', '应用2ID'],然后用TARGET_CLIENT_IDS.includes(context.clientID)判断;
  • 可在Auth0控制台的 "Security > Multi-factor Auth" 里配置允许使用的MFA方法(如谷歌验证器、短信等),这些方法只会在规则触发时生效。

你之前看到的全局启用提示,是直接在MFA设置页开启的全局强制逻辑,而规则能实现更细粒度的应用级管控。

内容的提问来源于stack exchange,提问作者ZCH

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.01 21:12:02