阿里云首页 IoT安全中心

SOC configure.ini配置介绍

configure.ini是安全SDK-SOC的配置文件,位于SDK的packages目录下,保存服务程序的基本配置。本文主要介绍了文件中相关参数及使用案例。

参数说明

参数名称

描述

DPS_DATA

DPS服务器程序存放数据的路径,请配置到操作系统的可读写分区的文件夹路径下。

DPS_PROFILE

DPS-SDK的分类,可配置为以下3类:

  • standard:普通的物联网设备使用的SDK类型。

  • server:网关设备推荐使用的SDK类。

  • lite:轻量级的嵌入式物联网设备推荐使用的SDK类型。

DPS_DEBUG

开启或者关闭DPS服务日志,日志功能开启之后日志将保存在$DPS_DATA/log下。

  • 0:关闭日志功能。

  • 1:开启日志功能。

NUM_LOGS

DPS服务日志最大保存天数,仅保存最近$NUM_LOGS天的日志文件。

LOG_FILE_SIZE

单个日志文件最大限制,单位为KB。

PROTECTED_PATH

目标设备取证扫描的自定义路径,在此路径之下的所有文件将被取证,建议配置成目标设备上可执行程序、共享库、配置文件等重要文件存放的目录。支持配置多个路径,中间用冒号(:)隔开。

MANAGED_VERSION

表示厂商固件版本号信息。格式为一段描述文本,按照不同情况,配置方法有3种,请参见MANAGED_VERSION使用示例

说明

当前版本号字符串限制最长128字节。

MANAGED_ID

表示该设备在厂商自有设备管理系统中的唯一标识号。格式为一段描述文本,按照不同情况,配置方法有4种,请参见MANAGED_ID使用示例

说明

当前设备管理ID字符串限制最长128字节。

MANAGED_VERSION使用示例

  1. 如果将固件版本号直接配置在configure.ini当中,MANAGED_VERSION的值即为固件版本号的文本。

    例如:MANAGED_VERSION=V1.0.0

  2. 如果设备厂商始终使用本地文件系统来追溯固件版本,这段文本是一个标准URI,它的格式为:file://<file_path>?pattern=<pattern_string>。其中file://后面紧接着固件版本号所寄存的文件绝对路径,为标准Unix文件路径格式URI的query部分(“?”符号后面的部分),query字段只有一个,query key为固定的“pattern=”,其值为固件版本号寄存文件内容当中进行正则匹配的正则表达式。

    例如:MANAGED_VERSION=file:///etc/version.txt?pattern=.%2b

    说明

    在URI字符串当中填写非字母和非数字ASCII符号时需要做URI encode,详细的encode表请参见ASCII符号表

  3. 在Android系统当中,如果需要使用property来获取版本号,这段文本是一个标准URI,它的格式为:

    property://<property_name>,其中<property_name>表示Android系统当中存放固件版本号的属性名称。

    例如:MANAGED_VERSION=property://ro.build.id

MANAGED_ID使用示例

  1. 如果将设备管理ID直接配置在configure.ini当中,那么MANAGED_ID的值即为设备管理ID的文本。

    例如:MANAGED_ID=serial_01234****

  2. 如果设备厂商始终使用本地文件系统来追溯固件版本,这段文本是一个标准URI,它的格式为:

    file://<file_path>?pattern=<pattern_string>。其中file://后面紧接着设备管理ID所寄存的文件绝对路径,为标准Unix文件路径格式URI的query部分(“?”符号后面的部分),query字段只有一个,query key为固定的“pattern=”,其值为设备管理ID寄存文件内容当中进行正则匹配的正则表达式。

    例如:MANAGED_ID=file:///etc/managed_id.txt?pattern=.%2b

  3. 在Android系统当中,使用property来获取设备管理ID ,此文本是一个标准的URI,它的格式为:

    property://<property_name>,其中<property_name>表示Android系统当中存放设备管理ID的属性名称。

    例如:MANAGED_ID=property://ro.product.vendor.device

  4. 对于可通过命令行返回结果获取厂商硬件ID的场景,它的格式为:

    cmdline://<cmdline_full_path>?pattern=<pattern_string>

    例如:MANAGED_ID=cmdline:///bin/bash%20-C%20/usr/local/bin/get_sn.sh?pattern=.%2b

完整示例

所有参数的完整示例如下:

[system]
DPS_DATA=/data/dps
DPS_PROFILE=standard
DPS_DEBUG=0
NUM_LOGS=3
LOG_FILE_SIZE=10240
[attestation]
PROTECTED_PATH=/home/usr/lib:/home/usr/lib64
[device]
MANAGED_VERSION=file:///etc/version.txt:.%2b
MANAGED_ID=serial_01234567890

假设用户通过configure.ini的MANAGED_VERSION和MANAGED_ID分别配置managed_version和managed_id文件,需要注意权限设置,才能确保安全运营管理的全部功能正常运作。

文件说明

权限

用户

managed version文件

644

root

root

managed version文件

644

root

root

首页 IoT安全中心 设备接入最佳实践 SOC configure.ini配置介绍