ClickHouse/docs/ja/operations/settings/permissions-for-queries.md

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

67 lines
2.8 KiB
Markdown
Raw Normal View History

2024-11-18 02:58:58 +00:00
---
slug: /ja/operations/settings/permissions-for-queries
sidebar_position: 58
sidebar_label: クエリの権限
---
# クエリの権限
ClickHouseのクエリは以下のいくつかのタイプに分けられます。
1. データ読み取りクエリ: `SELECT`、`SHOW`、`DESCRIBE`、`EXISTS`
2. データ書き込みクエリ: `INSERT`、`OPTIMIZE`
3. 設定変更クエリ: `SET`、`USE`
4. [DDL](https://en.wikipedia.org/wiki/Data_definition_language) クエリ: `CREATE`、`ALTER`、`RENAME`、`ATTACH`、`DETACH`、`DROP`、`TRUNCATE`
5. `KILL QUERY`
以下の設定は、クエリのタイプによってユーザー権限を調整します。
## readonly
データの読み取り、データの書き込み、および設定変更クエリに対する権限を制限します。
1に設定すると、以下が許可されます:
- 全てのタイプの読み取りクエリ(`SELECT`や同等のクエリなど)
- セッションコンテキストのみを変更するクエリ(`USE`など)
2に設定すると、上記に加えて以下も許可されます:
- `SET``CREATE TEMPORARY TABLE`
:::tip
`EXISTS`、`DESCRIBE`、`EXPLAIN`、`SHOW PROCESSLIST` などのクエリは、システムテーブルからの選択を行うだけなので、`SELECT` と同等です。
:::
可能な値:
- 0 — 読み取り、書き込み、設定変更クエリが許可されます。
- 1 — データ読み取りクエリのみが許可されます。
- 2 — データ読み取りおよび設定変更クエリが許可されます。
デフォルト値: 0
:::note
`readonly = 1` を設定した後、現在のセッションで `readonly` および `allow_ddl` の設定を変更することはできません。
[HTTPインターフェース](../../interfaces/http.md)で`GET`メソッドを使用する場合、`readonly = 1` が自動的に設定されます。データを変更するには、`POST`メソッドを使用してください。
`readonly = 1` を設定すると、ユーザーは設定を変更できなくなります。特定の設定のみの変更を禁止する方法もあります。また、`readonly = 1` の制限下で特定の設定のみの変更を許可する方法もあります。詳細は[設定の制約](../../operations/settings/constraints-on-settings.md)を参照してください。
:::
## allow_ddl {#allow_ddl}
[DDL](https://en.wikipedia.org/wiki/Data_definition_language)クエリを許可または禁止します。
可能な値:
- 0 — DDLクエリは許可されません。
- 1 — DDLクエリは許可されます。
デフォルト値: 1
:::note
現在のセッションで `allow_ddl = 0` の場合、`SET allow_ddl = 1` を実行することはできません。
:::
:::note KILL QUERY
`KILL QUERY` は、`readonly` と `allow_ddl` の設定のいかなる組み合わせでも実行可能です。
:::