HarmonyOS实战开发指导-管理系统帐号的凭据(仅对系统应用开放)

凭据可用于认证用户的身份,本文档将介绍如何录入、认证、更新、查询和删除指定系统帐号的凭据。

凭据类型

系统帐号支持管理以下凭据类型:
在这里插入图片描述

凭据子类型

凭据类型进一步细分为以下子类型:
在这里插入图片描述
备注:实际设备可支持的凭据类型取决于硬件能力。

开发准备

1.申请权限,申请流程请参考:申请应用权限。

  • ohos.permission.MANAGE_USER_IDM
  • ohos.permission.ACCESS_PIN_AUTH

2.导入系统帐号模块。

import account_osAccount from '@ohos.account.osAccount';

3.创建凭据管理对象。

let userIDM: account_osAccount.UserIDM = new account_osAccount.UserIDM();

注册PIN码输入器

输入器用于传递PIN码数据,录入、认证PIN码前需要先注册输入器。

具体开发实例如下:

1.定义PIN码输入器,并获取PIN码。

let pinData: Uint8Array = new Uint8Array([31, 32, 33, 34, 35, 36]); // you can obtain a PIN throught other ways.
let inputer: IInputer = {
   
  onGetData: (authSubType: account_osAccount.AuthSubType, callback: account_osAccount.IInputData) => {
   
    callback.onSetData(authSubType, pinData);
  }
}

2.调用registerInputer注册PIN码输入器。

let pinAuth: PINAuth = new account_osAccount.PINAuth();
pinAuth.registerInputer(inputer);

打开会话

在进行凭据管理前,请先打开一个新的会话。开发者可以使用openSession接口完成此操作。

具体开发实例如下:

1.调用openSession接口打开凭据管理新会话。

let challenge: Uint8Array = await userIDM.openSession();

录入PIN码

前述操作完成后,可以进行PIN码录入。开发者可以使用addCredential接口完成此操作。

具体开发实例如下:

1.定义PIN码凭据信息。

let credentialInfo: account_osAccount.CredentialInfo = {
   
  credType: account_osAccount.AuthSubType.PIN,
  token: null
};

2.调用addCredential接口添加指定的凭据信息,执行结果通过回调获取。

userIDM.addCredential(credentialInfo, {
   
  onResult: (code: number, result: account_osAccount.RequestResult) => {
   
    console.log(
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值