OpenAtom OpenHarmony三方库(以下简称“三方库”或“包”),是经过验证可在OpenHarmony系统上可重复使用的软件组件,可帮助开发者快速开发OpenHarmony应用。三方库根据其开发语言分为2种,一种是使用JavaScript和TypeScript语言的三方库,通常以源码或OpenHarmony HAR/HSP的方式引入,在应用开发中使用。另一种是C和C++语言的三方库,通常在应用开发中通过N-API暴露JS接口的方式使用,或直接编译在OpenHarmony操作系统镜像中。
鼓励开发者通过 OpenHarmony三方库中心仓 (地址为: https://ohpm.openharmony.cn /,以 下简称 “ OHPM 平台”或“本平台”) 来分享自己的三方库(无论是否已经开源),能让更多的开发者免费使用 , 繁荣 OpenHarmony应用生态。本文将具体介绍三方库的发布与安全隐私检测。
创建 OpenHarmony三方库,支持通过DevEco Studio (以下简称 I DE )界面创建和 OHPM命令行创建两种方式。
方法1:通过IDE界面创建
在应用工程中,新创建 Module,选择"Static Library"模板,创建完成后,完善 oh-package.json5的信息,其中名称、版本等信息根据实际情况填写。

方法2:通过OHPM命令行创建
O HPM命令行创建 , 可通过三方中心仓指导文档操作 , 链接地址 : https://ohpm.openharmony.cn/#/cn/help/createfile
开发完库模块后,选中模块名,然后通过 DevEco Studio菜单栏的 Build > Make Module ${libraryName}进行编译构建,生成HAR/HSP。HAR/HSP可用于工程其它模块的引用,或将HAR/HSP上传至 OHPM平台 ,供其他开发者下载使用。若部分源码文件不需要打包至HAR/HSP中,可通过创建.ohpmignore文件,配置打包时要忽略的文件/文件夹。
(一) 敏感信息自检
将敏感信息发布到 本平台 可能会损害您的用户、危及您的开发基础架构、 造成 高昂 的 修复成本,并使您面临法律诉讼的风险。我们强烈建议在将三方库发布到 本平台 之前,删除敏感信息,例如私钥、密码、个人信息和信用卡数据等。
(二) O HPM 公钥配置
OpenHarmony 三方库中心仓 和 ohpm-cli 命令行工具的通信 ( 查询、下载、发布 ) ,需要建立可信的安全通道,可以按如下步骤进行配置 OHPM 公钥。
1. 在进行 publish 发布前,请先确保在 OpenHarmony 三方库中心仓上已经创建了帐号,且利用工具 ssh-keygen 生成公、私钥文件,可执行以下命令:
ssh-keygen -m PEM -t RSA -b 4096 -f ~/.ssh_ohpm/mykey
说明: ~/.ssh_ohpm/mykey 为私钥文件 mykey 的文件路径,按照实际情况指定。指定的私钥存储目录必须存在。追加了 .pub 后缀的相应公钥文件会在与私钥相同的目录中生成。
注意:OHPM 包管理器只支持加密密钥认证,请在生成公私钥时输入密码。
2. 请将公钥上传至OpenHarmony 三方库中心仓【个人中心】 - 【认证管理】下:点击页面左上角的 “ 新增 ” 按钮,并将公钥文件( mykey.pub )的内容粘贴到公钥输入框中。

3. 请将对应私钥文件路径配置到 .ohpmrc 文件中 key_path 字段上,可执行以下命令进行配置:
ohpm config set key_path ~/.ssh_ohpm/mykey
最后登录 本平台 ,从 【个人中心】页面中【复制发布码】,并配置到 . ohpm rc 文件中 publish_id 字段上,可执行如下命令:
ohpm config set publish_id your_publish_id
(三) 发布
执行如下命令发布HAR , <HAR 路径 > 请指定为待发布 HAR 的具体路径
ohpm publish <HAR路径>
publish 命令其他使用方法及相关规则,请参阅 ohpm publish 常用命令章节。
发布成功之后, 本平台 将会给您的 账号 发送 “ 创建上架审核单成功 ” 通知,您可登录 本平台 ,进入个人中心界面,关注【消息】通知。

(四) 等待审核
审核通过之后将会给您的 账号 发送 “ 审核通过 ” 通知,您可登录 本平台 个人中心管理界面,关注【个人中心】- 【消息】通知。
上架审核通过通知消息示例:

(五) 管理已发布的三方库
登录 本平台 ,在【个人中心】- 【 Package 】管理界面,查看已发布的三方库审核、上下架状态。

安全是 OHPM平台的核心原则之一,为此,我们将 基 于 OHPM平台 行为准则 对您的账号及使用该账号提交上架审核的内容。三方库审核流程主要包括自动化工具扫描和人工审核,对三方库进行监测和分析,以识别可能存在的恶意行为。

图 1 三方库审核流程
其中,工具扫描包括完整性检查与安全性检查两部分。完整性检查将基于 创建三方库 的具体要求进行三方库目录、内容审核,如果您提交的三方库缺少必要性文件,三方库将被退回,请您根据提示完善三方库内容后再次提交上架审核;安全性检查将 结合目前已有的安全检测工具,对三方库进行定期检测。支持的风险类型包括:
1. 安全漏洞检测
安全漏洞检测工具可以对三方库进行实时漏洞检测,并融合网络环境、威胁情报、漏洞影响、 poc、时间因子、CVSS评分等多个风险评估因子对漏洞进行风险评估,以便及时对高危漏洞进行处理或修复,确保尽快实现漏洞的发现、修复及验证工作。
2. 恶意软件检测
安全检测工具利用恶意性聚类、深层关联关系挖掘的手段,针对特种木马及恶意程序进行检查分析,可以检测多种样本类型,能识别出伪装成图片或其他正常文件的木马,以及各种恶意软件包。然后利用依赖检测分析发现项目、软件依赖关系,帮助企业发现使用的开源包(开源库)的依赖项,以及当前存在的已知安全漏洞,提高三方库的透明度和安全性。如果发现安全隐患,三方库将被退回,并提示审核不通过的原因;
3 . 其他安全扫描
除以上两种安全检测 , 三方包在上架前必须经过以下 几 个维度扫描 :
( 1) 敏感函数的调用:通过构建所有潜在的调用栈,分析程序的敏感行为。
( 2) 权限滥用:包含敏感权限,高风险权限的声明,声明未使用,或者使用未声明。
( 3) 存在风险的网络连接:包括URL,IP检测。
( 4) 数据跨境的检查:跨境分级,规避法律风险。
( 5) 内容的合规:比如内嵌图片,文字是否存在黄赌毒,涉政,涉敏等。
( 6) 个人数据的搜集:围绕工信部定义的个人数据列表,进行分析处理。
( 7) 污点分析:通过污点分析技术,得出个人数据是否存在被发送出去的可能。
( 8 ) SDK侦测:源码级别和配置文件级别的SCA 。
( 9 ) 关联启动和常驻行为 : 检测非用户主动发起的关联启动行为 , 或者退出进程常驻行为 。
人工复审会对提交的三方库进行功能性测试,如果三方库没有真正的功能实现或其功能无法在 OpenHarmony上 验证,将被视为无效三方库,三方库将被退回,并提示审核不通过的原因。
更多信息请参考 : https://ohpm.openharmony.cn/#/cn/help/introduction
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70011554/viewspace-2995074/ ,如需转载,请注明出处,否则将追究法律责任。