AssetType
概述
提供关键资产存储服务中通用的枚举值、数据结构和错误码。
系统能力: SystemCapability.Security.Asset
起始版本: 11
汇总
文件
名称 | 描述 |
---|---|
asset_type.h | 定义关键资产存储服务中通用的枚举值、数据结构和错误码。 |
结构体
名称 | 描述 |
---|---|
struct Asset_Blob | 二进制数组类型,即不定长的字节数组。 |
union Asset_Value | 关键资产属性内容。 |
struct Asset_Attr | 关键资产属性。 |
struct Asset_Result | 关键资产查询结果,用于定义一条关键资产。 |
struct Asset_ResultSet | 关键资产查询结果集合,用于定义多条关键资产。 |
宏定义
名称 | 描述 |
---|---|
ASSET_TAG_TYPE_MASK (0xF << 28) | 用于获取关键资产属性类型的掩码。 |
枚举
名称 | 描述 |
---|---|
Asset_TagType { ASSET_TYPE_BOOL = 0x1 << 28, ASSET_TYPE_NUMBER = 0x2 << 28, ASSET_TYPE_BYTES = 0x3 << 28 } |
关键资产属性的类型定义。 |
Asset_Tag { ASSET_TAG_SECRET = ASSET_TYPE_BYTES | 0x01, ASSET_TAG_ALIAS = ASSET_TYPE_BYTES | 0x02, ASSET_TAG_ACCESSIBILITY = ASSET_TYPE_NUMBER | 0x03, ASSET_TAG_REQUIRE_PASSWORD_SET = ASSET_TYPE_BOOL | 0x04, ASSET_TAG_AUTH_TYPE = ASSET_TYPE_NUMBER | 0x05, ASSET_TAG_AUTH_VALIDITY_PERIOD = ASSET_TYPE_NUMBER | 0x06, ASSET_TAG_AUTH_CHALLENGE = ASSET_TYPE_BYTES | 0x07, ASSET_TAG_AUTH_TOKEN = ASSET_TYPE_BYTES | 0x08, ASSET_TAG_SYNC_TYPE = ASSET_TYPE_NUMBER | 0x10, ASSET_TAG_IS_PERSISTENT = ASSET_TYPE_BOOL | 0x11, ASSET_TAG_DATA_LABEL_CRITICAL_1 = ASSET_TYPE_BYTES | 0x20, ASSET_TAG_DATA_LABEL_CRITICAL_2 = ASSET_TYPE_BYTES | 0x21, ASSET_TAG_DATA_LABEL_CRITICAL_3 = ASSET_TYPE_BYTES | 0x22, ASSET_TAG_DATA_LABEL_CRITICAL_4 = ASSET_TYPE_BYTES | 0x23, ASSET_TAG_DATA_LABEL_NORMAL_1 = ASSET_TYPE_BYTES | 0x30, ASSET_TAG_DATA_LABEL_NORMAL_2 = ASSET_TYPE_BYTES | 0x31, ASSET_TAG_DATA_LABEL_NORMAL_3 = ASSET_TYPE_BYTES | 0x32, ASSET_TAG_DATA_LABEL_NORMAL_4 = ASSET_TYPE_BYTES | 0x33, ASSET_TAG_RETURN_TYPE = ASSET_TYPE_NUMBER | 0x40, ASSET_TAG_RETURN_LIMIT = ASSET_TYPE_NUMBER | 0x41, ASSET_TAG_RETURN_OFFSET = ASSET_TYPE_NUMBER | 0x42, ASSET_TAG_RETURN_ORDERED_BY = ASSET_TYPE_NUMBER | 0x43, ASSET_TAG_CONFLICT_RESOLUTION = ASSET_TYPE_NUMBER | 0x44 } |
关键资产属性的名称。 |
Asset_ResultCode { ASSET_SUCCESS = 0, ASSET_PERMISSION_DENIED = 201, ASSET_INVALID_ARGUMENT = 401, ASSET_SERVICE_UNAVAILABLE = 24000001, ASSET_NOT_FOUND = 24000002, ASSET_DUPLICATED = 24000003, ASSET_ACCESS_DENIED = 24000004, ASSET_STATUS_MISMATCH = 24000005, ASSET_OUT_OF_MEMORY = 24000006, ASSET_DATA_CORRUPTED = 24000007, ASSET_DATABASE_ERROR = 24000008, ASSET_CRYPTO_ERROR = 24000009, ASSET_IPC_ERROR = 24000010, ASSET_BMS_ERROR = 24000011, ASSET_ACCOUNT_ERROR = 24000012, ASSET_ACCESS_TOKEN_ERROR = 24000013, ASSET_FILE_OPERATION_ERROR = 24000014, ASSET_GET_SYSTEM_TIME_ERROR = 24000015, ASSET_LIMIT_EXCEEDED = 24000016, ASSET_UNSUPPORTED = 24000017 } |
调用ASSET返回的结果码。 |
Asset_Accessibility { ASSET_ACCESSIBILITY_DEVICE_POWERED_ON = 0, ASSET_ACCESSIBILITY_DEVICE_FIRST_UNLOCKED = 1, ASSET_ACCESSIBILITY_DEVICE_UNLOCKED = 2 } |
基于锁屏状态的访问控制类型。 |
Asset_AuthType { ASSET_AUTH_TYPE_NONE = 0x00, ASSET_AUTH_TYPE_ANY = 0xFF } |
关键资产支持的用户认证类型。 |
Asset_SyncType { ASSET_SYNC_TYPE_NEVER = 0, ASSET_SYNC_TYPE_THIS_DEVICE = 1 << 0, ASSET_SYNC_TYPE_TRUSTED_DEVICE = 1 << 1 } |
关键资产支持的同步类型。 |
Asset_ConflictResolution { ASSET_CONFLICT_OVERWRITE = 0, ASSET_CONFLICT_THROW_ERROR = 1 } |
新增关键资产时的冲突(如:别名相同)处理策略。 |
Asset_ReturnType { ASSET_RETURN_ALL = 0, ASSET_RETURN_ATTRIBUTES = 1 } |
关键资产查询返回的结果类型。 |
宏定义说明
ASSET_TAG_TYPE_MASK
#define ASSET_TAG_TYPE_MASK (0xF << 28)
描述
用于获取关键资产属性类型的掩码。
起始版本: 11
枚举类型说明
Asset_Accessibility
enum Asset_Accessibility
描述
基于锁屏状态的访问控制类型。
起始版本: 11
枚举值 | 描述 |
---|---|
ASSET_ACCESSIBILITY_DEVICE_POWERED_ON | 开机后可访问。 |
ASSET_ACCESSIBILITY_DEVICE_FIRST_UNLOCKED | 首次解锁后可访问。 |
ASSET_ACCESSIBILITY_DEVICE_UNLOCKED | 解锁时可访问。 |
Asset_AuthType
enum Asset_AuthType
描述
关键资产支持的用户认证类型。
起始版本: 11
枚举值 | 描述 |
---|---|
ASSET_AUTH_TYPE_NONE | 访问关键资产前无需用户认证。 |
ASSET_AUTH_TYPE_ANY | 任意一种用户认证方式(PIN码、人脸、指纹等)通过后,均可访问关键资产。 |
Asset_ConflictResolution
enum Asset_ConflictResolution
描述
新增关键资产时的冲突(如:别名相同)处理策略。
起始版本: 11
枚举值 | 描述 |
---|---|
ASSET_CONFLICT_OVERWRITE | 覆盖原本的关键资产。 |
ASSET_CONFLICT_THROW_ERROR | 抛出异常,由业务进行后续处理。 |
Asset_ResultCode
enum Asset_ResultCode
描述
调用ASSET返回的结果码。
起始版本: 11
枚举值 | 描述 |
---|---|
ASSET_SUCCESS | 表示操作成功。 |
ASSET_PERMISSION_DENIED | 表示调用者没有权限。 |
ASSET_INVALID_ARGUMENT | 表示参数错误。 |
ASSET_SERVICE_UNAVAILABLE | 表示关键资产服务不可用。 |
ASSET_NOT_FOUND | 表示未找到关键资产。 |
ASSET_DUPLICATED | 表示关键资产已存在。 |
ASSET_ACCESS_DENIED | 表示拒绝访问关键资产。 |
ASSET_STATUS_MISMATCH | 表示锁屏状态不匹配。 |
ASSET_OUT_OF_MEMORY | 表示系统内存不足。 |
ASSET_DATA_CORRUPTED | 表示关键资产损坏。 |
ASSET_DATABASE_ERROR | 表示数据库操作失败。 |
ASSET_CRYPTO_ERROR | 表示算法库操作失败。 |
ASSET_IPC_ERROR | 表示进程通信错误。 |
ASSET_BMS_ERROR | 表示包管理服务异常。 |
ASSET_ACCOUNT_ERROR | 表示账号系统异常。 |
ASSET_ACCESS_TOKEN_ERROR | 表示访问控制服务异常。 |
ASSET_FILE_OPERATION_ERROR | 表示文件操作失败。 |
ASSET_GET_SYSTEM_TIME_ERROR | 表示获取系统时间失败。 |
ASSET_LIMIT_EXCEEDED | 表示缓存数量超限。 |
ASSET_UNSUPPORTED | 表示该子功能不支持。 |
Asset_ReturnType
enum Asset_ReturnType
描述
关键资产查询返回的结果类型。
起始版本: 11
枚举值 | 描述 |
---|---|
ASSET_RETURN_ALL | 返回关键资产明文及属性。 |
ASSET_RETURN_ATTRIBUTES | 返回关键资产属性,不含关键资产明文。 |
Asset_SyncType
enum Asset_SyncType
描述
关键资产支持的同步类型。
起始版本: 11
枚举值 | 描述 |
---|---|
ASSET_SYNC_TYPE_NEVER | 不允许同步关键资产。 |
ASSET_SYNC_TYPE_THIS_DEVICE | 只在本设备进行同步,如仅在本设备还原的备份场景。 |
ASSET_SYNC_TYPE_TRUSTED_DEVICE | 只在可信设备间进行同步,如克隆场景。 |
Asset_Tag
enum Asset_Tag
描述
关键资产属性的名称。
起始版本: 11
枚举值 | 描述 |
---|---|
ASSET_TAG_SECRET | 表示用户敏感数据,如口令、令牌等,其值为bytes类型。 |
ASSET_TAG_ALIAS | 表示一个关键资产的标识,其值为bytes类型。 |
ASSET_TAG_ACCESSIBILITY | 表示关键资产何时可访问,其值为uint32_t类型。 |
ASSET_TAG_REQUIRE_PASSWORD_SET | 表示关键资产是否在设备是否设置了锁屏密码时可用,其值为bool类型。 |
ASSET_TAG_AUTH_TYPE | 表示关键资产需要的用户认证类型,其值为uint32_t类型。 |
ASSET_TAG_AUTH_VALIDITY_PERIOD | 表示用户认证的有效时间,其值为uint32_t类型,单位为秒。 |
ASSET_TAG_AUTH_CHALLENGE | 表示认证时防重放用的挑战值,其值为bytes类型。 |
ASSET_TAG_AUTH_TOKEN | 表示用户认证后获取到的认证令牌,其值为bytes类型。 |
ASSET_TAG_SYNC_TYPE | 表示关键资产的同步类型,其值为uint32_t类型。 |
ASSET_TAG_IS_PERSISTENT | 表示关键资产是否需持久化存储,其值为bool类型。 仅在调用OH_Asset_Add函数时传入该属性需要校验权限。 需要权限: ohos.permission.STORE_PERSISTENT_DATA |
ASSET_TAG_DATA_LABEL_CRITICAL_1 | 表示一个用户可自定义传入的字段,该字段不可被更新,其值为bytes类型。 |
ASSET_TAG_DATA_LABEL_CRITICAL_2 | 表示一个用户可自定义传入的字段,该字段不可被更新,其值为bytes类型。 |
ASSET_TAG_DATA_LABEL_CRITICAL_3 | 表示一个用户可自定义传入的字段,该字段不可被更新,其值为bytes类型。 |
ASSET_TAG_DATA_LABEL_CRITICAL_4 | 表示一个用户可自定义传入的字段,该字段不可被更新,其值为bytes类型。 |
ASSET_TAG_DATA_LABEL_NORMAL_1 | 表示一个用户可自定义传入的字段,该字段可被更新,其值为bytes类型。 |
ASSET_TAG_DATA_LABEL_NORMAL_2 | 表示一个用户可自定义传入的字段,该字段可被更新,其值为bytes类型。 |
ASSET_TAG_DATA_LABEL_NORMAL_3 | 表示一个用户可自定义传入的字段,该字段可被更新,其值为bytes类型。 |
ASSET_TAG_DATA_LABEL_NORMAL_4 | 表示一个用户可自定义传入的字段,该字段可被更新,其值为bytes类型。 |
ASSET_TAG_RETURN_TYPE | 表示查询关键资产时的返回类型,其值为uint32_t类型。 |
ASSET_TAG_RETURN_LIMIT | 表示查询关键资产时的最大返回数量,其值为uint32_t类型。 |
ASSET_TAG_RETURN_OFFSET | 表示查询关键资产时的偏移量,其值为uint32_t类型。 |
ASSET_TAG_RETURN_ORDERED_BY | 表示查询关键资产时的排序依据,其值为uint32_t类型。 |
ASSET_TAG_CONFLICT_RESOLUTION | 表示增加关键资产时的冲突处理策略,其值为uint32_t类型。 |
Asset_TagType
enum Asset_TagType
描述
关键资产属性的类型定义。
起始版本: 11
枚举值 | 描述 |
---|---|
ASSET_TYPE_BOOL | 标识关键资产属性的类型是bool。 |
ASSET_TYPE_NUMBER | 标识关键资产属性的类型是uint32_t。 |
ASSET_TYPE_BYTES | 标识关键资产属性的类型是byte数组。 |