• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# AssetApi
2
3
4## 概述
5
6提供用户短敏感数据的安全存储及管理能力,包括新增、删除、更新、查询等。
7其中,短敏感数据可以是密码类(账号/密码)、Token类(应用凭据)、其他关键明文(如银行卡号)等长度较短的用户敏感数据。
8
9**系统能力:** SystemCapability.Security.Asset
10
11**起始版本:** 11
12
13
14## 汇总
15
16
17### 文件
18
19| 名称 | 描述 |
20| -------- | -------- |
21| [asset_api.h](asset__api_8h.md) | 声明用于访问关键资产的接口。  |
22
23
24### 函数
25
26| 名称 | 描述 |
27| -------- | -------- |
28| int32_t [OH_Asset_Add](#oh_asset_add) (const [Asset_Attr](_asset___attr.md) \*attributes, uint32_t attrCnt) | 新增一条关键资产。  |
29| int32_t [OH_Asset_Remove](#oh_asset_remove) (const [Asset_Attr](_asset___attr.md) \*query, uint32_t queryCnt) | 删除符合条件的一条或多条关键资产。  |
30| int32_t [OH_Asset_Update](#oh_asset_update) (const [Asset_Attr](_asset___attr.md) \*query, uint32_t queryCnt, const [Asset_Attr](_asset___attr.md) \*attributesToUpdate, uint32_t updateCnt) | 更新符合条件的一条关键资产。  |
31| int32_t [OH_Asset_PreQuery](#oh_asset_prequery) (const [Asset_Attr](_asset___attr.md) \*query, uint32_t queryCnt, [Asset_Blob](_asset___blob.md) \*challenge) | 查询的预处理,用于需要用户认证的关键资产。  |
32| int32_t [OH_Asset_Query](#oh_asset_query) (const [Asset_Attr](_asset___attr.md) \*query, uint32_t queryCnt, [Asset_ResultSet](_asset___result_set.md) \*resultSet) | 查询一条或多条符合条件的关键资产。  |
33| int32_t [OH_Asset_PostQuery](#oh_asset_postquery) (const [Asset_Attr](_asset___attr.md) \*handle, uint32_t handleCnt) | 查询的后置处理,用于需要用户认证的关键资产。  |
34| [Asset_Attr](_asset___attr.md) \* [OH_Asset_ParseAttr](#oh_asset_parseattr) (const [Asset_Result](_asset___result.md) \*result, [Asset_Tag](_asset_type.md#asset_tag) tag) | 解析查询结果,并获取指定的属性值。  |
35| void [OH_Asset_FreeBlob](#oh_asset_freeblob) ([Asset_Blob](_asset___blob.md) \*blob) | 释放挑战值所占用的内存。  |
36| void [OH_Asset_FreeResultSet](#oh_asset_freeresultset) ([Asset_ResultSet](_asset___result_set.md) \*resultSet) | 释放查询结果所占用的内存。  |
37
38
39## 函数说明
40
41
42### OH_Asset_Add()
43
44```
45int32_t OH_Asset_Add (const Asset_Attr * attributes, uint32_t attrCnt )
46```
47**描述**
48新增一条关键资产。
49
50**起始版本:** 11
51
52**参数:**
53
54| 名称 | 描述 |
55| -------- | -------- |
56| attributes | 待新增关键资产的属性集合。  |
57| attrCnt | 待新增关键资产的属性数量。  |
58
59**返回:**
60
61如果操作成功,则返回[ASSET_SUCCESS](_asset_type.md#asset_resultcode);否则返回错误码。
62
63
64### OH_Asset_FreeBlob()
65
66```
67void OH_Asset_FreeBlob (Asset_Blob * blob)
68```
69**描述**
70释放挑战值所占用的内存。
71
72**起始版本:** 11
73
74**参数:**
75
76| 名称 | 描述 |
77| -------- | -------- |
78| blob | 从OH_Asset_PreQuery获取的挑战值。  |
79
80
81### OH_Asset_FreeResultSet()
82
83```
84void OH_Asset_FreeResultSet (Asset_ResultSet * resultSet)
85```
86**描述**
87释放查询结果所占用的内存。
88
89**起始版本:** 11
90
91**参数:**
92
93| 名称 | 描述 |
94| -------- | -------- |
95| resultSet | 从OH_Asset_Query得到的查询结果列表。  |
96
97
98### OH_Asset_ParseAttr()
99
100```
101Asset_Attr* OH_Asset_ParseAttr (const Asset_Result * result, Asset_Tag tag )
102```
103**描述**
104解析查询结果,并获取指定的属性值。
105
106**起始版本:** 11
107
108**参数:**
109
110| 名称 | 描述 |
111| -------- | -------- |
112| result | 从OH_Asset_Query中获取的查询结果。  |
113| tag | 待获取的属性标签。  |
114
115**返回:**
116
117如果操作成功,则以Asset_Attr的形式返回属性,该属性不需要业务进行释放;否则返回NULL。
118
119
120### OH_Asset_PostQuery()
121
122```
123int32_t OH_Asset_PostQuery (const Asset_Attr * handle, uint32_t handleCnt )
124```
125**描述**
126查询的后置处理,用于需要用户认证的关键资产。
127
128**起始版本:** 11
129
130**参数:**
131
132| 名称 | 描述 |
133| -------- | -------- |
134| handle | 待处理的查询句柄,当前包含OH_Asset_PreQuery执行成功返回的挑战值。  |
135| handleCnt | 句柄属性集合中元素的个数。  |
136
137**返回:**
138
139如果操作成功,则返回[ASSET_SUCCESS](_asset_type.md#asset_resultcode);否则返回错误码。
140
141
142### OH_Asset_PreQuery()
143
144```
145int32_t OH_Asset_PreQuery (const Asset_Attr * query, uint32_t queryCnt, Asset_Blob * challenge )
146```
147**描述**
148查询的预处理,用于需要用户认证的关键资产。
149
150**起始版本:** 11
151
152**参数:**
153
154| 名称 | 描述 |
155| -------- | -------- |
156| query | 关键资产的查询条件。  |
157| queryCnt | 关键资产查询条件的个数。  |
158| challenge | 挑战值,在后续调用OH_Asset_Query时使用。  |
159
160**返回:**
161
162如果操作成功,则返回[ASSET_SUCCESS](_asset_type.md#asset_resultcode);否则返回错误码。
163
164
165### OH_Asset_Query()
166
167```
168int32_t OH_Asset_Query (const Asset_Attr * query, uint32_t queryCnt, Asset_ResultSet * resultSet )
169```
170**描述**
171查询一条或多条符合条件的关键资产。
172
173**起始版本:** 11
174
175**参数:**
176
177| 名称 | 描述 |
178| -------- | -------- |
179| query | 关键资产的查询条件。  |
180| queryCnt | 关键资产查询条件的个数。  |
181| resultSet | 查询结果列表。  |
182
183**返回:**
184
185如果操作成功,则返回[ASSET_SUCCESS](_asset_type.md#asset_resultcode);否则返回错误码。
186
187### OH_Asset_Remove()
188
189```
190int32_t OH_Asset_Remove (const Asset_Attr * query, uint32_t queryCnt )
191```
192**描述**
193删除符合条件的一条或多条关键资产。
194
195**起始版本:** 11
196
197**参数:**
198
199| 名称 | 描述 |
200| -------- | -------- |
201| query | 待删除关键资产的搜索条件。  |
202| queryCnt | 待删除关键资产搜索条件的个数。  |
203
204**返回:**
205
206如果操作成功,则返回[ASSET_SUCCESS](_asset_type.md#asset_resultcode);否则返回错误码。
207
208
209### OH_Asset_Update()
210
211```
212int32_t OH_Asset_Update (const Asset_Attr * query, uint32_t queryCnt, const Asset_Attr * attributesToUpdate, uint32_t updateCnt )
213```
214**描述**
215更新符合条件的一条关键资产。
216
217**起始版本:** 11
218
219**参数:**
220
221| 名称 | 描述 |
222| -------- | -------- |
223| query | 待更新关键资产的搜索条件。  |
224| queryCnt | 待更新关键资产搜索条件的个数。  |
225| attributesToUpdate | 待更新关键资产的属性集合。  |
226| updateCnt | 待更新关键资产的属性数量。  |
227
228**返回:**
229
230如果操作成功,则返回[ASSET_SUCCESS](_asset_type.md#asset_resultcode);否则返回错误码。
231