Привет, Я DocuDroid!
Оценка ИИ поиска
Спасибо за оценку нашего ИИ поиска!
Мы будем признательны, если вы поделитесь своими впечатлениями, чтобы мы могли улучшить наш ИИ поиск для вас и других читателей.
GitHub

createuser

Создает новую роль.

Синтаксис

createuser [ <connection-option> ... ]
           [ <role_attribute> ... ]
           [ -e ]
           <role_name>

createuser -? | --help

createuser -V | --version

Описание

createuser создает новую роль в Greengage DB. Для создания новых ролей необходимо быть суперпользователем или обладать привилегией CREATEROLE. Чтобы создавать суперпользователей, подключение к базе данных должно выполняться от имени суперпользователя.

Суперпользователи могут обходить все проверки прав доступа, поэтому их привилегии следует предоставлять с осторожностью.

createuser является оберткой для SQL-команды CREATE ROLE.

Параметры

<role_name>

Имя создаваемой роли. Имя должно быть уникальным среди всех существующих ролей в кластере Greengage DB.

-c <number> | --connection-limit=<number>

Устанавливает максимальное количество подключений для новой роли. По умолчанию лимит не задан.

-d | --createdb

Разрешает новой роли создавать базы данных.

-D | --no-createdb

Запрещает новой роли создавать базы данных. Это значение по умолчанию.

-e | --echo

Выводит команды, которые createuser формирует и отправляет на сервер.

-E | --encrypted

Указывает, что пароль роли, сохраняемый в базе данных, должен быть зашифрован. Если параметр не указан, используется стандартное поведение обработки паролей.

-g <role> | --role=<role>

Указывает, что новая роль является членом указанной роли. Эту опцию можно указать несколько раз, чтобы добавить новую роль в несколько родительских ролей одновременно.

-i | --inherit

Новая роль автоматически наследует привилегии ролей, членом которых она является. Это значение по умолчанию.

-I | --no-inherit

Новая роль не наследует привилегии ролей, членом которых она является.

--interactive

Запрашивает имя пользователя, если оно не указано в командной строке, а также параметры -d/-D, -r/-R, -s/-S, которые не указаны явно.

-l | --login

Разрешает новой роли вход в систему. Это значение по умолчанию.

-L | --no-login

Запрещает новой роли вход в систему (групповая роль).

-N | --unencrypted

Указывает, что пароль роли в базе данных не шифруется. Если параметр не указан, используется стандартное поведение для паролей.

-P | --pwprompt

Запрашивает пароль для новой роли. Необязательно, если роль не будет использовать аутентификацию по паролю.

-r | --createrole

Разрешает новой роли создавать другие роли (привилегия CREATEROLE).

-R | --no-createrole

Запрещает новой роли создавать другие роли. Это значение по умолчанию.

-s | --superuser

Делает новую роль суперпользователем.

-S | --no-superuser

Делает новую роль обычной (не суперпользователем). Это значение по умолчанию.

-V | --version

Выводит версию createuser и завершает работу.

--replication

Предоставляет новой роли привилегию REPLICATION.

--no-replication

Не предоставляет новой роли привилегию REPLICATION. Это значение по умолчанию.

-? | --help

Показывает справку по аргументам командной строки createuser и завершает работу.

Параметры подключения

-h <host> | --host=<host>

Имя хоста, на котором запущен экземпляр мастера. Если параметр не указан, читается из переменной окружения PGHOST или используется значение по умолчанию localhost.

-p <port> | --port=<port>

TCP-порт, на котором мастер принимает подключения. Если параметр не указан, читается из переменной окружения PGPORT или используется значение по умолчанию 5432.

-U <username> | --username=<username>

Имя роли для подключения. Если параметр не указан, читается из переменной окружения PGUSER или используется имя пользователя операционной системы.

-w | --no-password

Не запрашивает пароль. Если сервер требует пароль и он недоступен другими способами (например, через файл .pgpass), подключение завершится неудачей. Этот параметр удобен для пакетных заданий и скриптов, где невозможен интерактивный ввод пароля.

-W | --password

Принудительно запрашивает пароль.

Примеры

  • Создать роль joe на сервере базы данных по умолчанию:

    $ createuser joe
  • Создать роль joe на сервере базы данных по умолчанию:

    $ createuser --interactive joe

    Необходимо ответить на вопросы, выводимые утилитой:

    Shall the new role be a superuser? (y/n) n
    Shall the new role be allowed to create databases? (y/n) n
    Shall the new role be allowed to create more new roles? (y/n) n
  • Создать ту же роль joe, используя параметры подключения и явно указав атрибуты:

    $ createuser -h mdw -p 54321 -S -D -R -e joe

    Результат:

    CREATE ROLE joe NOSUPERUSER NOCREATEDB NOCREATEROLE INHERIT
    LOGIN;
    CREATE ROLE
  • Создать роль joe как суперпользователя:

    $ createuser -P -s -e joe

    Назначить пароль admin123:

    Enter password for new role: admin123
    Enter it again: admin123

    Результат:

    CREATE ROLE joe PASSWORD 'admin123' SUPERUSER CREATEDB
    CREATEROLE INHERIT LOGIN;
    CREATE ROLE

    В примере выше вводимый пароль фактически не отображается в выводе, но здесь он показан для наглядности. Однако пароль будет виден в выведенной команде при использовании параметра -e.

См. также