Skip to content

Commit ee75549

Browse files
authored
add pipe permission control specifications (#981)
1 parent 1a24c74 commit ee75549

8 files changed

Lines changed: 144 additions & 8 deletions

File tree

src/UserGuide/Master/Tree/User-Manual/Data-Sync_apache.md

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ By declaratively configuring the specific content of the three parts through SQL
7979

8080
### 1.2 Functional limitations and instructions
8181

82-
The schema and auth synchronization functions have the following limitations:
82+
1. The schema and auth synchronization functions have the following limitations:
8383

8484
- When using schema synchronization, it is required that the consensus protocol for `Schema region` and `ConfigNode` must be the default ratis protocol. This means that the `iotdb-system.properties` configuration file should contain the settings `config_node_consensus_protocol_class=org.apache.iotdb.consensus.ratis.RatisConsensus` and `schema_region_consensus_protocol_class=org.apache.iotdb.consensus.ratis.RatisConsensus`. If these are not specified, the default ratis protocol is used.
8585

@@ -89,6 +89,22 @@ The schema and auth synchronization functions have the following limitations:
8989

9090
- During data synchronization tasks, please avoid performing any deletion operations to prevent inconsistent states between the two ends.
9191

92+
2. Pipe Permission Control Specifications
93+
94+
- When creating a pipe, a username and password can be specified for the extraction/write‑back plugins. If the password is incorrect, creation is prohibited. If not specified, the current user is used for synchronization by default.
95+
96+
- During data/metadata synchronization, filtering is first performed according to the path pattern (pattern/path) configured in the Pipe, followed by authentication based on the user’s read permissions:
97+
- If the permission scope is greater than or equal to the write path: full synchronization.
98+
- If the permission scope has no intersection with the write path: no synchronization.
99+
- If the permission scope is smaller than the write path or overlaps partially: synchronize only the intersecting part.
100+
101+
- When encountering data for which the user lacks permission:
102+
- If the sender’s skipIf=no‑privileges, the unauthorized data is skipped.
103+
- If skipIf is left empty (unconfigured), the task reports an error (Error 803).
104+
- Note: This skipIf configuration is independent of the receiver’s skipIf setting (which defaults to empty).
105+
106+
- Data under root.__system and root.__audit will not be synchronized.
107+
92108
## 2. Usage Instructions
93109

94110
Data synchronization tasks have three states: RUNNING, STOPPED, and DROPPED. The task state transitions are shown in the following diagram:

src/UserGuide/Master/Tree/User-Manual/Data-Sync_timecho.md

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ By declaratively configuring the specific content of the three parts through SQL
7979

8080
### 1.2 Functional limitations and instructions
8181

82-
The schema and auth synchronization functions have the following limitations:
82+
1. The schema and auth synchronization functions have the following limitations:
8383

8484
- When using schema synchronization, it is required that the consensus protocol for `Schema region` and `ConfigNode` must be the default ratis protocol. This means that the `iotdb-system.properties` configuration file should contain the settings `config_node_consensus_protocol_class=org.apache.iotdb.consensus.ratis.RatisConsensus` and `schema_region_consensus_protocol_class=org.apache.iotdb.consensus.ratis.RatisConsensus`. If these are not specified, the default ratis protocol is used.
8585

@@ -91,6 +91,22 @@ The schema and auth synchronization functions have the following limitations:
9191

9292
- During data synchronization tasks, please avoid performing any deletion operations to prevent inconsistent states between the two ends.
9393

94+
2. Pipe Permission Control Specifications
95+
96+
- When creating a pipe, a username and password can be specified for the extraction/write‑back plugins. If the password is incorrect, creation is prohibited. If not specified, the current user is used for synchronization by default.
97+
98+
- During data/metadata synchronization, filtering is first performed according to the path pattern (pattern/path) configured in the Pipe, followed by authentication based on the user’s read permissions:
99+
- If the permission scope is greater than or equal to the write path: full synchronization.
100+
- If the permission scope has no intersection with the write path: no synchronization.
101+
- If the permission scope is smaller than the write path or overlaps partially: synchronize only the intersecting part.
102+
103+
- When encountering data for which the user lacks permission:
104+
- If the sender’s skipIf=no‑privileges, the unauthorized data is skipped.
105+
- If skipIf is left empty (unconfigured), the task reports an error (Error 803).
106+
- Note: This skipIf configuration is independent of the receiver’s skipIf setting (which defaults to empty).
107+
108+
- Data under root.__system and root.__audit will not be synchronized.
109+
94110
## 2. Usage Instructions
95111

96112
Data synchronization tasks have three states: RUNNING, STOPPED, and DROPPED. The task state transitions are shown in the following diagram:

src/UserGuide/latest/User-Manual/Data-Sync_apache.md

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ By declaratively configuring the specific content of the three parts through SQL
7979

8080
### 1.2 Functional limitations and instructions
8181

82-
The schema and auth synchronization functions have the following limitations:
82+
1. The schema and auth synchronization functions have the following limitations:
8383

8484
- When using schema synchronization, it is required that the consensus protocol for `Schema region` and `ConfigNode` must be the default ratis protocol. This means that the `iotdb-system.properties` configuration file should contain the settings `config_node_consensus_protocol_class=org.apache.iotdb.consensus.ratis.RatisConsensus` and `schema_region_consensus_protocol_class=org.apache.iotdb.consensus.ratis.RatisConsensus`. If these are not specified, the default ratis protocol is used.
8585

@@ -89,6 +89,22 @@ The schema and auth synchronization functions have the following limitations:
8989

9090
- During data synchronization tasks, please avoid performing any deletion operations to prevent inconsistent states between the two ends.
9191

92+
2. Pipe Permission Control Specifications
93+
94+
- When creating a pipe, a username and password can be specified for the extraction/write‑back plugins. If the password is incorrect, creation is prohibited. If not specified, the current user is used for synchronization by default.
95+
96+
- During data/metadata synchronization, filtering is first performed according to the path pattern (pattern/path) configured in the Pipe, followed by authentication based on the user’s read permissions:
97+
- If the permission scope is greater than or equal to the write path: full synchronization.
98+
- If the permission scope has no intersection with the write path: no synchronization.
99+
- If the permission scope is smaller than the write path or overlaps partially: synchronize only the intersecting part.
100+
101+
- When encountering data for which the user lacks permission:
102+
- If the sender’s skipIf=no‑privileges, the unauthorized data is skipped.
103+
- If skipIf is left empty (unconfigured), the task reports an error (Error 803).
104+
- Note: This skipIf configuration is independent of the receiver’s skipIf setting (which defaults to empty).
105+
106+
- Data under root.__system and root.__audit will not be synchronized.
107+
92108
## 2. Usage Instructions
93109

94110
Data synchronization tasks have three states: RUNNING, STOPPED, and DROPPED. The task state transitions are shown in the following diagram:

src/UserGuide/latest/User-Manual/Data-Sync_timecho.md

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ By declaratively configuring the specific content of the three parts through SQL
7979

8080
### 1.2 Functional limitations and instructions
8181

82-
The schema and auth synchronization functions have the following limitations:
82+
1. The schema and auth synchronization functions have the following limitations:
8383

8484
- When using schema synchronization, it is required that the consensus protocol for `Schema region` and `ConfigNode` must be the default ratis protocol. This means that the `iotdb-system.properties` configuration file should contain the settings `config_node_consensus_protocol_class=org.apache.iotdb.consensus.ratis.RatisConsensus` and `schema_region_consensus_protocol_class=org.apache.iotdb.consensus.ratis.RatisConsensus`. If these are not specified, the default ratis protocol is used.
8585

@@ -91,6 +91,22 @@ The schema and auth synchronization functions have the following limitations:
9191

9292
- During data synchronization tasks, please avoid performing any deletion operations to prevent inconsistent states between the two ends.
9393

94+
2. Pipe Permission Control Specifications
95+
96+
- When creating a pipe, a username and password can be specified for the extraction/write‑back plugins. If the password is incorrect, creation is prohibited. If not specified, the current user is used for synchronization by default.
97+
98+
- During data/metadata synchronization, filtering is first performed according to the path pattern (pattern/path) configured in the Pipe, followed by authentication based on the user’s read permissions:
99+
- If the permission scope is greater than or equal to the write path: full synchronization.
100+
- If the permission scope has no intersection with the write path: no synchronization.
101+
- If the permission scope is smaller than the write path or overlaps partially: synchronize only the intersecting part.
102+
103+
- When encountering data for which the user lacks permission:
104+
- If the sender’s skipIf=no‑privileges, the unauthorized data is skipped.
105+
- If skipIf is left empty (unconfigured), the task reports an error (Error 803).
106+
- Note: This skipIf configuration is independent of the receiver’s skipIf setting (which defaults to empty).
107+
108+
- Data under root.__system and root.__audit will not be synchronized.
109+
94110
## 2. Usage Instructions
95111

96112
Data synchronization tasks have three states: RUNNING, STOPPED, and DROPPED. The task state transitions are shown in the following diagram:

src/zh/UserGuide/Master/Tree/User-Manual/Data-Sync_apache.md

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@
7878

7979
### 1.2 功能限制及说明
8080

81-
元数据(schema)、权限(auth)同步功能存在如下限制:
81+
1. 元数据(schema)、权限(auth)同步功能存在如下限制:
8282

8383
- 使用元数据同步时,要求`Schema region``ConfigNode` 的共识协议必须为默认的 ratis 协议,即`iotdb-system.properties`配置文件中是否包含`config_node_consensus_protocol_class=org.apache.iotdb.consensus.ratis.RatisConsensus``schema_region_consensus_protocol_class=org.apache.iotdb.consensus.ratis.RatisConsensus`,不包含即为默认值ratis 协议。
8484

@@ -88,6 +88,24 @@
8888

8989
- 在进行数据同步任务时,请避免执行任何删除操作,防止两端状态不一致。
9090

91+
2. Pipe 权限控制规范如下:
92+
93+
- 创建 pipe 时,可以对抽取/写回插件指定用户名和密码。密码错误则禁止创建,未指定时默认使用当前用户进行同步。
94+
95+
- 数据/元数据同步时,先根据 Pipe 配置的路径模式(pattern/path)筛选,再基于用户读取权限进行鉴权
96+
97+
- 权限范围≥写入路径:完整同步
98+
99+
- 权限范围与写入路径无交集:不同步
100+
101+
- 权限范围<写入路径或存在交集:同步交集部分
102+
103+
- 遇到无权限数据时,若发送端 skipIf=no-privileges,则跳过无权限数据;若 skipIf 配置为空,任务报错(803错误)
104+
105+
- 注意:此 skipIf 配置与接收端的 skipIf(默认为空)相互独立
106+
107+
- 对于 root.__system, root.__audit 均不会同步
108+
91109
## 2. 使用说明
92110

93111
数据同步任务有三种状态:RUNNING、STOPPED 和 DROPPED。任务状态转换如下图所示:

src/zh/UserGuide/Master/Tree/User-Manual/Data-Sync_timecho.md

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@
7878

7979
### 1.2 功能限制及说明
8080

81-
元数据(schema)、权限(auth)同步功能存在如下限制:
81+
1. 元数据(schema)、权限(auth)同步功能存在如下限制:
8282

8383
- 使用元数据同步时,要求`Schema region``ConfigNode` 的共识协议必须为默认的 ratis 协议,即`iotdb-system.properties`配置文件中是否包含`config_node_consensus_protocol_class=org.apache.iotdb.consensus.ratis.RatisConsensus``schema_region_consensus_protocol_class=org.apache.iotdb.consensus.ratis.RatisConsensus`,不包含即为默认值ratis 协议。
8484

@@ -90,6 +90,24 @@
9090

9191
- 在进行数据同步任务时,请避免执行任何删除操作,防止两端状态不一致。
9292

93+
2. Pipe 权限控制规范如下:
94+
95+
- 创建 pipe 时,可以对抽取/写回插件指定用户名和密码。密码错误则禁止创建,未指定时默认使用当前用户进行同步。
96+
97+
- 数据/元数据同步时,先根据 Pipe 配置的路径模式(pattern/path)筛选,再基于用户读取权限进行鉴权
98+
99+
- 权限范围≥写入路径:完整同步
100+
101+
- 权限范围与写入路径无交集:不同步
102+
103+
- 权限范围<写入路径或存在交集:同步交集部分
104+
105+
- 遇到无权限数据时,若发送端 skipIf=no-privileges,则跳过无权限数据;若 skipIf 配置为空,任务报错(803错误)
106+
107+
- 注意:此 skipIf 配置与接收端的 skipIf(默认为空)相互独立
108+
109+
- 对于 root.__system, root.__audit 均不会同步
110+
93111
## 2. 使用说明
94112

95113
数据同步任务有三种状态:RUNNING、STOPPED 和 DROPPED。任务状态转换如下图所示:

src/zh/UserGuide/latest/User-Manual/Data-Sync_apache.md

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@
7878

7979
### 1.2 功能限制及说明
8080

81-
元数据(schema)、权限(auth)同步功能存在如下限制:
81+
1. 元数据(schema)、权限(auth)同步功能存在如下限制:
8282

8383
- 使用元数据同步时,要求`Schema region``ConfigNode` 的共识协议必须为默认的 ratis 协议,即`iotdb-system.properties`配置文件中是否包含`config_node_consensus_protocol_class=org.apache.iotdb.consensus.ratis.RatisConsensus``schema_region_consensus_protocol_class=org.apache.iotdb.consensus.ratis.RatisConsensus`,不包含即为默认值ratis 协议。
8484

@@ -88,6 +88,24 @@
8888

8989
- 在进行数据同步任务时,请避免执行任何删除操作,防止两端状态不一致。
9090

91+
2. Pipe 权限控制规范如下:
92+
93+
- 创建 pipe 时,可以对抽取/写回插件指定用户名和密码。密码错误则禁止创建,未指定时默认使用当前用户进行同步。
94+
95+
- 数据/元数据同步时,先根据 Pipe 配置的路径模式(pattern/path)筛选,再基于用户读取权限进行鉴权
96+
97+
- 权限范围≥写入路径:完整同步
98+
99+
- 权限范围与写入路径无交集:不同步
100+
101+
- 权限范围<写入路径或存在交集:同步交集部分
102+
103+
- 遇到无权限数据时,若发送端 skipIf=no-privileges,则跳过无权限数据;若 skipIf 配置为空,任务报错(803错误)
104+
105+
- 注意:此 skipIf 配置与接收端的 skipIf(默认为空)相互独立
106+
107+
- 对于 root.__system, root.__audit 均不会同步
108+
91109
## 2. 使用说明
92110

93111
数据同步任务有三种状态:RUNNING、STOPPED 和 DROPPED。任务状态转换如下图所示:

src/zh/UserGuide/latest/User-Manual/Data-Sync_timecho.md

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@
7878

7979
### 1.2 功能限制及说明
8080

81-
元数据(schema)、权限(auth)同步功能存在如下限制:
81+
1. 元数据(schema)、权限(auth)同步功能存在如下限制:
8282

8383
- 使用元数据同步时,要求`Schema region``ConfigNode` 的共识协议必须为默认的 ratis 协议,即`iotdb-system.properties`配置文件中是否包含`config_node_consensus_protocol_class=org.apache.iotdb.consensus.ratis.RatisConsensus``schema_region_consensus_protocol_class=org.apache.iotdb.consensus.ratis.RatisConsensus`,不包含即为默认值ratis 协议。
8484

@@ -90,6 +90,24 @@
9090

9191
- 在进行数据同步任务时,请避免执行任何删除操作,防止两端状态不一致。
9292

93+
2. Pipe 权限控制规范如下:
94+
95+
- 创建 pipe 时,可以对抽取/写回插件指定用户名和密码。密码错误则禁止创建,未指定时默认使用当前用户进行同步。
96+
97+
- 数据/元数据同步时,先根据 Pipe 配置的路径模式(pattern/path)筛选,再基于用户读取权限进行鉴权
98+
99+
- 权限范围≥写入路径:完整同步
100+
101+
- 权限范围与写入路径无交集:不同步
102+
103+
- 权限范围<写入路径或存在交集:同步交集部分
104+
105+
- 遇到无权限数据时,若发送端 skipIf=no-privileges,则跳过无权限数据;若 skipIf 配置为空,任务报错(803错误)
106+
107+
- 注意:此 skipIf 配置与接收端的 skipIf(默认为空)相互独立
108+
109+
- 对于 root.__system, root.__audit 均不会同步
110+
93111
## 2. 使用说明
94112

95113
数据同步任务有三种状态:RUNNING、STOPPED 和 DROPPED。任务状态转换如下图所示:

0 commit comments

Comments
 (0)