1# 用户IAM子系统废弃说明
2
3## cl.useriam.1 AuthEvent接口废弃
4
5**访问级别**
6
7公开接口
8
9**废弃原因**
10
11为了统一用户在系统上的身份认证体验,所有应用在进行用户身份认证时,需要使用更换为新方案,使用系统提供的用户身份认证控件。原有方案相关接口废弃。
12
13**废弃影响**
14
15该变更为兼容性变更。后续应用一样可以继续使用。
16
17**API Level**
18
198
20
21**废弃发生版本**
22
23从OpenHarmony SDK 4.1.6.2开始。
24
25**废弃的接口/组件**
26
27| 接口声明 | 废弃说明 | 替换接口 |
28|---------|----------|--------|
29| interface AuthEvent | 不再支持,请使用新接口IAuthCallback | interface IAuthCallback |
30| callback(result: EventInfo): void | 不再支持,请使用新接口IAuthCallback中的onResult | method onResult |
31| field AuthEventKey | 不再支持 | 无 |
32| type EventInfo | 不再支持,请使用新接口IAuthCallback中的UserAuthResult | interface UserAuthResult |
33| interface AuthResultInfo | 不再支持 | 无 |
34| field result | 不再支持,请使用UserAuthResult中的result | field result |
35| field token | 不再支持,请使用UserAuthResult中的token | field token |
36| field remainAttempts | 不再支持 | 无 |
37| field lockoutDuration | 不再支持 | 无 |
38| interface TipInfo | 不再支持 | 无 |
39| field module | 不再支持 | 无 |
40| field tip | 不再支持 | 无 |
41| enum_class FingerprintTips | 不再支持 | 无 |
42| enum_instance FINGERPRINT_AUTH_TIP_TOO_SLOW | 不再支持 | 无 |
43| enum_instance FINGERPRINT_AUTH_TIP_TOO_FAST | 不再支持 | 无 |
44| enum_instance FINGERPRINT_AUTH_TIP_PARTIAL | 不再支持 | 无 |
45| enum_instance FINGERPRINT_AUTH_TIP_INSUFFICIENT | 不再支持 | 无 |
46| enum_instance FINGERPRINT_AUTH_TIP_DIRTY | 不再支持 | 无 |
47| enum_instance FINGERPRINT_AUTH_TIP_GOOD | 不再支持 | 无 |
48| enum_class FaceTips | 不再支持 | 无 |
49| enum_instance FACE_AUTH_TIP_TOO_BRIGHT | 不再支持 | 无 |
50| enum_instance FACE_AUTH_TIP_TOO_DARK | 不再支持 | 无 |
51| enum_instance FACE_AUTH_TIP_TOO_CLOSE | 不再支持 | 无 |
52| enum_instance FACE_AUTH_TIP_TOO_FAR | 不再支持 | 无 |
53| enum_instance FACE_AUTH_TIP_TOO_HIGH | 不再支持 | 无 |
54| enum_instance FACE_AUTH_TIP_TOO_LOW | 不再支持 | 无 |
55| enum_instance FACE_AUTH_TIP_TOO_RIGHT | 不再支持 | 无 |
56| enum_instance FACE_AUTH_TIP_TOO_LEFT | 不再支持 | 无 |
57| enum_instance FACE_AUTH_TIP_TOO_MUCH_MOTION | 不再支持 | 无 |
58| enum_instance FACE_AUTH_TIP_POOR_GAZE | 不再支持 | 无 |
59| enum_instance FACE_AUTH_TIP_NOT_DETECTED | 不再支持 | 无 |
60
61**适配指导**
62
63以AuthEvent接口中的callback回调函数替换为IAuthCallback的onResult回调函数为例,示例代码如下:
64
65```js
66import userIAM_userAuth from '@ohos.userIAM.userAuth';
67
68let challenge = new Uint8Array([1, 2, 3, 4, 5, 6, 7, 8]);
69let authType = userIAM_userAuth.UserAuthType.FACE;
70let authTrustLevel = userIAM_userAuth.AuthTrustLevel.ATL1;
71try {
72  let auth = userIAM_userAuth.getAuthInstance(challenge, authType, authTrustLevel);
73  auth.on('result', {
74    // API9通过AuthEvent接口中的callback回调函数获取认证结果
75    callback: (result: userIAM_userAuth.AuthResultInfo) => {
76      console.log('authV9 result ' + result.result);
77      console.log('authV9 token ' + result.token);
78      console.log('authV9 remainAttempts ' + result.remainAttempts);
79      console.log('authV9 lockoutDuration ' + result.lockoutDuration);
80    }
81  } as userIAM_userAuth.AuthEvent);
82  auth.start();
83  console.log('authV9 start success');
84} catch (error) {
85  console.error('authV9 error = ' + error);
86  // do error
87}
88```
89
90```js
91import userAuth from '@ohos.userIAM.userAuth';
92
93const authParam : userAuth.AuthParam = {
94  challenge: new Uint8Array([49, 49, 49, 49, 49, 49]),
95  authType: [userAuth.UserAuthType.PIN],
96  authTrustLevel: userAuth.AuthTrustLevel.ATL1,
97};
98const widgetParam :userAuth.WidgetParam = {
99  title: '请输入密码',
100};
101try {
102  let userAuthInstance = userAuth.getUserAuthInstance(authParam, widgetParam);
103  console.log('get userAuth instance success');
104  // 需要调用UserAuthInstance的start()接口,启动认证后,才能通过onResult获取到认证结果。
105  userAuthInstance.on('result', {
106    // API10通过IAuthCallback的onResult回调函数获取认证结果
107    onResult (result) {
108      console.log('userAuthInstance callback result = ' + JSON.stringify(result));
109    }
110  });
111  console.log('auth on success');
112} catch (error) {
113  console.error('auth catch error: ' + JSON.stringify(error));
114}
115```
116
117更多接口的示例代码可参考[用户认证API文档](../../../application-dev/reference/apis/js-apis-useriam-userauth.md)和[人脸认证API文档](../../../application-dev/reference/apis/js-apis-useriam-faceauth.md)。
118