• Home
Name Date Size #Lines LOC

..--

AppScope/22-Oct-2025-5550

certmanager/22-Oct-2025-12,53211,725

doc/image/22-Oct-2025-

entry/22-Oct-2025-378311

hvigor/22-Oct-2025-3621

patches/22-Oct-2025-1414

signature/22-Oct-2025-9088

BUILD.gnD22-Oct-20251.6 KiB4944

LICENSED22-Oct-20259.9 KiB177150

OAT.xmlD22-Oct-20254.8 KiB7124

README.mdD22-Oct-20257.5 KiB134100

build-profile.json5D22-Oct-20251.3 KiB5454

bundle.jsonD22-Oct-2025905 3736

hvigorfile.jsD22-Oct-2025792 161

hvigorwD22-Oct-20252 KiB6253

oh-package.json5D22-Oct-2025915 2827

publicity.xmlD22-Oct-2025810 162

README.md

1# 用户证书管理部件
2
3## 简介
4
5用户证书管理是OpenHarmony中预置的系统应用,向用户提供授权证书(Certificate Authority,以下简称CA证书)和凭据的管理功能,主要的功能包含:
6
71、系统预置CA证书的查看;
8
92、用户CA证书的安装、查看、启用禁用与卸载;
10
113、用户证书凭据的安装、查看、授权管理与卸载;
12
134、系统证书凭据(WLAN/VPN证书凭据)的安装、查看、卸载功能;
14
15用户证书管理部件架构如下图所示:
16
17<div align=center>
18<img src=doc/image/image-20220727141455437.png width=80% align=center/>
19</div>
20
21用户证书管理应用与外部模块的交互包括:
22
23* 证书管理服务:调用证书管理服务接口,进行系统CA证书、用户CA证书、系统证书凭据和用户证书凭据的管理;
24* 文件Picker:在使用用户证书管理应用进行CA证书、凭据安装时,通过文件picker选择设备存储中包含的证书、凭据进行安装;
25* 用户认证:在使用用户证书管理应用进行CA证书安装时,如果用户设置了锁屏密码,则需要调用用户认证模块对锁屏密码进行校验;
26* 包管理:调用包管理相关接口,获取用户证书凭据授权的应用名称及应用图标,以展示在用户证书管理应用界面中。
27
28## 目录
29
30```
31├── BUILD.gn                                                   # 部件构建文件
32├── build-profile.json5                                        # 编译构建文件
33├── bundle.json                                                # 部件构建入口
34├── certmanager                                                # 业务证书管理模块目录
35    └── src
36        └── main
37            ├── ets                                            # 代码目录
38            │   ├── Application                                # AbilityStage类实现
39            │   ├── MainAbility                                # Ability类实现
40            │   ├── model                                      # 依赖的外部接口实现
41            │   │   ├── BundleModel.ets                        # 获取应用别名及图标
42            │   │   ├── CertManagerVo                          # 内部使用的结构体
43            │   │   ├── CertMangerModel.ets                    # 调用证书管理服务的接口实现
44            │   │   ├── CheckUserAuthModel.ets                 # 认证校验
45            │   │   ├── FileIoModel.ets                        # 文件读取
46            │   │   └── PreventScreenshotsModel.ets            # 输入密码时防录屏
47            │   ├── pages                                      # 页面实现
48            │   │   ├── cerEvidenceFa.ets                      # 凭据页面
49            │   │   ├── certInstallFromStorage.ets             # 安装证书、凭据页面
50            │   │   ├── certManagerFa.ets                      # 用户证书管理主页面
51            │   │   ├── certPwdInput.ets                       # 输入密码页面
52            │   │   ├── detail                                 # 详情目录
53            │   │   │   ├── AuthorizedAppManagementPage.ets    # 被授权的应用列表详情界面
54            │   │   │   ├── CaSystemDetailPage.ets             # 系统CA详情界面
55            │   │   │   ├── CaUserDetailPage.ets               # 用户CA详情界面
56            │   │   │   ├── CredSystemDetailPage.ets           # 系统凭据性情界面
57            │   │   │   └── CredUserDetailPage.ets             # 用户凭据详情界面
58            │   │   ├── picker                                 # 半模态界面
59            │   │   │   ├── CaCertPage.ets                     # CA证书半模态页面
60            │   │   │   ├── CertManagerSheetFa.ets             # 半模态页面入口
61            │   │   │   ├── CredListPage.ets                   # 凭据半模态页面
62            │   │   │   └── InstallPage.ets                    # 安装证书、凭据半模态页面
63            │   │   ├── requestAuth.ets                        # 应用请求授权界面
64            │   │   └── trustedCa.ets                          # CA证书界面
65            │   └── presenter                                  # 页面管理、CA和凭据列表管理实现
66            │       ├── CmAppCredAuthPresenter.ets             # 授权应用管理
67            │       ├── CmFaPresenter.ets                      # 主页面管理
68            │       ├── CmInstallPresenter.ets                 # 安装页面管理
69            │       ├── CmShowAppCredPresenter.ets             # 用户凭据列表管理
70            │       ├── CmShowSysCaPresenter.ets               # 系统凭据列表管理
71            │       ├── CmShowSysCredPresenter.ets             # 系统CA列表管理
72            │       └── CmShowUserCaPresenter.ets              # 用户CA列表管理
73            └── resources                                      # 资源文件目录
74├── entry                                                      # entry模块目录
75├── hvigor                                                     # 编译构建文件
76├── hvigorfile.js                                              # 编译构建文件
77├── hvigorw                                                    # 编译构建文件
78├── LICENSE                                                    # 许可文件
79├── oh-package.json5                                           # 编译构建文件
80└── signature                                                  # 签名profile文件
81```
82
83## 编译构建
84
85**单仓编译**
86
87以RK3568为例,在OpenHarmony源码根目录下调用以下指令,单独编译用户证书管理部件。
88
89```shell
90./build.sh --product-name rk3568 --ccache --build-target user_certificate_manager
91```
92
93> **说明:**
94>
95> --product-name:产品名称,例如rk3568。
96>
97> --ccache:编译时使用缓存功能。
98>
99> --build-target: 编译的部件名称。
100
101**应用安装**
102
103编译完成后,将会在out/rk3568/obj/applications/standard/user_certificate_manager/user_cert_manager目录下生成CertificateManager.hap文件,将该文件拷贝到本地磁盘中(例如D:\),通过以下命令将应用安装到设备上:
104
105```shell
106D:\>hdc install D:\CertificateManager.hap
107[Info]App install path:D:\CertificateManager.hap, queuesize:0, msg:install bundle successfully.
108AppMod finish
109```
110
111## 说明
112
113### 接口说明
114
115不涉及。
116
117### 使用场景
118
119通过设置->隐私->证书与凭据,进入用户证书管理应用界面。使用场景包括如下几个方面:
120
1211、WLAN和VPN系统服务在进行连接配置时,可以调用证书管理服务接口安装、读取和使用系统证书凭据。
122
1232、应用开发者在校验HTTPS服务器证书时,需要使用系统预置的CA证书或用户CA证书。
124
1253、应用开发者在对Email邮件或文档进行签名时,可以使用用户证书凭据进行签名。
126
127
128## 相关仓
129
130[security_certificate_manager](https://gitee.com/openharmony/security_certificate_manager)
131
132[**applications_user_certificate_manager**](https://gitee.com/openharmony-sig/applications_user_certificate_manager)
133
134