Auth0 ACUL JS SDK (英语)

这个 Auth0 ACUL JS SDK (英语) 允许您与 Universal 登录的高级自定义工作.
它简化了将认证屏幕(登录,签注,无密码,密码录入等)整合到您的网络应用中,为无缝执行提供了必要的工具.
页:1
开始
先决条件
在开始前,确保您有以下设置:
- 自定义域: 确保为您的 Auth0 租户配置自定义域 .
- 屏幕配置: 在您的 Auth0 流中设置所需的认证屏幕 .
关于详细步骤,请参见 配置 ACUL 屏幕。 。 。 .
安装
您可以轻松地安装 SDK 通过 无数字 :
npm install @auth0/auth0-acul-js
在安装 SDK 后, 您可以导入您想要配置的相关屏幕模块
导入屏幕
// Default import of any particular screen, eg: login-id screen
import LoginId from '@auth0/auth0-acul-js/login-id';
// Named import of any screen
import { LoginId } from '@auth0/auth0-acul-js';
// Default import of all screens
import * as Screens from '@auth0/auth0-acul-js';
注:关于所有屏幕导入路径的更详细情况,请参见: FAQ的电话。 。 。 .
使用量
将功能添加到屏幕
让我们看看在逻辑上增加逻辑的例子 login-id 屏幕.
示例: 在登录按钮中添加逻辑
import LoginId from '@auth0/auth0-acul-js/login-id';
const loginIdManager = new LoginId();
// Trigger the login method on button click
loginIdManager.login({
username: "testUser"
});
获取登录的强制字段列表
const { transaction } = loginIdManager
const requiredFields = transaction.getActiveIdentifiers();
整合登录的社会连接
允许用户通过社交连接(如Google,Facebook)登录,使用以下片段
import LoginId from "@auth0/auth0-acul-js/login-id";
const loginIdManager = new LoginId();
// Check if alternateConnections is available and has at least one item
if (!loginIdManager.transaction.alternateConnections) {
console.error('No alternate connections available.');
}
// Select the first available connection (users can select any available connection)
const selectedConnection = alternateConnections[0];
// Log the chosen connection for debugging or informational purposes
console.log(`Selected connection: ${selectedConnection.name}`);
// Proceed with social login using the selected connection
loginIdManager.socialLogin({
connection: selectedConnection.name,
})
登录处理出错
一个顶级的获取器功能, getErrors,可用于在后端验证失败时检索详细的认证错误.
import Login from "@auth0/auth0-acul-js/login";
const loginIdManager = new Login();
const errors = loginIdManager.getErrors();
if (errors) {
console.error("Login failed:", errors);
}
也可以使用 transaction.errors 可在屏幕上直接为每个屏幕提供上下文.
import Login from "@auth0/auth0-acul-js/login";
const loginIdManager = new Login();
const errors = loginIdManager.transaction?.errors ?? [];
if (errors) {
console.error("Login failed:", errors);
}
更多例子请访问我们 实例
用 Boilerplate App 快速启动
起来,用我们的锅炉板启动模板快速运行: 链接
API 参考
屏幕
| 没有. | 提示 | 屏幕名称 | 文档链接 |
|---|---|---|---|
| 1个 | 登录 | 登录 | 链接 |
| 2个 | 登录编号 | 登录编号 | 链接 |
| 3个 | 登录密码字 | 登录密码字 | 链接 |
| 页:1 | 注册编号 | 注册编号 | 链接 |
| 页:1 | 注册密码 | 注册密码 | 链接 |
探索更多屏幕...
| 没有. | 提示 | 屏幕名称 | 文档链接 |
|---|---|---|---|
| 6个 | 无密码登录 | 登录无密码电子邮件编码 | 链接 |
| 第7条 | 无密码登录 | 登录无密码- sms- otp | 链接 |
| 第8条 | 密码 | 钥匙注册 | 链接 |
| 第9条 | 密码 | 密码录入- 本地 | 链接 |
| 10个 | 电话识别器注册 | 电话识别器注册 | 链接 |
| 第11个 | 电话识别-质疑 | 电话识别-质疑 | 链接 |
| 第12条 | 电子邮件识别器质疑 | 电子邮件识别器质疑 | 链接 |
| 第13条 | 夹克 | 间歇式控制 | 链接 |
| 页:1 | 重置密码字 | 重置密码电子邮件 | 链接 |
| 15个 | 重置密码字 | 重置密码字请求 | 链接 |
| 16个 | 重置密码字 | 重置密码字 | 链接 |
| 页:1 | 重置密码字 | 重置密码 | 链接 |
| 第 18 条 | 重置密码字 | 重置密码- 成功 | 链接 |
| 第 19 条 | 注册 | 注册 | 链接 |
| 20国 | 玛法 | mfa- detect-浏览器能力 | 链接 |
| 21国 | 玛法 | mfa 滚动结果 | 链接 |
| 22个 | 玛法 | mfa - 开始滚动 - 选项 | 链接 |
| 第23条 | 玛法 | mfa 登录选项 | 链接 |
| 24个 | 闪电 | mfa-push-enrollment-qr (法语) | 链接 |
| 第25条 | 闪电 | 法-普-欢迎 | 链接 |
| 第 26 条 | 闪电 | mfa-push-挑战-push | 链接 |
| 27个 | 闪电 | 缩写列表 | 链接 |
| 第28条 | mfa-sms (英语) | mfa 国家代码 | 链接 |
| 29个 | mfa-sms (英语) | mfa - sms - 挑战 | 链接 |
| 30个 | mfa-sms (英语) | mfa - sms - 注册 | 链接 |
| 31个 | mfa-sms (英语) | mfa - sms - 列表 | 链接 |
| 第32条 | 电子邮件 | 电子邮件挑战 | 链接 |
| 33个 | 电子邮件 | 电子邮件列表 | 链接 |
| 页:1 | 维塔蒂诺 | 接受邀请 | 链接 |
| 35个 | 组织 | 组织选择者 | 链接 |
| 第36条 | 组织 | 组织选择 | 链接 |
| 页:1 | 重置密码字 | mfa-otp-挑战 | 链接 |
| 第38条 | 缩写 | mfa-otp- 注册码 | 链接 |
| 页:1 | 缩写 | mfa-otp-enrollment-qr (法语) | 链接 |
| 第40条 | 重置密码字 | 重置密码-mfa-电子邮件-质疑 | 链接 |
| 第41条 | 重置密码字 | 重置- 密码- mfa- push- 挑战- push | 链接 |
| 第42条 | 重置密码字 | mfa - sms - 挑战 | 链接 |
| 第43条 | 重置密码字 | 重置密码- mfa- otp- 挑战 | 链接 |
| 第44条 | 麦克风 | 移动电话注册 | 链接 |
| 第45条 | mfa 语音 | mfa 语音注册 | 链接 |
| 第46条 | mfa - 恢复代码 | mfa-恢复-代码挑战 | 链接 |
| 第47条 | 设备流量 | 设备编码-激活-分配 | 链接 |
| 第48条 | 设备流量 | 设备编码-激活-拒绝 | 链接 |
| 第49条 | 设备流量 | 设备编码激活 | 链接 |
| 第50条 | 重置密码字 | 重置密码-mfa-回收-代码-挑战 | 链接 |
| 51国 | 重置密码字 | 重置密码- mfa- voice | 链接 |
| 第52条 | 常见 | 赎回盘 | 链接 |
| 第53条 | 设备流量 | 设备编码确认 | 链接 |
| 页:1 | 麦克风 | 手机挑战 | 链接 |
| 第55条 | mfa 语音 | mfa - 语音挑战 | 链接 |
| 页:1 | mfa - 恢复代码 | mfa - 恢复- 代码注册 | 链接 |
| 页:1 | 重置密码字 | 重设密码-mfa-手机挑战 | 链接 |
| 页:1 | mfa - 恢复代码 | mfa - 恢复 - 代码 - 挑战 - 新代码 | 链接 |
| 59国 | 登录 | 登录 | 链接 |
| 页:1 | 登录 | 已注销 | 链接 |
| 页:1 | 登录 | 登录完成 | 链接 |
| 第62条 | 电子邮件核查 | 电子邮件核查结果 | 链接 |
| 页:1 | 登录电子邮件核查 | 登录电子邮件核查 | 链接 |
| 64国道 | mfa-webauthn (英语) | mfa-webauthn-平台的注册 | 链接 |
| 65个 | mfa-webauthn (英语) | mfa-webauthn-error (英语) | 链接 |
| 页:1 | mfa-webauthn (英语) | mfa-webauthn-roaming-information 互联网档案馆的存檔,存档日期2013-12-02 | 链接 |
| 67国道 | mfa-webauthn (英语) | mfa-webauthn-roamming-挑战 | 链接 |
| 68国 | mfa-webauthn (英语) | mfa-webauthn-平台-挑战 | 链接 |
| 第69条 | mfa-webauthn (英语) | mfa-webauthn - 注册 - 成功 | 链接 |
| 70个 | mfa-webauthn (英语) | mfa-webauthn-change-key-昵称 | 链接 |
| 页:1 | mfa-webauthn (英语) | mfa -webauthn - 不可用 - 错误 | 链接 |
| 72国 | 重置密码字 | 重置密码-mfa-webauthn-平台-挑战 | 链接 |
| 73国 | 重置密码字 | 重设密码-mfa-webauthn-roaming-challenge(英语: | 链接 |
| 第74条 | 同意书 | 同意书 | 链接 |
| 第75条 | 定制同意 | 定制同意 | 链接 |
| 第76条 | 电子邮件 | 电子邮件 | 链接 |
| 77国 | 确认 | 确认 | 链接 |
| 78国 | 同意书 | 尚待同意 | 链接 |
帮助函数
本节记录了屏幕实例在 Auth0-acul-js 中曝光的帮助方法和属性 .
上下文属性
-
user- 现行交易的当前用户/简介数据. -
tenant- 租户配置和元数据(领域、区域、设置). -
branding- 品牌/主题配置(颜色、标志、字体、视觉标志).branding.themes.default.identifiers附加标识符显示首选项( q)loginDisplay, (中文(简体) ),otpAutocomplete, (中文(简体) ),phoneDisplay与masking财务报告和审定财务报表formatting; 计 数identifiers当租户配置其中任何一个时,键会被省略. -
client- 应用程序客户端元数据和设置. -
countryCodes- 现有的电话国家代码(available,每个带code, (中文(简体) ),label, (中文(简体) ),dialCode)和建议的默认(recommended(三);null没有提供。 在注册和登录屏幕上,通过选中的code恢复为phoneCountryCode与电话号码一起从一个屏幕上提交,而不是通过路由pickCountryCode()打开login财务报告和审定财务报表login-id它需要与identifierType: 'phone'。 。 。 . -
organization- 适用的组织背景. -
prompt- 当前快速/流程配置 . -
untrustedData- 未经信任的投入(URL参数、预填表值). -
screen- 当前的屏幕元数据和配置. -
transaction- 交易/流程状态、会话标识符和相关数据. -
experiment- 当前屏幕的主动实验中心试验,或null当没有实验活动或屏幕没有选择通过context_configuration. 暴露指定的变异(experimentId, (中文(简体) ),variationId, (中文(简体) ),variationName, (中文(简体) ),variationDescription, (中文(简体) ),isControl和解决config(一个实验定义的地图——通过它读取一个密钥的解析值)value财产,例如:.experiment.config?.['show_passkey']?.value,而且总是无效检查experiment首config可能缺席,所以要小心?.页:1 分会isControl使基线对治疗UI.
标识管理
-
getLoginIdentifiers()数字 : 获取可用的登录标识类型( 电子邮件、 电话、 用户名) -
getSignupIdentifiers(): 获取可用的注册标识符类型, 每个类型都有其required状态
表格验证
validatePassword(password: string)数字 : 实时密码强度验证validateUsername(username: string): 用户名格式和可用性验证
外交部/推动投票和重新发送
-
pollingManager(): 开始并管理对外交部推动挑战的投票. -
resendManager()获得此屏幕的超时管理功能重传.
共同帮助者
-
getCurrentScreen()
返回当前屏幕上下文数据 . -
getCurrentThemeOptions()从品牌上下文中获取具有平整配置的当前主题选项. 仅返回样式符号( E)colors, (中文(简体) ),fonts, (中文(简体) ),borders, (中文(简体) ),pageBackground, (中文(简体) ),widget)——读branding.themes.default.identifiers用于标识符显示首选项. -
getErrors()从交易上下文获取当前错误
* 反馈
捐款
我们赞赏反馈和对这次再投资的贡献! 在开始前,请参看以下内容:
提出问题
请提供反馈或报告错误 提出我们的问题追踪器。 。 。 .
脆弱性报告
请不要在公共 GitHub 问题跟踪器上报告安全漏洞 。 这个 负责任的披露程序 详细说明披露安全问题的程序.
Auth0是一个易于执行,可适应的认证和授权平台. 学习更多退房 为什么是Auth0?
这个项目根据麻省理工学院的许可证获得许可。 见 自由主义 需要更多信息的文件.