Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Docs
提交
a39fb478
D
Docs
项目概览
OpenHarmony
/
Docs
大约 1 年 前同步成功
通知
159
Star
292
Fork
28
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
Docs
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
a39fb478
编写于
7月 07, 2023
作者:
O
openharmony_ci
提交者:
Gitee
7月 07, 2023
浏览文件
操作
浏览文件
下载
差异文件
!20466 iptables rule
Merge pull request !20466 from 姚保华/master
上级
88a6b168
83e78271
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
426 addition
and
5 deletion
+426
-5
zh-cn/application-dev/reference/apis/js-apis-enterprise-adminManager.md
...ion-dev/reference/apis/js-apis-enterprise-adminManager.md
+4
-4
zh-cn/application-dev/reference/apis/js-apis-enterprise-networkManager.md
...n-dev/reference/apis/js-apis-enterprise-networkManager.md
+422
-1
未找到文件。
zh-cn/application-dev/reference/apis/js-apis-enterprise-adminManager.md
浏览文件 @
a39fb478
...
@@ -949,10 +949,10 @@ adminManager.unsubscribeManagedEvent(wantTemp, events).then(() => {
...
@@ -949,10 +949,10 @@ adminManager.unsubscribeManagedEvent(wantTemp, events).then(() => {
**系统API**
: 此接口为系统接口。
**系统API**
: 此接口为系统接口。
| 名称 | 类型 |
可读 | 可写
| 说明 |
| 名称 | 类型 |
必填
| 说明 |
| ----------- | --------| ---- | -----
| -----
-------------------------- |
| ----------- | --------| ---- | ------------------------------- |
| name | string | 是 |
否 |
表示设备管理员应用所属企业的名称。 |
| name | string | 是 | 表示设备管理员应用所属企业的名称。 |
| description | string | 是 |
否 |
表示设备管理员应用所属企业的描述。 |
| description | string | 是 | 表示设备管理员应用所属企业的描述。 |
## AdminType
## AdminType
...
...
zh-cn/application-dev/reference/apis/js-apis-enterprise-networkManager.md
浏览文件 @
a39fb478
...
@@ -487,4 +487,425 @@ networkManager.setNetworkInterfaceDisabled(wantTemp, 'eth0', true).then(() => {
...
@@ -487,4 +487,425 @@ networkManager.setNetworkInterfaceDisabled(wantTemp, 'eth0', true).then(() => {
}).
catch
((
err
)
=>
{
}).
catch
((
err
)
=>
{
console
.
error
(
`Failed to set network interface disabled. Code:
${
err
.
code
}
, message:
${
err
.
message
}
`
);
console
.
error
(
`Failed to set network interface disabled. Code:
${
err
.
code
}
, message:
${
err
.
message
}
`
);
});
});
```
```
\ No newline at end of file
## networkManager.addIptablesFilterRule
addIptablesFilterRule(admin: Want, filterRule: AddFilterRule, callback: AsyncCallback
\<
void>): void
指定设备管理员应用添加网络包过滤规则,使用callback形式返回。
**需要权限:**
ohos.permission.ENTERPRISE_MANAGE_NETWORK
**系统能力:**
SystemCapability.Customization.EnterpriseDeviceManager
**系统API**
: 此接口为系统接口。
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ---------------------------------------- | ---- | ------------------------------- |
| admin |
[
Want
](
js-apis-app-ability-want.md
)
| 是 | 设备管理员应用。 |
| filterRule |
[
AddFilterRule
](
#addfilterrule
)
| 是 | 添加网络包过滤规则。 |
| callback | AsyncCallback
<
void
>
| 是 | 回调函数。当接口调用成功,err为null,否则err为错误对象。 |
**错误码**
:
以下的错误码的详细介绍请参见
[
企业设备管理错误码
](
../errorcodes/errorcode-enterpriseDeviceManager.md
)
| 错误码ID | 错误信息 |
| ------- | ---------------------------------------------------------------------------- |
| 9200001 | the application is not an administrator of the device. |
| 9200002 | the administrator application does not have permission to manage the device. |
**示例:**
```
js
let
wantTemp
=
{
bundleName
:
'
com.example.myapplication
'
,
abilityName
:
'
EntryAbility
'
,
};
let
filterRule
=
{
"
ruleNo
"
:
1
,
"
srcAddr
"
:
"
192.168.1.1-192.188.22.66
"
,
"
destAddr
"
:
"
10.1.1.1
"
,
"
srcPort
"
:
"
8080
"
,
"
destPort
"
:
"
8080
"
,
"
uid
"
:
"
9696
"
,
"
method
"
:
networkManager
.
AddMethod
.
APPEND
,
"
direction
"
:
networkManager
.
Direction
.
OUTPUT
,
"
action
"
:
networkManager
.
Action
.
DENY
,
"
protocol
"
:
networkManager
.
Protocol
.
UDP
,
}
networkManager
.
addIptablesFilterRule
(
wantTemp
,
filterRule
,
(
err
)
=>
{
if
(
err
)
{
console
.
error
(
`Failed to set iptables filter rule. Code:
${
err
.
code
}
, message:
${
err
.
message
}
`
);
return
;
}
console
.
info
(
`Succeeded in setting iptables filter rule`
);
});
```
## networkManager.addIptablesFilterRule
addIptablesFilterRule(admin: Want, filterRule: AddFilterRule): Promise
\<
void>
指定设备管理员应用添加网络包过滤规则,使用Promise形式返回。
**需要权限:**
ohos.permission.ENTERPRISE_MANAGE_NETWORK
**系统能力:**
SystemCapability.Customization.EnterpriseDeviceManager
**系统API**
: 此接口为系统接口。
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ----- | ----------------------------------- | ---- | ------- |
| admin |
[
Want
](
js-apis-app-ability-want.md
)
| 是 | 设备管理员应用。 |
| filterRule |
[
AddFilterRule
](
#addfilterrule
)
| 是 | 添加网络包过滤规则。 |
**返回值:**
| 类型 | 说明 |
| --------------------- | ------------------------- |
| Promise
<
void
>
| 无返回结果的Promise对象。当添加网络包过滤规则失败时抛出错误对象。 |
**错误码**
:
以下的错误码的详细介绍请参见
[
企业设备管理错误码
](
../errorcodes/errorcode-enterpriseDeviceManager.md
)
| 错误码ID | 错误信息 |
| ------- | ---------------------------------------------------------------------------- |
| 9200001 | the application is not an administrator of the device. |
| 9200002 | the administrator application does not have permission to manage the device. |
**示例:**
```
js
let
wantTemp
=
{
bundleName
:
'
com.example.myapplication
'
,
abilityName
:
'
EntryAbility
'
,
};
let
filterRule
=
{
"
ruleNo
"
:
1
,
"
srcAddr
"
:
"
192.168.1.1-192.188.22.66
"
,
"
destAddr
"
:
"
10.1.1.1
"
,
"
srcPort
"
:
"
8080
"
,
"
destPort
"
:
"
8080
"
,
"
uid
"
:
"
9696
"
,
"
method
"
:
networkManager
.
AddMethod
.
APPEND
,
"
direction
"
:
networkManager
.
Direction
.
OUTPUT
,
"
action
"
:
networkManager
.
Action
.
DENY
,
"
protocol
"
:
networkManager
.
Protocol
.
UDP
,
}
networkManager
.
addIptablesFilterRule
(
wantTemp
,
filterRule
).
then
(()
=>
{
console
.
info
(
`Succeeded in setting iptables filter rule`
);
}).
catch
((
err
)
=>
{
console
.
error
(
`Failed to set iptables filter rule. Code:
${
err
.
code
}
, message:
${
err
.
message
}
`
);
});
```
## networkManager.removeIptablesFilterRule
removeIptablesFilterRule(admin: Want, filterRule: RemoveFilterRule, callback: AsyncCallback
\<
void>): void
指定设备管理员应用移除网络包过滤规则,使用callback形式返回。
**需要权限:**
ohos.permission.ENTERPRISE_MANAGE_NETWORK
**系统能力:**
SystemCapability.Customization.EnterpriseDeviceManager
**系统API**
: 此接口为系统接口。
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ---------------------------------------- | ---- | ------------------------------- |
| admin |
[
Want
](
js-apis-app-ability-want.md
)
| 是 | 设备管理员应用。 |
| filterRule |
[
RemoveFilterRule
](
#removefilterrule
)
| 是 | 移除网络包过滤规则。 |
| callback | AsyncCallback
<
void
>
| 是 | 回调函数。当接口调用成功,err为null,否则err为错误对象。 |
**错误码**
:
以下的错误码的详细介绍请参见
[
企业设备管理错误码
](
../errorcodes/errorcode-enterpriseDeviceManager.md
)
| 错误码ID | 错误信息 |
| ------- | ---------------------------------------------------------------------------- |
| 9200001 | the application is not an administrator of the device. |
| 9200002 | the administrator application does not have permission to manage the device. |
**示例:**
```
js
let
wantTemp
=
{
bundleName
:
'
com.example.myapplication
'
,
abilityName
:
'
EntryAbility
'
,
};
let
filterRule
=
{
"
srcAddr
"
:
"
192.168.1.1-192.188.22.66
"
,
"
destAddr
"
:
"
10.1.1.1
"
,
"
srcPort
"
:
"
8080
"
,
"
destPort
"
:
"
8080
"
,
"
uid
"
:
"
9696
"
,
"
direction
"
:
networkManager
.
Direction
.
OUTPUT
,
"
action
"
:
networkManager
.
Action
.
DENY
,
"
protocol
"
:
networkManager
.
Protocol
.
UDP
,
}
networkManager
.
removeIptablesFilterRule
(
wantTemp
,
filterRule
,
(
err
)
=>
{
if
(
err
)
{
console
.
error
(
`Failed to remove iptables filter rule. Code:
${
err
.
code
}
, message:
${
err
.
message
}
`
);
return
;
}
console
.
info
(
`Succeeded in removing iptables filter rule`
);
});
```
## networkManager.removeIptablesFilterRule
removeIptablesFilterRule(admin: Want, filterRule: RemoveFilterRule): Promise
\<
void>
指定设备管理员应用移除网络包过滤规则,使用Promise形式返回。
**需要权限:**
ohos.permission.ENTERPRISE_MANAGE_NETWORK
**系统能力:**
SystemCapability.Customization.EnterpriseDeviceManager
**系统API**
: 此接口为系统接口。
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ----- | ----------------------------------- | ---- | ------- |
| admin |
[
Want
](
js-apis-app-ability-want.md
)
| 是 | 设备管理员应用。 |
| filterRule |
[
RemoveFilterRule
](
#removefilterrule
)
| 是 | 移除网络包过滤规则。 |
**返回值:**
| 类型 | 说明 |
| --------------------- | ------------------------- |
| Promise
<
void
>
| 无返回结果的Promise对象。当移除网络包过滤规则失败时抛出错误对象。 |
**错误码**
:
以下的错误码的详细介绍请参见
[
企业设备管理错误码
](
../errorcodes/errorcode-enterpriseDeviceManager.md
)
| 错误码ID | 错误信息 |
| ------- | ---------------------------------------------------------------------------- |
| 9200001 | the application is not an administrator of the device. |
| 9200002 | the administrator application does not have permission to manage the device. |
**示例:**
```
js
let
wantTemp
=
{
bundleName
:
'
com.example.myapplication
'
,
abilityName
:
'
EntryAbility
'
,
};
let
filterRule
=
{
"
srcAddr
"
:
"
192.168.1.1-192.188.22.66
"
,
"
destAddr
"
:
"
10.1.1.1
"
,
"
srcPort
"
:
"
8080
"
,
"
destPort
"
:
"
8080
"
,
"
uid
"
:
"
9696
"
,
"
direction
"
:
networkManager
.
Direction
.
OUTPUT
,
"
action
"
:
networkManager
.
Action
.
DENY
,
"
protocol
"
:
networkManager
.
Protocol
.
UDP
,
}
networkManager
.
removeIptablesFilterRule
(
wantTemp
,
filterRule
).
then
(()
=>
{
console
.
info
(
`Succeeded in removing iptables filter rule`
);
}).
catch
((
err
)
=>
{
console
.
error
(
`Failed to remove iptables filter rule. Code:
${
err
.
code
}
, message:
${
err
.
message
}
`
);
});
```
## networkManager.listIptablesFilterRules
listIptablesFilterRules(admin: Want, callback: AsyncCallback
\<
string>): void
指定设备管理员应用获取网络包过滤规则,使用callback形式返回。
**需要权限:**
ohos.permission.ENTERPRISE_MANAGE_NETWORK
**系统能力:**
SystemCapability.Customization.EnterpriseDeviceManager
**系统API**
: 此接口为系统接口。
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ---------------------------------------- | ---- | ------------------------------- |
| admin |
[
Want
](
js-apis-app-ability-want.md
)
| 是 | 设备管理员应用。 |
| callback | AsyncCallback
<
string
>
| 是 | 回调函数。当接口调用成功,err为null,否则err为错误对象。 |
**错误码**
:
以下的错误码的详细介绍请参见
[
企业设备管理错误码
](
../errorcodes/errorcode-enterpriseDeviceManager.md
)
| 错误码ID | 错误信息 |
| ------- | ---------------------------------------------------------------------------- |
| 9200001 | the application is not an administrator of the device. |
| 9200002 | the administrator application does not have permission to manage the device. |
**示例:**
```
js
let
wantTemp
=
{
bundleName
:
'
com.example.myapplication
'
,
abilityName
:
'
EntryAbility
'
,
};
networkManager
.
listIptablesFilterRules
(
wantTemp
,
(
err
,
result
)
=>
{
if
(
err
)
{
console
.
error
(
`Failed to get iptables filter rule. Code:
${
err
.
code
}
, message:
${
err
.
message
}
`
);
return
;
}
console
.
info
(
`Succeeded in getting iptables filter rule, result :
${
result
}
`
);
});
```
## networkManager.listIptablesFilterRules
listIptablesFilterRules(admin: Want): Promise
\<
string>
指定设备管理员应用获取网络包过滤规则,使用Promise形式返回。
**需要权限:**
ohos.permission.ENTERPRISE_MANAGE_NETWORK
**系统能力:**
SystemCapability.Customization.EnterpriseDeviceManager
**系统API**
: 此接口为系统接口。
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ----- | ----------------------------------- | ---- | ------- |
| admin |
[
Want
](
js-apis-app-ability-want.md
)
| 是 | 设备管理员应用。 |
**返回值:**
| 类型 | 说明 |
| --------------------- | ------------------------- |
| Promise
<
string
>
| Promise对象,返回网络包过滤规则。 |
**错误码**
:
以下的错误码的详细介绍请参见
[
企业设备管理错误码
](
../errorcodes/errorcode-enterpriseDeviceManager.md
)
| 错误码ID | 错误信息 |
| ------- | ---------------------------------------------------------------------------- |
| 9200001 | the application is not an administrator of the device. |
| 9200002 | the administrator application does not have permission to manage the device. |
**示例:**
```
js
let
wantTemp
=
{
bundleName
:
'
com.example.myapplication
'
,
abilityName
:
'
EntryAbility
'
,
};
networkManager
.
listIptablesFilterRules
(
wantTemp
).
then
((
result
)
=>
{
console
.
info
(
`Succeeded in getting iptables filter rule, result:
${
result
}
`
);
}).
catch
((
err
)
=>
{
console
.
error
(
`Failed to remove iptables filter rule. Code:
${
err
.
code
}
, message:
${
err
.
message
}
`
);
});
```
## AddFilterRule
添加网络包过滤规则
**系统能力:**
SystemCapability.Customization.EnterpriseDeviceManager
**系统API**
: 此接口为系统接口。
| 名称 | 类型 | 必填 | 说明 |
| ----------- | --------| ---- | ------------------------------- |
| ruleNo | number | 否 | 规则序号。 |
| srcAddr | string | 否 | ip源地址。 |
| destAddr | string | 否 | ip目标地址。 |
| srcPort | string | 否 | ip源端口。 |
| destPort | string | 否 | ip目标端口。 |
| uid | string | 否 | 应用uid。 |
| method |
[
AddMethod
](
#addmethod
)
| 是 | 添加策略。 |
| direction |
[
Direction
](
#direction
)
| 是 | 规则链。 |
| action |
[
Action
](
#action
)
| 是 | 接收或者丢弃数据包。 |
| protocol |
[
Protocol
](
#protocol
)
| 否 | 网络协议。 |
## RemoveFilterRule
移除网络包过滤规则
**系统能力:**
SystemCapability.Customization.EnterpriseDeviceManager
**系统API**
: 此接口为系统接口。
| 名称 | 类型 | 必填 | 说明 |
| ----------- | --------| ---- | ------------------------------- |
| srcAddr | string | 否 | ip源地址。 |
| destAddr | string | 否 | ip目标地址。 |
| srcPort | string | 否 | ip源端口。 |
| destPort | string | 否 | ip目标端口。 |
| uid | string | 否 | 应用uid。 |
| direction |
[
Direction
](
#direction
)
| 是 | 规则链。 |
| action |
[
Action
](
#action
)
| 否 | 接收或者丢弃数据包。 |
| protocol |
[
Protocol
](
#protocol
)
| 否 | 网络协议。 |
## AddMethod
添加网络包方法。
**系统能力:**
SystemCapability.Customization.EnterpriseDeviceManager
**系统API**
: 此接口为系统接口。
| 名称 | 值 | 说明 |
| -------- | -------- | -------- |
| APPEND | 0 | 追加。 |
| INSERT | 1 | 插入。 |
## Direction
规则链。
**系统能力:**
SystemCapability.Customization.EnterpriseDeviceManager
**系统API**
: 此接口为系统接口。
| 名称 | 值 | 说明 |
| -------- | -------- | -------- |
| INPUT | 0 | 输入链。 |
| OUTPUT | 1 | 输出链。 |
## Action
数据包的行为。
**系统能力:**
SystemCapability.Customization.EnterpriseDeviceManager
**系统API**
: 此接口为系统接口。
| 名称 | 值 | 说明 |
| -------- | -------- | -------- |
| ALLOW | 0 | 接收数据包。 |
| DENY | 1 | 丢弃数据包。 |
## Protocol
网络协议。
**系统能力:**
SystemCapability.Customization.EnterpriseDeviceManager
**系统API**
: 此接口为系统接口。
| 名称 | 值 | 说明 |
| -------- | -------- | -------- |
| ALL | 0 | 全部网络协议。 |
| TCP | 1 | 网络协议TCP。 |
| UDP | 2 | 网络协议UDP。 |
| ICMP | 3 | 网络协议ICMP。 |
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录