> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-postgresql-tls-support.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> Настройки прав для запросов.

# Права для запросов

Запросы в ClickHouse можно разделить на несколько типов:

1. Запросы на чтение данных: `SELECT`, `SHOW`, `DESCRIBE`, `EXISTS`.
2. Запросы на запись данных: `INSERT`, `OPTIMIZE`.
3. Запросы на изменение настроек: `SET`, `USE`.
4. [DDL](https://en.wikipedia.org/wiki/Data_definition_language) DDL-запросы: `CREATE`, `ALTER`, `RENAME`, `ATTACH`, `DETACH`, `DROP` `TRUNCATE`.
5. `KILL QUERY`.

Следующие настройки определяют права пользователя в зависимости от типа запроса:

<div id="readonly">
  ## readonly
</div>

Ограничивает права на выполнение запросов чтения данных, записи данных и изменения настроек.

Если установлено значение 1, разрешаются:

* Все типы запросов на чтение (например, SELECT и эквивалентные ему запросы).
* Запросы, изменяющие только контекст сеанса (например, USE).

Если установлено значение 2, разрешается всё вышеперечисленное, а также:

* SET и CREATE TEMPORARY TABLE

<Tip>
  Запросы вроде EXISTS, DESCRIBE, EXPLAIN, SHOW PROCESSLIST и т. д. эквивалентны SELECT, поскольку фактически выполняют SELECT из системных таблиц.
</Tip>

Возможные значения:

* 0 — Разрешены запросы чтения, записи и изменения настроек.
* 1 — Разрешены только запросы чтения данных.
* 2 — Разрешены запросы чтения данных и изменения настроек.

Значение по умолчанию: 0

<Note>
  После установки `readonly = 1` пользователь не может изменять настройки `readonly` и `allow_ddl` в текущем сеансе.

  При использовании метода `GET` в [HTTP-интерфейсе](/ru/concepts/features/interfaces/http) значение `readonly = 1` устанавливается автоматически. Чтобы изменять данные, используйте метод `POST`.

  Значение `readonly = 1` запрещает пользователю изменять настройки. Однако можно запретить изменять только определённые настройки. Также можно разрешить изменение только определённых настроек при ограничении `readonly = 1`. Подробнее см. в разделе [ограничения на настройки](/ru/concepts/features/configuration/settings/constraints-on-settings).
</Note>

<div id="allow_ddl">
  ## allow\_ddl
</div>

Разрешает или запрещает [DDL](https://en.wikipedia.org/wiki/Data_definition_language) запросы.

Возможные значения:

* 0 — DDL-запросы запрещены.
* 1 — DDL-запросы разрешены.

Значение по умолчанию: 1

<Note>
  Нельзя выполнить `SET allow_ddl = 1`, если для текущего сеанса `allow_ddl = 0`.
</Note>

<Info>
  **KILL QUERY**

  `KILL QUERY` можно выполнять при любой комбинации настроек readonly и allow\_ddl.
</Info>
