apache / apache/iotdb

Non-root users with correct query privileges are unable to select a empty timesereis

オープン
#4,387 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る
Easy-Fixed
主要言語
Java
スター
6.4k
フォーク
1.2k
平均マージ
1日 23時間
マージ済み PR(30日)
115

説明

How to reproduce:

```sql
# user: root
CREATE USER steve 'steve'

GRANT ROLE application_role PRIVILEGES 'SET_STORAGE_GROUP','CREATE_TIMESERIES','INSERT_TIMESERIES','READ_TIMESERIES','DELETE_TIMESERIES','DROP_FUNCTION','CREATE_FUNCTION','CREATE_TRIGGER','DROP_TRIGGER','START_TRIGGER','STOP_TRIGGER' ON root.test

GRANT application_role TO steve
```

```sql
# user: steve
select sin(s1) from root.test where time >= 2021-01-01 and time<= 2021-01-31 23:59:59
```

Then, you will get:
![image](https://user-images.githubusercontent.com/30497621/141757345-d3439af9-9b36-45a9-9e82-97c09aa08e85.png)

コントリビューションガイド

コントリビューションガイドを開く

調査の方向性

まず、ユーザー steve として SQL セットアップと SELECT を再現し、その後、空の root.test 時系列で root ユーザーの場合の動作と比較します。以前のコンテキストについては、クローズされた pull request #4423 を確認してください。完了の条件は、一覧にあるクエリ権限を持つ非 root ユーザーが、認可エラーなしで空の時系列に対して select を実行できることです。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
java, sql
領域
authorization, databases
issue の種類
バグ
難易度
3/5
見積もり時間
1〜2日
活発さ
停滞
明瞭さ
おおむね明確
初心者へのやさしさ
25/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。