#clickhouse #wsl-2
#clickhouse #wsl-2
Вопрос:
Я настроил рабочий экземпляр сервера ClickHouse с помощью docker-compose. Прямо сейчас я пытаюсь предоставить привилегии (разрешение на запись) пользователю, который определен в users.xml как таковой:
<users>
<deep>
<access_management>1</access_management>
<password>xxx</password>
<networks incl="networks" replace="replace">
<ip>::/1</ip>
<ip>192.168.65.155</ip>
</networks>
<profile>default</profile>
<quota>default</quota>
</deep>
</users>
Я использую эту команду
ПРЕДОСТАВЬТЕ ВСТАВКУ В registry.simple_people ДЛЯ глубокого
что дает мне это сообщение об ошибке:
Code: 495, e.displayText() = DB::Exception: Cannot update user `deep` in users.xml because this storage is readonly: Couldn't update user `deep`. Successfully updated: none (version 20.12.3.3 (official build))
Я прочитал документы из ch здесь https://clickhouse.tech/docs/en/sql-reference/statements/grant / а также я установил для параметра только для чтения значения 2 и 0 без какой-либо разницы в выходных данных. Может ли кто-нибудь из вас увидеть, где я мог что-то пропустить или что я должен сделать, чтобы иметь возможность сделать users.xml «не-только для чтения»?
Примечание:
Пользователь «глубоко» может читать из базы данных.
Я нахожусь на WSL: Ubuntu-20.04
Ответ №1:
Скорее всего, вы выполняете вставки, используя HTTP GET вместо POST.
https://clickhouse.tech/docs/en/interfaces/http/#http-interface
При использовании метода GET устанавливается значение «только для чтения». Другими словами, для запросов, которые изменяют данные, вы можете использовать только метод POST . Вы можете отправить сам запрос либо в теле сообщения, либо в параметре URL.
Существует два способа управления пользователями.
Старый XML-способ и новый create / grant / RBAC.
Пользователям, созданным в формате XML, не может быть предоставлено разрешение. Они управляются с помощью настроек XML.
По УМОЛЧАНИЮ пользователи XML имеют полный доступ ко ВСЕМУ.
Вы можете настроить доступ ТОЛЬКО для чтения с помощью XML profile и установить этот профиль для пользователя XML.
<profiles>
<roprofile>
<readonly>1</readonly>