• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# @ohos.net.netFirewall (网络防火墙)(系统接口)
2
3网络防火墙模块为应用程序提供查询防火墙能力。 通过配置防火墙策略,应用程序可以对机器进行防火墙策略管控,并提供防火墙拦截记录的查询。
4
5> **说明:**
6> 本模块首批接口从API version 14开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
7> 本模块为系统接口。
8
9## 导入模块
10
11```ts
12import netfirewall from '@ohos.net.netFirewall';
13```
14
15## netFirewall.getInterceptedRecords
16
17getInterceptedRecords(userId: number, requestParam: RequestParam): Promise<\InterceptedRecordPage>
18
19按userId获取截获的记录,需要指定分页查询参数。
20
21**系统接口**:此接口为系统接口。
22
23**需要权限**:ohos.permission.GET_NET_FIREWALL
24
25**系统能力**:SystemCapability.Communication.NetManager.NetFirewall
26
27**参数:**
28
29| 参数名       | 类型                                                     | 必填 | 说明                                         |
30| ------------ | ------------------------------------------------------- | ---- | -------------------------------------------- |
31| userId       | number                                                  | 是   | 系统中的多用户用户ID,只能是存在的用户ID。 |
32| requestParam | [RequestParam](js-apis-net-netfirewall.md#requestparam) | 是   | 查询参数。                                   |
33**返回值:**
34
35| 类型                                                      | 说明                            |
36| --------------------------------------------------------- | ------------------------------- |
37| Promise\<[InterceptedRecordPage](#interceptedrecordpage)> | 以Promise形式返回拦截记录列表。 |
38
39**错误码:**
40
41以下错误码的详细介绍请参见通用错误码和网络连接管理错误码
42| 错误码ID | 错误信息                                                                        |
43| -------  | --------------------------------------------------------------------------------|
44| 201      | Permission denied.                                                              |
45| 202      | Non-system applications use system APIs.                                        |
46| 401      | Parameter error.                                                                |
47| 2100001  | Invalid parameter value.                                                        |
48| 2100002  | Operation failed. Cannot connect to service.                                    |
49| 2100003  | System internal error.                                                          |
50| 29400000 | The specified user does not exist.                                              |
51
52**示例:**
53
54```ts
55import { netFirewall } '@kit.NetworkKit';
56import { BusinessError } from '@kit.BasicServicesKit';
57
58let interceptRecordParam: netFirewall.RequestParam = {
59  page: 1,
60  pageSize: 10,
61  orderField: netFirewall.NetFirewallOrderField.ORDER_BY_RECORD_TIME,
62  orderType: netFirewall.NetFirewallOrderType.ORDER_DESC
63};
64netFirewall.getInterceptedRecords(100, interceptRecordParam).then((result: netFirewall.InterceptedRecordPage) => {
65  console.info("result:", JSON.stringify(result));
66}, (error: BusinessError) => {
67  console.error("get intercept records failed: " + JSON.stringify(error));
68});
69```
70
71## InterceptedRecord
72
73拦截记录信息结构。
74
75**系统接口**:此接口为系统接口。
76
77**系统能力**:SystemCapability.Communication.NetManager.NetFirewall
78
79| 名称       | 类型   | 必填 | 说明                |
80|------------| -------|------|-------------------- |
81| time       | number | 是   | 时间戳。            |
82| localIp    | string | 否   | 本地IP。            |
83| remoteIp   | string | 否   | 远端IP。            |
84| localPort  | number | 否   | 本地端口。          |
85| remotePort | number | 否   | 远端端口。          |
86| protocol   | number | 否   | 传输层协议。        |
87| appUid     | number | 否   | 应用程序或服务UID。 |
88| domain     | string | 否   | 域名。              |
89
90## InterceptedRecordPage
91
92拦截记录分页信息结构。
93
94**系统接口**:此接口为系统接口。
95
96**系统能力**:SystemCapability.Communication.NetManager.NetFirewall
97
98| 名称       | 类型                                            | 必填 | 说明       |
99|------------| ----------------------------------------------- |------|----------  |
100| page       | number                                          | 是   | 当前页码。 |
101| pageSize   | number                                          | 是   | 页面大小。 |
102| totalPage  | number                                          | 是   | 总页数。   |
103| data       | Array\<[InterceptedRecord](#interceptedrecord)> | 是   | 页面数据。 |
104