1# IExecutor 2 3 4## **概述** 5 6定义执行器标准API接口。接口可用于获取执行器信息,获取凭据模版信息,注册口令,认证口令,删除口令等。 7 8**Since:** 9 103.2 11 12**Version:** 13 141.0 15 16**所属模块:** 17 18[HdfPinAuth](_hdf_pin_auth.md) 19 20 21## **汇总** 22 23 24### Public 成员函数 25 26 | 名称 | 描述 | 27| -------- | -------- | 28| [GetTemplateInfo](#gettemplateinfo)([in] unsigned long templateId, [out] struct TemplateInfo templateInfo) | 获取凭据模版信息。 | 29| [Cancel](#cancel)([in] unsigned long scheduleId) | 取消操作请求。 | 30| [GetExecutorInfo](#getexecutorinfo) ([out] struct ExecutorInfo executorInfo) | 获取执行器信息,口令认证服务将执行器注册到用户认证框架时需要通过该接口获取对应信息。 | 31| [OnRegisterFinish](#onregisterfinish) ([in] unsigned long[] templateIdList, [in] unsigned char[] frameworkPublicKey, [in] unsigned char[] extraInfo) | 完成执行器注册,对口令模版信息进行对账,用于删除无效的口令模板及相关信息。 | 32| [OnSetData](#onsetdata)([in] unsigned long scheduleId, [in] unsigned long authSubType, [in] unsigned char[] data) | 设置口令数据,口令认证驱动处理注册或认证口令请求时,如果口令数据由口令认证服务获取,需要通过该接口将口令数据传给口令认证驱动。 | 33| [Enroll](#enroll) ([in] unsigned long scheduleId, [in] unsigned char[] extraInfo, [in] IExecutorCallback callbackObj) | 注册口令。 | 34| [Authenticate](#authenticate) ([in] unsigned long scheduleId, [in] unsigned long templateId, [in] unsigned char[] extraInfo, [in] IExecutorCallback callbackObj) | 认证口令。 | 35| [Delete](#delete) ([in] unsigned long templateId) | 删除口令。 | 36| [SendCommand](#sendcommand) ([in] int commandId, [in] unsigned char[] extraInfo, [in] IExecutorCallback callbackObj) | 发送口令认证功能相关操作命令。 | 37 38 39## **成员函数说明** 40 41 42### Authenticate() 43 44 45``` 46IExecutor::Authenticate ([in] unsigned long scheduleId, [in] unsigned long templateId, [in] unsigned char[] extraInfo, [in] IExecutorCallback callbackObj ) 47``` 48 49**描述:** 50 51认证口令。 52 53**参数:** 54 55 | 名称 | 描述 | 56| -------- | -------- | 57| scheduleId | 调度ID,用于标识一次操作请求的调度过程。 | 58| templateId | 指定要认证的模版ID。 | 59| extraInfo | 其他相关信息,用于支持信息扩展。 | 60| callbackObj | 回调对象[IExecutorCallback](interface_pin_i_executor_callback.md)。 | 61 62**返回:** 63 640 表示操作成功。 65 66非0 表示操作失败。 67 68 69### Cancel() 70 71 72``` 73IExecutor::Cancel ([in] unsigned long scheduleId) 74``` 75 76**描述:** 77 78取消操作请求。 79 80**参数:** 81 82 | 名称 | 描述 | 83| -------- | -------- | 84| scheduleId | 调度ID,用于标识一次操作请求的调度过程。 | 85 86**返回:** 87 880 表示操作成功。 89 90非0 表示操作失败。 91 92 93### Delete() 94 95 96``` 97IExecutor::Delete ([in] unsigned long templateId) 98``` 99 100**描述:** 101 102删除口令。 103 104**参数:** 105 106 | 名称 | 描述 | 107| -------- | -------- | 108| templateId | 模版ID。 | 109 110**返回:** 111 1120 表示操作成功。 113 114非0 表示操作失败。 115 116 117### Enroll() 118 119 120``` 121IExecutor::Enroll ([in] unsigned long scheduleId, [in] unsigned char[] extraInfo, [in] IExecutorCallback callbackObj ) 122``` 123 124**描述:** 125 126注册口令。 127 128**参数:** 129 130 | 名称 | 描述 | 131| -------- | -------- | 132| scheduleId | 调度ID,用于标识一次操作请求的调度过程。 | 133| extraInfo | 其他相关信息,用于支持信息扩展。 | 134| callbackObj | 回调对象[IExecutorCallback](interface_pin_i_executor_callback.md)。 | 135 136**返回:** 137 1380 表示操作成功。 139 140非0 表示操作失败。 141 142 143### GetExecutorInfo() 144 145 146``` 147IExecutor::GetExecutorInfo ([out] struct ExecutorInfo executorInfo) 148``` 149 150**描述:** 151 152获取执行器信息,口令认证服务将执行器注册到用户认证框架时需要通过该接口获取对应信息。 153 154**参数:** 155 156 | 名称 | 描述 | 157| -------- | -------- | 158| executorInfo | 执行器信息[ExecutorInfo](_executor_info.md)。 | 159 160**返回:** 161 1620 表示操作成功。 163 164非0 表示操作失败。 165 166 167### GetTemplateInfo() 168 169 170``` 171IExecutor::GetTemplateInfo ([in] unsigned long templateId, [out] struct TemplateInfo templateInfo ) 172``` 173 174**描述:** 175 176获取凭据模版信息。 177 178**参数:** 179 180 | 名称 | 描述 | 181| -------- | -------- | 182| templateId | 凭据模版ID。 | 183| templateInfo | 凭据模版信息[TemplateInfo](_template_info.md)。 | 184 185**返回:** 186 1870 表示操作成功。 188 189非0 表示操作失败。 190 191 192### OnRegisterFinish() 193 194 195``` 196IExecutor::OnRegisterFinish ([in] unsigned long[] templateIdList, [in] unsigned char[] frameworkPublicKey, [in] unsigned char[] extraInfo ) 197``` 198 199**描述:** 200 201完成执行器注册,对口令模版信息进行对账,用于删除无效的口令模板及相关信息。 202 203**参数:** 204 205 | 名称 | 描述 | 206| -------- | -------- | 207| templateIdList | 用户认证框架内由该执行器注册的口令凭据模版ID列表。 | 208| frameworkPublicKey | 用户认证框架的公钥,用于校验用户认证框架私钥签名的信息。 | 209| extraInfo | 其他相关信息,用于支持信息扩展。 | 210 211**返回:** 212 2130 表示操作成功。 214 215非0 表示操作失败。 216 217 218### OnSetData() 219 220 221``` 222IExecutor::OnSetData ([in] unsigned long scheduleId, [in] unsigned long authSubType, [in] unsigned char[] data ) 223``` 224 225**描述:** 226 227设置口令数据,口令认证驱动处理注册或认证口令请求时,如果口令数据由口令认证服务获取,需要通过该接口将口令数据传给口令认证驱动。 228 229**参数:** 230 231 | 名称 | 描述 | 232| -------- | -------- | 233| scheduleId | 调度ID,用于标识一次操作请求的调度过程。 | 234| authSubType | 口令子类型,如六位数字PIN码等。 | 235| data | 口令数据。 | 236 237**返回:** 238 2390 表示操作成功。 240 241非0 表示操作失败。 242 243 244### SendCommand() 245 246 247``` 248IExecutor::SendCommand ([in] int commandId, [in] unsigned char[] extraInfo, [in] IExecutorCallback callbackObj ) 249``` 250 251**描述:** 252 253发送口令认证功能相关操作命令。 254 255**参数:** 256 257 | 名称 | 描述 | 258| -------- | -------- | 259| commandId | 操作命令ID。 | 260| extraInfo | 其他相关信息,用于支持信息扩展。 | 261| callbackObj | 回调对象[IExecutorCallback](interface_pin_i_executor_callback.md)。 | 262 263**返回:** 264 2650 表示操作成功。 266 267非0 表示操作失败。 268