@@ -51,11 +51,15 @@ Ranger 的安装和配置见下文:安装和配置 Doris Ranger 插件
5151 ```
5252
5353 其中需要将 ` ranger.plugin.doris.policy.cache.dir ` 和 ` ranger.plugin.doris.policy.rest.url ` 改为实际值。
54+ ` ranger.plugin.doris.policy.cache.dir ` : 用于存放从 ranger server 获取的权限缓存文件,这个文件夹需要自己手动创建,保证文件夹存在。
55+
54563 . 启动集群
5557### 权限示例
56581 . 在 Doris 中创建 ` user1 ` 。
57592 . 在 Doris 中,先使用 ` admin ` 用户创建一个 Catalog:` hive ` 。
58- 3 . 在 Ranger 中创建 ` user1 ` 。
60+ 3 . 在 Ranger 中创建 ` user1 ` 。目前 Ranger 不能从 Doris 自动同步用户,Doris 也不能从 Ranger 同步用户,需要手动创建用户
61+ 和 Doris 同名即可。Ranger 创建用户的步骤见 Ranger 官方文档,在 Settings -> Users 中创建用户。
62+
5963
6064#### 全局权限
6165相当于 Doris 内部授权语句的 ` grant select_priv on *.*.* to user1 ` ;
@@ -159,6 +163,10 @@ Ranger 的安装和配置见下文:安装和配置 Doris Ranger 插件
159163 ```
160164
161165 其中 `log4j.appender.D.File` 改为实际值,用于存放 Ranger 插件的日志。
166+
167+ `log4j.rootLogger` 可以根据需要调整日志级别,如 debug,info 等。注意 debug 只能用于调试,不能用于生产环境,否则日志量会非常大,
168+ 也会导致鉴权性能下降。
169+
1621702. 配置了 Row Level Filter policy ,但是用户查询时报没有权限
163171
164172 Row Level Filter policy 仅用来限制用户访问表中数据的特定记录, 仍需通过 ACCESS POLICY 为用户授权
@@ -179,6 +187,12 @@ Ranger 的安装和配置见下文:安装和配置 Doris Ranger 插件
179187 - [ranger-doris-plugin-3.0.0-SNAPSHOT.jar](https://selectdb-doris-1308700295.cos.ap-beijing.myqcloud.com/release/ranger/dev/ranger-doris-plugin-3.0.0-SNAPSHOT.jar)
180188 - [mysql-connector-java-8.0.25.jar](https://selectdb-doris-1308700295.cos.ap-beijing.myqcloud.com/release/jdbc_driver/mysql-connector-java-8.0.25.jar)
181189
190+ :::caution 注意
191+
192+ ranger-doris-plugin-3.0.0-SNAPSHOT.jar 需要下载对应分支的 Jar 包,否则会导致无法使用。
193+
194+ :::
195+
1821962. 将下载好的文件放到 Ranger 服务的 `ranger-plugins/doris` 目录下,如:
183197
184198 ```
@@ -190,7 +204,13 @@ Ranger 的安装和配置见下文:安装和配置 Doris Ranger 插件
190204
1912054. 下载 [ranger-servicedef-doris.json](https://github.com/morningman/ranger/blob/doris-plugin/agents-common/src/main/resources/service-defs/ranger-servicedef-doris.json)
192206
193- 5. 执行以下命令上传定义文件到 Ranger 服务:
207+ :::caution 注意
208+
209+ ranger-servicedef-doris.json 需要下载对应分支的 json 文件,否则会导致无法使用。
210+
211+ :::
212+
213+ 5. 执行以下命令上传定义文件到 Ranger 服务,这一步主要是添加 Apache Doris 的插件定义:
194214
195215 ```
196216 curl -u user: password -X POST \
@@ -255,14 +275,23 @@ Ranger 的安装和配置见下文:安装和配置 Doris Ranger 插件
255275
256276Config Properties 部分参数含义如下:
257277
278+ - `Service Name`:服务名称,Doris 会根据这个名称拉取相关权限,需要保证和 `ranger-doris-security.xml` 配置文件中
279+ `ranger.plugin.doris.service.name` 属性值一致,建议写 `doris`,如果不一致,会导致 Doris 拉取不到权限,从而鉴权失败。
258280- `Username`/`Pasword`:Doris 集群的用户名密码,这里建议使用 Admin 用户。
259- - `jdbc.driver_class`:连接 Doris 使用的 JDBC 驱动。`com.mysql.cj.jdbc.Driver`
260- - `jdbc.url`:Doris 集群的 JDBC url 连接串。`jdbc:mysql://172.21.0.101:9030?useSSL=false`
281+ - `jdbc.driver_class`:连接 Doris 使用的 JDBC 驱动。`com.mysql.cj.jdbc.Driver`。
282+ - `jdbc.url`:Doris 集群的 JDBC url 连接串。`jdbc:mysql://172.21.0.101:9030?useSSL=false`。
261283- 额外参数:
262284 - `resource.lookup.timeout.value.in.ms`:获取元信息的超时时间,建议填写 `10000`,即 10 秒。
263285
264286可以点击 `Test Connection` 检查是否可以联通。
265287
288+ :::info 备注
289+
290+ 如果此时 Doris 已经启动完成,且 fe.conf 已经配置 `ranger access_controller_type=ranger-doris`,
291+ 点击 `Test Connection` 会显示 fail,因为此时 Ranger 鉴权服务还没有创建完成,Doris 拉取权限会失败。属于正常,直接创建服务即可。
292+
293+ :::
294+
266295之后点击 `Add` 添加服务。
267296
268297之后,可以在 Service Manger 界面的 Apache Doris 插件中看到创建的服务,点击服务,即可开始配置 Ranger。
0 commit comments