harmony 鸿蒙认证过程中取消认证

  • 2025-06-16
  • 浏览 (5)

认证过程中取消认证

统一用户认证框架提供了cancel接口,当应用在认证过程中,需要取消认证时可调用该接口。

接口说明

具体参数、返回值、错误码等描述,请参考对应的API文档

此处仅展示了取消认证操作的接口,在取消认证前,需要先发起认证,发起认证的接口列表、详细说明可参考发起认证章节和API文档。

接口名称 功能描述
cancel(): void 取消本次认证操作。

开发步骤

  1. 申请权限:ohos.permission.ACCESS_BIOMETRIC。

  2. 指定用户认证相关参数AuthParam(包括挑战值、认证类型UserAuthType列表和认证等级AuthTrustLevel),获取认证对象UserAuthInstance,并调用UserAuthInstance.start发起认证。此步骤详细说明可参考发起认证

  3. 使用已经成功发起认证的UserAuthInstance对象调用UserAuthInstance.cancel接口取消本次认证。

示例代码为发起认证可信等级≥ATL3的人脸+锁屏口令认证后,取消认证请求:

import { BusinessError } from  '@kit.BasicServicesKit';
import { cryptoFramework } from '@kit.CryptoArchitectureKit';
import { userAuth } from '@kit.UserAuthenticationKit';

try {
  const rand = cryptoFramework.createRandom();
  const len: number = 16;
  const randData: Uint8Array = rand?.generateRandomSync(len)?.data;
  // 设置认证参数。
  const authParam: userAuth.AuthParam = {
    challenge: randData,
    authType: [userAuth.UserAuthType.PIN, userAuth.UserAuthType.FACE],
    authTrustLevel: userAuth.AuthTrustLevel.ATL3,
  };
  // 配置认证界面。
  const widgetParam: userAuth.WidgetParam = {
    title: '请进行身份认证',
  };
  // 获取认证对象。
  const userAuthInstance = userAuth.getUserAuthInstance(authParam, widgetParam);
  console.info('get userAuth instance success');
  // 开始认证。
  userAuthInstance.start();
  console.info('auth start success');
  // 取消认证。
  userAuthInstance.cancel();
  console.info('auth cancel success');
} catch (error) {
  const err: BusinessError = error as BusinessError;
  console.error(`auth catch error. Code is ${err?.code}, message is ${err?.message}`);
}

你可能感兴趣的鸿蒙文章

harmony 鸿蒙User Authentication Kit(用户认证服务)

harmony 鸿蒙切换自定义认证

harmony 鸿蒙查询用户注册凭据的状态

harmony 鸿蒙查询支持的认证能力

harmony 鸿蒙开发准备

harmony 鸿蒙发起认证

harmony 鸿蒙使用嵌入式用户身份认证控件

harmony 鸿蒙User Authentication Kit简介

0  赞