Метод create
Создает пользователя PostgreSQL в указанном кластере.
HTTP-запрос
POST https://mdb.api.cloud.yandex.net/managed-postgresql/v1/clusters/{clusterId}/users
Path-параметры
Параметр | Описание |
---|---|
clusterId | Обязательное поле. Идентификатор кластера PostgreSQL, в котором следует создать пользователя. Чтобы получить идентификатор кластера, используйте запрос list. Максимальная длина строки в символах — 50. |
Параметры в теле запроса
{
"userSpec": {
"name": "string",
"password": "string",
"permissions": [
{
"databaseName": "string"
}
],
"connLimit": "integer",
"settings": {
"defaultTransactionIsolation": "string",
"lockTimeout": "integer",
"logMinDurationStatement": "integer",
"synchronousCommit": "string",
"tempFileLimit": "integer",
"logStatement": "string"
},
"login": true,
"grants": [
"string"
]
}
}
Поле | Описание |
---|---|
userSpec | object Обязательное поле. Свойства создаваемого пользователя. |
userSpec. name |
string Обязательное поле. Имя пользователя PostgreSQL. Максимальная длина строки в символах — 63. Значение должно соответствовать регулярному выражению |
userSpec. password |
string Обязательное поле. Пароль пользователя PostgreSQL. Длина строки в символах должна быть от 8 до 128. |
userSpec. permissions[] |
object Набор разрешений, предоставляемых пользователю для доступа к определенным базам данных. |
userSpec. permissions[]. databaseName |
string Имя базы данных, к которой предоставляет доступ разрешение. |
userSpec. connLimit |
integer (int64) Максимальное количество подключений к базе данных, доступное пользователю. При использовании сессионного пулинга эта настройка ограничивает количество подключений к каждому отдельному хосту в кластере PostgreSQL. В этом случае значение настройки должно быть больше общего числа подключений, которые могут быть открыты сервисами бэкенда для доступа к кластеру PostgreSQL. Значение этой настройки не должно превышать значения настройки Cluster.config.postgresqlConfig_12.effectiveConfig.maxConnections. При использовании транзакционного пулинга эта настройка ограничивает количество активных транзакций пользователя, поэтому в этом режиме пользователь может открывать тысячи подключений, но одновременно будет установлено только Минимальное значение: Минимальное значение — 10. |
userSpec. settings |
object Настройки PostgreSQL для пользователя. Пользовательские настройки PostgreSQL. |
userSpec. settings. defaultTransactionIsolation |
string Для каждой транзакции в SQL устанавливается уровень изоляции. Эта настройка определяет уровень изоляции, который будет устанавливаться по умолчанию для новых транзакций SQL. См. подробное описание в документации PostgreSQL.
|
userSpec. settings. lockTimeout |
integer (int64) Максимальная длительность ожидания (в миллисекундах) любым оператором получения блокировки таблицы, индекса, строки или другого объекта базы данных. Если ожидание не закончилось за указанное время, оператор прерывается. Значение по умолчанию: |
userSpec. settings. logMinDurationStatement |
integer (int64) Эта настройка управляет логированием длительности выполнения команд SQL. В лог записывается продолжительность выполнения всех команд, время обработки которых равно или превышает указанное в значении настройки количество миллисекунд. Например, при значении настройки Значение Значение См. подробное описание в документации PostgreSQL. |
userSpec. settings. synchronousCommit |
string Эта настройка определяет, будет ли СУБД выполнять операцию подтверждения транзакции синхронно. Синхронность операции означает, что кластер будет ждать выполнения синхронных операций прежде чем подтвердить транзакцию клиенту. Эти операции гарантируют различные уровни сохранности и видимости данных в кластере. См. подробное описание в документации PostgreSQL.
|
userSpec. settings. tempFileLimit |
integer (int64) Максимальный объем дискового пространства (в килобайтах), который один процесс сможет использовать для временных файлов. Транзакция, которая попытается превысить этот предел, будет отменена. Большие запросы из-за их размера выполняются PostgreSQL не в оперативной памяти, а на диске. Слишком большие запросы могут нагрузить диск и помешать выполнению других запросов. Эта настройка предотвращает выполнение запросов, которые могут сильно повлиять на производительность, ограничивая размер временных файлов. |
userSpec. settings. logStatement |
string Эта настройка определяет, какие команды SQL должны записываться в лог (на уровне пользователя). См. подробное описание в документации PostgreSQL.
|
userSpec. login |
boolean (boolean) Этот флаг определяет, может ли пользователь войти в базу данных PostgreSQL. Значение по умолчанию: |
userSpec. grants[] |
string Роли и права, предоставленные пользователю ( Дополнительные сведения см. в документации. Максимальная длина строки в символах для каждого значения — 63. Каждое значение должно соответствовать регулярному выражению |
Ответ
HTTP Code: 200 - OK
{
"id": "string",
"description": "string",
"createdAt": "string",
"createdBy": "string",
"modifiedAt": "string",
"done": true,
"metadata": "object",
// включает только одно из полей `error`, `response`
"error": {
"code": "integer",
"message": "string",
"details": [
"object"
]
},
"response": "object",
// конец списка возможных полей
}
Ресурс Operation. Дополнительные сведения см. в разделе
Объект Operation.
Поле | Описание |
---|---|
id | string Идентификатор операции. |
description | string Описание операции. Длина описания должна быть от 0 до 256 символов. |
createdAt | string (date-time) Время создания ресурса в формате в RFC3339. Строка в формате RFC3339. |
createdBy | string Идентификатор пользователя или сервисного аккаунта, инициировавшего операцию. |
modifiedAt | string (date-time) Время, когда ресурс Operation последний раз обновлялся. Значение в формате RFC3339. Строка в формате RFC3339. |
done | boolean (boolean) Если значение равно |
metadata | object Метаданные операции. Обычно в поле содержится идентификатор ресурса, над которым выполняется операция. Если метод возвращает ресурс Operation, в описании метода приведена структура соответствующего ему поля |
error | object Описание ошибки в случае сбоя или отмены операции. включает только одно из полей error , response Описание ошибки в случае сбоя или отмены операции. |
error. code |
integer (int32) Код ошибки. Значение из списка google.rpc.Code. |
error. message |
string Текст ошибки. |
error. details[] |
object Список сообщений с подробными сведениями об ошибке. |
response | object включает только одно из полей error , response Результат операции в случае успешного завершения. Если исходный метод не возвращает никаких данных при успешном завершении, например метод Delete, поле содержит объект google.protobuf.Empty. Если исходный метод — это стандартный метод Create / Update, поле содержит целевой ресурс операции. Если метод возвращает ресурс Operation, в описании метода приведена структура соответствующего ему поля |