Authing 文档文档
快速开始
概念
使用指南
开发集成 arrow
  • V2 文档
  • V3 文档
元数据
应用集成
身份自动化
加入 APN
开发集成
多租户(内测版)
控制台文档
多租户控制台
租户控制台
Saas 应用 Demo
快速开始
概念
使用指南
开发集成 arrow
  • V2 文档
  • V3 文档
元数据
应用集成
身份自动化
加入 APN
开发集成
多租户(内测版)
控制台文档
多租户控制台
租户控制台
Saas 应用 Demo
旧版
使用指南
  • 快速开始

  • 对用户进行认证

  • 对用户进行权限管理

  • 用户自助服务

  • 授权

  • 自适应 MFA

  • 管理用户账号

  • 管理用户目录

  • 同步中心

  • 应用

  • 成为联邦认证身份源

  • 连接外部身份源(IdP)

  • 微信生态全场景能力

  • 迁移用户到 Authing

  • 管理组织机构

  • 安全设置

  • 品牌化

  • 自动化

    • 流水线 Pipeline

      • 创建你的第一个 Pipeline 函数
      • Pipeline API Reference
      • Pipeline 的应用场景
      • Pipeline User 对象
      • Pipeline Context 对象
      • 在 Pipeline 中使用环境变量
      • 可用的 Node Modules
      • 如何调试
      • 私有化部署
    • Webhooks
    • 身份自动化
  • 审计日志

  • 设置

  • Authing 令牌
  • 私有化部署方案

  • 常见问题 FAQ

  1. 使用指南
  2. /
  3. 自动化
  4. /
  5. 流水线 Pipeline
  6. /
  7. 可用的 Node Modules

¶ 可用的 Node Modules

更新时间: 2025-02-18 09:00:47
编辑

目前 Authing Pipeline 中可以使用以下 Node Modules:

  • Authing SDK for Node.js (opens new window)
  • 网络请求库 axios (opens new window)
  • lodash
  • Authing 内置工具集函数 utils

¶ Authing SDK for Node.js

出于安全考虑, Authing 会通过特殊方式,使用你的用户池 ID(userPoolId) 和用户池密钥(secret) 初始化 authing-js-sdk,此过程不会将你的用户池密钥发送到公网。你可以使用使用全局变量 authing,请勿再次初始化 SDK!

开发者可以直接使用初始化过后的 authing 实例,无需手动初始化!Authing Pipeline 会自动帮助开发者 take care 初始化过程。

如下所示:

async function pipe(user, context, callback) {
  //判断用户邮箱是否已 @authing.cn 结尾
  if (!user.email.endsWith('@authing.cn')) {
    return callback(null, user, context)
  }

  try {
    //调用 API 给用户添加角色
    await authing.roles.addUsers('ROLE', [user.id])
  } catch (error) { }

  callback(null, user, context)
}

在 addUsers() 中我们使用了 env.ROOT_GROUP_ID 通过环境变量来获取组 ID,这样可以避免硬编码。关于如何在 Pipeline 函数中使用环境变量,请见使用环境变量。 关于如何使用 callback 以及 Pipeline 函数的完整 API,请见 Pipeline 函数 API 文档。

¶ 网络请求库

目前 Authing 支持使用 axios,且支持 async/await 语法 🚀!

axios 详细文档请移步其官方文档 (opens new window)。

¶ lodash

需要开发者手动导入:

const lodash = require("lodash")

详细文档请移步其官方文档 (opens new window)。

¶ 内置工具集 utils

Authing 内置封装了一些实用的函数,供开发者直接调用。

需要开发者手动导入:

const utils = require("./utils")

¶ 检查 IP 是否位于 IP 段内

使用方法:

utils.ipRangeCheck(IP, [start, end])

返回值为 boolean。

示例:以下 Pipeline 函数实现注册 IP 段白名单功能。

async function pipe(context, callback) {
  const utils = require("./utils")
  const ip = context.ip
  if (ip && utils.ipRangeCheck(ip, ["110.53.254.1", "110.53.254.255"])) {
    return callback(null, context)
  }
  return callback(new Error('Access Denied!'))
}

¶ 其他 Node 自带 Module

Authing Pipeline 使用 node8 引擎,node8 的所有内置模块 (opens new window)均可使用,如 querystring 等。

上一篇: 在 Pipeline 中使用环境变量 下一篇: 如何调试
  • Authing SDK for Node.js
  • 网络请求库
  • lodash
  • 内置工具集 utils
  • 其他 Node 自带 Module

用户身份管理

集成第三方登录
手机号闪验 (opens new window)
通用登录表单组件
自定义认证流程

企业内部管理

单点登录
多因素认证
权限管理

开发者

开发文档
框架集成
博客 (opens new window)
GitHub (opens new window)
社区用户中心 (opens new window)

公司

400 888 2106
sales@authing.cn
北京市朝阳区北辰世纪中心 B 座 16 层(总)
成都市高新区天府五街 200 号 1 号楼 B 区 4 楼 406 室(分)

京ICP备19051205号

beian京公网安备 11010802035968号

© 北京蒸汽记忆科技有限公司