未验证 提交 476a7c3a 编写于 作者: O openharmony_ci 提交者: Gitee

!10080 FIX: 添加服务配置selinux标签指导

Merge pull request !10080 from cheng_jinsong/0928
......@@ -3,20 +3,19 @@
系统参数(SystemParameter)是为各系统服务提供的简单易用的键值对访问接口,各个系统服务可以定义系统参数来描述该服务的状态信息,或者通过系统参数来改变系统服务的行为。其基本操作原语为get和set,通过get可以查询系统参数的值,通过set可以修改系统参数的值。
详细的系统参数设计原理及定义可参考
[系统参数](../../../device-dev/subsystems/subsys-boot-init-sysparam.md)
> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:**
> - 本模块首批接口从API version 6开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
> - 由于系统参数都是各个系统服务的内部信息和控制参数,每个系统参数都有各自不同的DAC和MAC访问控制权限,三方应用不能使用此类接口。
## 导入模块
```ts
import parameter from '@ohos.systemparameter'
import systemparameter from '@ohos.systemparameter'
```
## parameter.getSync
## systemparameter.getSync
getSync(key: string, def?: string): string
......@@ -41,15 +40,14 @@ getSync(key: string, def?: string): string
```ts
try {
var info = parameter.getSync("const.ohos.apiversion");
var info = systemparameter.getSync("const.ohos.apiversion");
console.log(JSON.stringify(info));
}catch(e){
console.log("getSync unexpected error: " + e);
}
```
## parameter.get
## systemparameter.get
get(key: string, callback: AsyncCallback<string>): void
......@@ -68,7 +66,7 @@ get(key: string, callback: AsyncCallback<string>): void
```ts
try {
parameter.get("const.ohos.apiversion", function (err, data) {
systemparameter.get("const.ohos.apiversion", function (err, data) {
if (err == undefined) {
console.log("get test.parameter.key value success:" + data)
} else {
......@@ -79,8 +77,7 @@ try {
}
```
## parameter.get
## systemparameter.get
get(key: string, def: string, callback: AsyncCallback<string>): void
......@@ -100,7 +97,7 @@ get(key: string, def: string, callback: AsyncCallback<string>): void
```ts
try {
parameter.get("const.ohos.apiversion", "default", function (err, data) {
systemparameter.get("const.ohos.apiversion", "default", function (err, data) {
if (err == undefined) {
console.log("get test.parameter.key value success:" + data)
} else {
......@@ -112,8 +109,7 @@ try {
}
```
## parameter.get
## systemparameter.get
get(key: string, def?: string): Promise<string>
......@@ -138,7 +134,7 @@ get(key: string, def?: string): Promise<string>
```ts
try {
var p = parameter.get("const.ohos.apiversion");
var p = systemparameter.get("const.ohos.apiversion");
p.then(function (value) {
console.log("get test.parameter.key success: " + value);
}).catch(function (err) {
......@@ -149,8 +145,7 @@ try {
}
```
## parameter.setSync
## systemparameter.setSync
setSync(key: string, value: string): void
......@@ -165,18 +160,22 @@ setSync(key: string, value: string): void
| key | string | 是 | 待设置的系统参数Key。 |
| value | string | 是 | 待设置的系统参数值。 |
> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:**
> - 此接口只能用于系统应用的参数设置。
> - 所授权的系统应用需要配置对应selinux和dac规则,具体配置方法请参照系统参数指导文档:[系统参数](https://gitee.com/openharmony/docs/blob/master/zh-cn/device-dev/subsystems/subsys-boot-init-sysparam.md)。
**示例:**
```ts
try {
parameter.setSync("test.parameter.key", "default");
systemparameter.setSync("test.parameter.key", "default");
}catch(e){
console.log("set unexpected error: " + e);
}
```
## parameter.set
## systemparameter.set
set(key: string, value: string, callback: AsyncCallback<void>): void
......@@ -192,11 +191,15 @@ set(key: string, value: string, callback: AsyncCallback<void>): void
| value | string | 是 | 待设置的系统参数值。 |
| callback | AsyncCallback<void> | 是 | 回调函数。 |
> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:**
> - 此接口只能用于系统应用的参数设置。
> - 所授权的系统应用需要配置对应selinux和dac规则,具体配置方法请参照系统参数指导文档:[系统参数](https://gitee.com/openharmony/docs/blob/master/zh-cn/device-dev/subsystems/subsys-boot-init-sysparam.md)。
**示例:**
```ts
try {
parameter.set("test.parameter.key", "testValue", function (err, data) {
systemparameter.set("test.parameter.key", "testValue", function (err, data) {
if (err == undefined) {
console.log("set test.parameter.key value success :" + data)
} else {
......@@ -207,8 +210,7 @@ try {
}
```
## parameter.set
## systemparameter.set
set(key: string, value: string): Promise<void>
......@@ -229,11 +231,15 @@ set(key: string, value: string): Promise<void>
| -------- | -------- |
| Promise<void> | Promise示例,用于异步获取结果。 |
> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:**
> - 此接口只能用于系统应用的参数设置。
> - 所授权的系统应用需要配置对应selinux和dac规则,具体配置方法请参照系统参数指导文档:[系统参数](https://gitee.com/openharmony/docs/blob/master/zh-cn/device-dev/subsystems/subsys-boot-init-sysparam.md)
**示例:**
```ts
try {
var p = para.set("test.parameter.key", "testValue");
var p = systemparameter.set("test.parameter.key", "testValue");
p.then(function (value) {
console.log("set test.parameter.key success: " + value);
}).catch(function (err) {
......@@ -242,4 +248,4 @@ try {
}catch(e){
console.log("set unexpected error: " + e);
}
```
```
\ No newline at end of file
......@@ -89,6 +89,19 @@
"secon" : "u:r:distributedsche:s0" // 服务的SELinux标签, "u:r:distributedsche:s0"为要设置的SELinux标签信息
}
```
- 添加selinux标签
服务配置selinux策略,需要通过"secon"为服务添加selinux标签。例如为watchdog_service添加selinux标签,如下:
```
"services" : [{
"name" : "watchdog_service",
"secon" : "u:r:watchdog_service:s0"
}]
```
对应的需要在selinux中定义此标签,定义方法与配置文件参照selinux指导文档
- init FD代持(仅标准系统以上提供)
FD代持是按需启动的一个辅助扩展机制,按需启动进程可以保持退出前的fd状态句柄不丢失。按需启动进程退出前可将fd发送给init代持,再次启动后再从init获取fd。
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册