Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Истории успеха
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • ИИ для бизнеса
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Калькулятор цен
    • Тарифы
    • Промоакции и free tier
    • Правила тарификации
  • Истории успеха
  • Документация
  • Блог
Проект Яндекса
© 2025 ООО «Яндекс.Облако»
Yandex Managed Service for Valkey™
  • Начало работы
    • Все инструкции
      • Получение информации о пользователях
      • Создание пользователя
      • Изменение настроек пользователя
      • Удаление пользователя
  • Управление доступом
  • Правила тарификации
  • Справочник Terraform
  • Метрики Monitoring
  • Аудитные логи Audit Trails
  • Публичные материалы
  • История изменений
  • Вопросы и ответы

В этой статье:

  • Изменить пароль пользователя
  • Изменить статус пользователя
  • Настроить очистку данных
  • Назначить разрешения пользователю
  1. Пошаговые инструкции
  2. Пользователи
  3. Изменение настроек пользователя

Изменение настроек пользователя

Статья создана
Yandex Cloud
Улучшена
mmerihsesh
Обновлена 14 октября 2025 г.
  • Изменить пароль пользователя
  • Изменить статус пользователя
  • Настроить очистку данных
  • Назначить разрешения пользователю

После создания пользователя Valkey™ вы можете:

  • изменить пароль;
  • изменить статус пользователя;
  • настроить очистку данных;
  • назначить разрешения пользователю.

Изменить пароль пользователяИзменить пароль пользователя

CLI
Terraform
REST API
gRPC API

Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.

По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name или --folder-id.

Чтобы изменить пароль пользователя Valkey™:

  1. Посмотрите описание команды CLI для изменения настроек пользователя:

    yc managed-redis user update --help
    
  2. Измените пароль, выполнив команду:

    yc managed-redis user update <имя_пользователя> \
      --cluster-id=<идентификатор_кластера> \
      --password="<пароль_пользователя>" 
    

    Где:

    • --cluster-id — идентификатор кластера.

      Идентификатор кластера можно получить со списком кластеров в каталоге.

    • --password — пароль пользователя. Длина пароля — от 8 до 128 символов.

    Имя пользователя можно получить со списком пользователей в кластере.

  1. Откройте актуальный конфигурационный файл Terraform с планом инфраструктуры.

    О том, как создать такой файл, см. в разделе Создание кластера.

  2. Измените в описании ресурса yandex_mdb_redis_user параметр passwords:

    resource "yandex_mdb_redis_user" "<локальное_имя_ресурса>" {
      ...
      passwords  = ["<пароль_пользователя>"]
      ...
    }
    

    Где passwords — пароль пользователя. Длина пароля — от 8 до 128 символов.

    Можно указать только один пароль.

  3. Проверьте корректность настроек.

    1. В командной строке перейдите в каталог, в котором расположены актуальные конфигурационные файлы Terraform с планом инфраструктуры.

    2. Выполните команду:

      terraform validate
      

      Если в файлах конфигурации есть ошибки, Terraform на них укажет.

  4. Подтвердите изменение ресурсов.

    1. Выполните команду для просмотра планируемых изменений:

      terraform plan
      

      Если конфигурации ресурсов описаны верно, в терминале отобразится список изменяемых ресурсов и их параметров. Это проверочный этап: ресурсы не будут изменены.

    2. Если вас устраивают планируемые изменения, внесите их:

      1. Выполните команду:

        terraform apply
        
      2. Подтвердите изменение ресурсов.

      3. Дождитесь завершения операции.

Ограничения по времени

Провайдер Terraform ограничивает время на выполнение операций с кластером Yandex Managed Service for Valkey™:

  • создание, в т. ч. путем восстановления из резервной копии, — 15 минут;
  • изменение — 60 минут;
  • удаление — 15 минут.

Операции, длящиеся дольше указанного времени, прерываются.

Как изменить эти ограничения?

Добавьте к описанию кластера блок timeouts, например:

resource "yandex_mdb_redis_cluster" "<имя_кластера>" {
  ...
  timeouts {
    create = "1h30m" # Полтора часа
    update = "2h"    # 2 часа
    delete = "30m"   # 30 минут
  }
}
  1. Получите IAM-токен для аутентификации в API и поместите токен в переменную среды окружения:

    export IAM_TOKEN="<IAM-токен>"
    
  2. Создайте файл body.json и добавьте в него следующее содержимое:

    {
      "updateMask": "passwords",
      "passwords": [
        "<пароль_пользователя>"
      ]
    }
    

    Где:

    • updateMask — перечень изменяемых параметров в строку через запятую.

      Важно

      При изменении пользователя все параметры изменяемого объекта, которые не были явно переданы в запросе, будут переопределены на значения по умолчанию. Чтобы избежать этого, перечислите настройки, которые вы хотите изменить, в параметре updateMask.

    • passwords — пароль пользователя. Длина пароля — от 8 до 128 символов.

      Можно указать только один пароль.

  3. Воспользуйтесь методом User.Update и выполните запрос, например с помощью cURL:

    curl \
      --request PATCH \
      --header "Authorization: Bearer $IAM_TOKEN" \
      --header "Content-Type: application/json" \
      --url 'https://mdb.api.cloud.yandex.net/managed-redis/v1/clusters/<идентификатор_кластера>/users/<имя_пользователя>' \
      --data "@body.json"
    

    Идентификатор кластера можно получить со списком кластеров в каталоге.

    Имя пользователя можно получить со списком пользователей в кластере.

  4. Убедитесь, что запрос был выполнен успешно, изучив ответ сервера.

  1. Получите IAM-токен для аутентификации в API и поместите токен в переменную среды окружения:

    export IAM_TOKEN="<IAM-токен>"
    
  2. Клонируйте репозиторий cloudapi:

    cd ~/ && git clone --depth=1 https://github.com/yandex-cloud/cloudapi
    

    Далее предполагается, что содержимое репозитория находится в директории ~/cloudapi/.

  3. Создайте файл body.json и добавьте в него следующее содержимое:

    {
      "cluster_id": "<идентификатор_кластера>",
      "user_name": "<имя_пользователя>",
      "update_mask": {
        "paths": [
          "passwords"
        ]
      },
      "passwords": [
        "<пароль_пользователя>"
      ]
    }
    

    Где:

    • cluster_id — идентификатор кластера.

      Идентификатор кластера можно получить со списком кластеров в каталоге.

    • user_name — имя пользователя.

      Имя пользователя можно получить со списком пользователей в кластере.

    • update_mask — перечень изменяемых параметров в виде массива строк paths[].

      Формат перечисления настроек
      "update_mask": {
        "paths": [
          "<настройка_1>",
          "<настройка_2>",
          ...
          "<настройка_N>"
        ]
      }
      

      Важно

      При изменении пользователя все параметры изменяемого объекта, которые не были явно переданы в запросе, будут переопределены на значения по умолчанию. Чтобы избежать этого, перечислите настройки, которые вы хотите изменить, в параметре update_mask.

    • passwords — пароль пользователя. Длина пароля — от 8 до 128 символов.

      Можно указать только один пароль.

  4. Воспользуйтесь вызовом UserService.Update и выполните запрос, например с помощью gRPCurl:

    grpcurl \
      -format json \
      -import-path ~/cloudapi/ \
      -import-path ~/cloudapi/third_party/googleapis/ \
      -proto ~/cloudapi/yandex/cloud/mdb/redis/v1/user_service.proto \
      -rpc-header "Authorization: Bearer $IAM_TOKEN" \
      -d @ \
      mdb.api.cloud.yandex.net:443 \
      yandex.cloud.mdb.redis.v1.UserService.Update \
      < body.json
    
  5. Убедитесь, что запрос был выполнен успешно, изучив ответ сервера.

Изменить статус пользователяИзменить статус пользователя

CLI
Terraform
REST API
gRPC API

Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.

По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name или --folder-id.

Чтобы изменить статус пользователя Valkey™:

  1. Посмотрите описание команды CLI для изменения настроек пользователя:

    yc managed-redis user update --help
    
  2. Измените статус пользователя, выполнив команду:

    yc managed-redis user update <имя_пользователя> \
      --cluster-id=<идентификатор_кластера> \
      <статус_пользователя> 
    

    Где:

    • --cluster-id — идентификатор кластера.

      Идентификатор кластера можно получить со списком кластеров в каталоге.

    • Укажите один из флагов, определяющих статус пользователя:

      • --disabled — пользователь отключен;
      • --enabled — пользователь включен.

    Имя пользователя можно получить со списком пользователей в кластере.

  1. Откройте актуальный конфигурационный файл Terraform с планом инфраструктуры.

    О том, как создать такой файл, см. в разделе Создание кластера.

  2. Измените в описании ресурса yandex_mdb_redis_user параметр enabled:

    resource "yandex_mdb_redis_user" "<локальное_имя_ресурса>" {
      ...
      enabled = <статус_пользователя>
      ...
    }
    

    Где enabled — статус пользователя. Возможные значения:

    • true — пользователь включен;
    • false — пользователь отключен.
  3. Проверьте корректность настроек.

    1. В командной строке перейдите в каталог, в котором расположены актуальные конфигурационные файлы Terraform с планом инфраструктуры.

    2. Выполните команду:

      terraform validate
      

      Если в файлах конфигурации есть ошибки, Terraform на них укажет.

  4. Подтвердите изменение ресурсов.

    1. Выполните команду для просмотра планируемых изменений:

      terraform plan
      

      Если конфигурации ресурсов описаны верно, в терминале отобразится список изменяемых ресурсов и их параметров. Это проверочный этап: ресурсы не будут изменены.

    2. Если вас устраивают планируемые изменения, внесите их:

      1. Выполните команду:

        terraform apply
        
      2. Подтвердите изменение ресурсов.

      3. Дождитесь завершения операции.

Ограничения по времени

Провайдер Terraform ограничивает время на выполнение операций с кластером Yandex Managed Service for Valkey™:

  • создание, в т. ч. путем восстановления из резервной копии, — 15 минут;
  • изменение — 60 минут;
  • удаление — 15 минут.

Операции, длящиеся дольше указанного времени, прерываются.

Как изменить эти ограничения?

Добавьте к описанию кластера блок timeouts, например:

resource "yandex_mdb_redis_cluster" "<имя_кластера>" {
  ...
  timeouts {
    create = "1h30m" # Полтора часа
    update = "2h"    # 2 часа
    delete = "30m"   # 30 минут
  }
}
  1. Получите IAM-токен для аутентификации в API и поместите токен в переменную среды окружения:

    export IAM_TOKEN="<IAM-токен>"
    
  2. Создайте файл body.json и добавьте в него следующее содержимое:

    {
      "updateMask": "enabled",
      "enabled": <статус_пользователя>
    }
    

    Где:

    • updateMask — перечень изменяемых параметров в строку через запятую.

      Важно

      При изменении пользователя все параметры изменяемого объекта, которые не были явно переданы в запросе, будут переопределены на значения по умолчанию. Чтобы избежать этого, перечислите настройки, которые вы хотите изменить, в параметре updateMask.

    • enabled — статус пользователя. Возможные значения:

      • true — пользователь включен;
      • false — пользователь отключен.
  3. Воспользуйтесь методом User.Update и выполните запрос, например с помощью cURL:

    curl \
      --request PATCH \
      --header "Authorization: Bearer $IAM_TOKEN" \
      --header "Content-Type: application/json" \
      --url 'https://mdb.api.cloud.yandex.net/managed-redis/v1/clusters/<идентификатор_кластера>/users/<имя_пользователя>' \
      --data "@body.json"
    

    Идентификатор кластера можно получить со списком кластеров в каталоге.

    Имя пользователя можно получить со списком пользователей в кластере.

  4. Убедитесь, что запрос был выполнен успешно, изучив ответ сервера.

  1. Получите IAM-токен для аутентификации в API и поместите токен в переменную среды окружения:

    export IAM_TOKEN="<IAM-токен>"
    
  2. Клонируйте репозиторий cloudapi:

    cd ~/ && git clone --depth=1 https://github.com/yandex-cloud/cloudapi
    

    Далее предполагается, что содержимое репозитория находится в директории ~/cloudapi/.

  3. Создайте файл body.json и добавьте в него следующее содержимое:

    {
      "cluster_id": "<идентификатор_кластера>",
      "user_name": "<имя_пользователя>",
      "update_mask": {
        "paths": [
          "enabled"
        ]
      },
      "enabled": <статус_пользователя>
    }
    

    Где:

    • cluster_id — идентификатор кластера.

      Идентификатор кластера можно получить со списком кластеров в каталоге.

    • user_name — имя пользователя.

      Имя пользователя можно получить со списком пользователей в кластере.

    • update_mask — перечень изменяемых параметров в виде массива строк paths[].

      Формат перечисления настроек
      "update_mask": {
        "paths": [
          "<настройка_1>",
          "<настройка_2>",
          ...
          "<настройка_N>"
        ]
      }
      

      Важно

      При изменении пользователя все параметры изменяемого объекта, которые не были явно переданы в запросе, будут переопределены на значения по умолчанию. Чтобы избежать этого, перечислите настройки, которые вы хотите изменить, в параметре update_mask.

    • enabled — статус пользователя. Возможные значения:

      • true — пользователь включен;
      • false — пользователь отключен.
  4. Воспользуйтесь вызовом UserService.Update и выполните запрос, например с помощью gRPCurl:

    grpcurl \
      -format json \
      -import-path ~/cloudapi/ \
      -import-path ~/cloudapi/third_party/googleapis/ \
      -proto ~/cloudapi/yandex/cloud/mdb/redis/v1/user_service.proto \
      -rpc-header "Authorization: Bearer $IAM_TOKEN" \
      -d @ \
      mdb.api.cloud.yandex.net:443 \
      yandex.cloud.mdb.redis.v1.UserService.Update \
      < body.json
    
  5. Убедитесь, что запрос был выполнен успешно, изучив ответ сервера.

Настроить очистку данныхНастроить очистку данных

CLI
Terraform
REST API
gRPC API

Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.

По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name или --folder-id.

Чтобы настроить очистку данных:

  1. Посмотрите описание команды CLI для изменения настроек пользователя:

    yc managed-redis user update --help
    
  2. Настройте очистку данных, выполнив команду:

    yc managed-redis user update <имя_пользователя> \
      --cluster-id=<идентификатор_кластера> \
      --sanitize-payload=<очистка_данных> 
    

    Где:

    • --cluster-id — идентификатор кластера.

      Идентификатор кластера можно получить со списком кластеров в каталоге.

    • --sanitize-payload — очистка данных. Возможные значения:

      • sanitize-payload (по умолчанию) — очистка данных включена;
      • skip-sanitize-payload — очистка данных отключена.

    Имя пользователя можно получить со списком пользователей в кластере.

  1. Откройте актуальный конфигурационный файл Terraform с планом инфраструктуры.

    О том, как создать такой файл, см. в разделе Создание кластера.

  2. Измените в описании ресурса yandex_mdb_redis_user параметр sanitize_payload:

    resource "yandex_mdb_redis_user" "<локальное_имя_ресурса>" {
      ...
      sanitize_payload = "<очистка_данных>"
      ...
    }
    

    Где sanitize_payload — очистка данных. Возможные значения:

    • sanitize-payload (по умолчанию) — очистка данных включена;
    • skip-sanitize-payload — очистка данных отключена.
  3. Проверьте корректность настроек.

    1. В командной строке перейдите в каталог, в котором расположены актуальные конфигурационные файлы Terraform с планом инфраструктуры.

    2. Выполните команду:

      terraform validate
      

      Если в файлах конфигурации есть ошибки, Terraform на них укажет.

  4. Подтвердите изменение ресурсов.

    1. Выполните команду для просмотра планируемых изменений:

      terraform plan
      

      Если конфигурации ресурсов описаны верно, в терминале отобразится список изменяемых ресурсов и их параметров. Это проверочный этап: ресурсы не будут изменены.

    2. Если вас устраивают планируемые изменения, внесите их:

      1. Выполните команду:

        terraform apply
        
      2. Подтвердите изменение ресурсов.

      3. Дождитесь завершения операции.

Ограничения по времени

Провайдер Terraform ограничивает время на выполнение операций с кластером Yandex Managed Service for Valkey™:

  • создание, в т. ч. путем восстановления из резервной копии, — 15 минут;
  • изменение — 60 минут;
  • удаление — 15 минут.

Операции, длящиеся дольше указанного времени, прерываются.

Как изменить эти ограничения?

Добавьте к описанию кластера блок timeouts, например:

resource "yandex_mdb_redis_cluster" "<имя_кластера>" {
  ...
  timeouts {
    create = "1h30m" # Полтора часа
    update = "2h"    # 2 часа
    delete = "30m"   # 30 минут
  }
}
  1. Получите IAM-токен для аутентификации в API и поместите токен в переменную среды окружения:

    export IAM_TOKEN="<IAM-токен>"
    
  2. Создайте файл body.json и добавьте в него следующее содержимое:

    {
      "updateMask": "permissions.sanitizePayload",
      "permissions": {
        "sanitizePayload": "<очистка_данных>"
      }
    }
    

    Где:

    • updateMask — перечень изменяемых параметров в строку через запятую.

      Важно

      При изменении пользователя все параметры изменяемого объекта, которые не были явно переданы в запросе, будут переопределены на значения по умолчанию. Чтобы избежать этого, перечислите настройки, которые вы хотите изменить, в параметре updateMask.

    • permissions.sanitizePayload — очистка данных. Возможные значения:

      • sanitize-payload (по умолчанию) — очистка данных включена;
      • skip-sanitize-payload — очистка данных отключена.
  3. Воспользуйтесь методом User.Update и выполните запрос, например с помощью cURL:

    curl \
      --request PATCH \
      --header "Authorization: Bearer $IAM_TOKEN" \
      --header "Content-Type: application/json" \
      --url 'https://mdb.api.cloud.yandex.net/managed-redis/v1/clusters/<идентификатор_кластера>/users/<имя_пользователя>' \
      --data "@body.json"
    

    Идентификатор кластера можно получить со списком кластеров в каталоге.

    Имя пользователя можно получить со списком пользователей в кластере.

  4. Убедитесь, что запрос был выполнен успешно, изучив ответ сервера.

  1. Получите IAM-токен для аутентификации в API и поместите токен в переменную среды окружения:

    export IAM_TOKEN="<IAM-токен>"
    
  2. Клонируйте репозиторий cloudapi:

    cd ~/ && git clone --depth=1 https://github.com/yandex-cloud/cloudapi
    

    Далее предполагается, что содержимое репозитория находится в директории ~/cloudapi/.

  3. Создайте файл body.json и добавьте в него следующее содержимое:

    {
      "cluster_id": "<идентификатор_кластера>",
      "user_name": "<имя_пользователя>",
      "update_mask": {
        "paths": [
          "permissions.sanitize_payload"
        ]
      },
      "permissions": {
        "sanitize_payload": "<очистка_данных>"
      }
    }
    

    Где:

    • cluster_id — идентификатор кластера.

      Идентификатор кластера можно получить со списком кластеров в каталоге.

    • user_name — имя пользователя.

      Имя пользователя можно получить со списком пользователей в кластере.

    • update_mask — перечень изменяемых параметров в виде массива строк paths[].

      Формат перечисления настроек
      "update_mask": {
        "paths": [
          "<настройка_1>",
          "<настройка_2>",
          ...
          "<настройка_N>"
        ]
      }
      

      Важно

      При изменении пользователя все параметры изменяемого объекта, которые не были явно переданы в запросе, будут переопределены на значения по умолчанию. Чтобы избежать этого, перечислите настройки, которые вы хотите изменить, в параметре update_mask.

    • permissions.sanitize_payload — очистка данных. Возможные значения:

      • sanitize-payload (по умолчанию) — очистка данных включена;
      • skip-sanitize-payload — очистка данных отключена.
  4. Воспользуйтесь вызовом UserService.Update и выполните запрос, например с помощью gRPCurl:

    grpcurl \
      -format json \
      -import-path ~/cloudapi/ \
      -import-path ~/cloudapi/third_party/googleapis/ \
      -proto ~/cloudapi/yandex/cloud/mdb/redis/v1/user_service.proto \
      -rpc-header "Authorization: Bearer $IAM_TOKEN" \
      -d @ \
      mdb.api.cloud.yandex.net:443 \
      yandex.cloud.mdb.redis.v1.UserService.Update \
      < body.json
    
  5. Убедитесь, что запрос был выполнен успешно, изучив ответ сервера.

Назначить разрешения пользователюНазначить разрешения пользователю

CLI
Terraform
REST API
gRPC API

Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.

По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name или --folder-id.

Чтобы назначить разрешения пользователю Valkey™:

  1. Посмотрите описание команды CLI для изменения настроек пользователя:

    yc managed-redis user update --help
    
  2. Назначьте разрешения пользователю, выполнив команду:

    yc managed-redis user update <имя_пользователя> \
      --cluster-id=<идентификатор_кластера> \
      --raw="<разрешения>" \
      --categories="<разрешения_на_категории_команд>" \
      --commands="<разрешения_на_команды>" \
      --patterns="<разрешения_на_шаблоны_ключей>" \
      --pub-sub-channels="<разрешения_на_каналы>"
    

    Где:

    • --cluster-id — идентификатор кластера.

      Идентификатор кластера можно получить со списком кластеров в каталоге.

    • --raw — разрешения, в строку через пробел. Также строка должна включать настройку статуса пользователя:

      • on — пользователь включен;
      • off — пользователь отключен.

      Пример: on ~data:* &* +@set +@hash +get +set.

      Примечание

      Флаг --raw не используется с флагами отдельных разрешений и с флагами --disabled и --enabled.

    • --categories — разрешения на категории команд, в строку через пробел.

    • --commands — разрешения на команды, в строку через пробел.

    • --patterns — разрешения на шаблоны ключей, в строку через пробел.

    • --pub-sub-channels — разрешения на каналы Pub/Sub, в строку через пробел.

    Примечание

    Пользователю не могут быть выданы разрешения на категорию административных команд +@admin и некоторые команды.

    Подробнее о списках контроля доступа читайте в документации Valkey™ ACL.

    Имя пользователя можно получить со списком пользователей в кластере.

  1. Откройте актуальный конфигурационный файл Terraform с планом инфраструктуры.

    О том, как создать такой файл, см. в разделе Создание кластера.

  2. Измените в описании ресурса yandex_mdb_redis_user параметры в блоке permissions:

    resource "yandex_mdb_redis_user" "<локальное_имя_ресурса>" {
      ...
      permissions = {
        categories       = "<разрешения_на_категории_команд>"
        commands         = "<разрешения_на_команды>"
        patterns         = "<разрешения_на_шаблоны_ключей>"
        pub_sub_channels = "<разрешения_на_каналы>"
        ...
      }
      ...
    }
    

    Где permissions — настройки разрешений пользователя:

    • categories — разрешения на категории команд, в строку через пробел.

    • commands — разрешения на команды, в строку через пробел.

    • patterns — разрешения на шаблоны ключей, в строку через пробел.

    • pub_sub_channels — разрешения на каналы Pub/Sub, в строку через пробел.

    Примечание

    Пользователю не могут быть выданы разрешения на категорию административных команд +@admin и некоторые команды.

    Подробнее о списках контроля доступа читайте в документации Valkey™ ACL.

  3. Проверьте корректность настроек.

    1. В командной строке перейдите в каталог, в котором расположены актуальные конфигурационные файлы Terraform с планом инфраструктуры.

    2. Выполните команду:

      terraform validate
      

      Если в файлах конфигурации есть ошибки, Terraform на них укажет.

  4. Подтвердите изменение ресурсов.

    1. Выполните команду для просмотра планируемых изменений:

      terraform plan
      

      Если конфигурации ресурсов описаны верно, в терминале отобразится список изменяемых ресурсов и их параметров. Это проверочный этап: ресурсы не будут изменены.

    2. Если вас устраивают планируемые изменения, внесите их:

      1. Выполните команду:

        terraform apply
        
      2. Подтвердите изменение ресурсов.

      3. Дождитесь завершения операции.

Ограничения по времени

Провайдер Terraform ограничивает время на выполнение операций с кластером Yandex Managed Service for Valkey™:

  • создание, в т. ч. путем восстановления из резервной копии, — 15 минут;
  • изменение — 60 минут;
  • удаление — 15 минут.

Операции, длящиеся дольше указанного времени, прерываются.

Как изменить эти ограничения?

Добавьте к описанию кластера блок timeouts, например:

resource "yandex_mdb_redis_cluster" "<имя_кластера>" {
  ...
  timeouts {
    create = "1h30m" # Полтора часа
    update = "2h"    # 2 часа
    delete = "30m"   # 30 минут
  }
}
  1. Получите IAM-токен для аутентификации в API и поместите токен в переменную среды окружения:

    export IAM_TOKEN="<IAM-токен>"
    
  2. Создайте файл body.json и добавьте в него следующее содержимое:

    {
      "updateMask": "<список_изменяемых_параметров>",
      "permissions": {
        "patterns": "<разрешения_на_шаблоны_ключей>",
        "pubSubChannels": "<разрешения_на_каналы>",
        "categories": "<разрешения_на_категории_команд>",
        "commands": "<разрешения_на_команды>"
      }
    }
    

    Где:

    • updateMask — перечень изменяемых параметров в строку через запятую.

      Важно

      При изменении пользователя все параметры изменяемого объекта, которые не были явно переданы в запросе, будут переопределены на значения по умолчанию. Чтобы избежать этого, перечислите настройки, которые вы хотите изменить, в параметре updateMask.

    • permissions.patterns — разрешения на шаблоны ключей, в строку через пробел.

    • permissions.pubSubChannels — разрешения на каналы Pub/Sub, в строку через пробел.

    • permissions.categories — разрешения на категории команд, в строку через пробел.

    • permissions.commands — разрешения на команды, в строку через пробел.

    Примечание

    Пользователю не могут быть выданы разрешения на категорию административных команд +@admin и некоторые команды.

    Подробнее о списках контроля доступа читайте в документации Valkey™ ACL.

  3. Воспользуйтесь методом User.Update и выполните запрос, например с помощью cURL:

    curl \
      --request PATCH \
      --header "Authorization: Bearer $IAM_TOKEN" \
      --header "Content-Type: application/json" \
      --url 'https://mdb.api.cloud.yandex.net/managed-redis/v1/clusters/<идентификатор_кластера>/users/<имя_пользователя>' \
      --data "@body.json"
    

    Идентификатор кластера можно получить со списком кластеров в каталоге.

    Имя пользователя можно получить со списком пользователей в кластере.

  4. Убедитесь, что запрос был выполнен успешно, изучив ответ сервера.

  1. Получите IAM-токен для аутентификации в API и поместите токен в переменную среды окружения:

    export IAM_TOKEN="<IAM-токен>"
    
  2. Клонируйте репозиторий cloudapi:

    cd ~/ && git clone --depth=1 https://github.com/yandex-cloud/cloudapi
    

    Далее предполагается, что содержимое репозитория находится в директории ~/cloudapi/.

  3. Создайте файл body.json и добавьте в него следующее содержимое:

    {
      "cluster_id": "<идентификатор_кластера>",
      "user_name": "<имя_пользователя>",
      "update_mask": {
        "paths": [
          <список_изменяемых_параметров>
        ]
      },
      "permissions": {
        "patterns": "<разрешения_на_шаблоны_ключей>",
        "pub_sub_channels": "<разрешения_на_каналы>",
        "categories": "<разрешения_на_категории_команд>",
        "commands": "<разрешения_на_команды>"
      }
    }
    

    Где:

    • cluster_id — идентификатор кластера.

      Идентификатор кластера можно получить со списком кластеров в каталоге.

    • user_name — имя пользователя.

      Имя пользователя можно получить со списком пользователей в кластере.

    • update_mask — перечень изменяемых параметров в виде массива строк paths[].

      Формат перечисления настроек
      "update_mask": {
        "paths": [
          "<настройка_1>",
          "<настройка_2>",
          ...
          "<настройка_N>"
        ]
      }
      

      Важно

      При изменении пользователя все параметры изменяемого объекта, которые не были явно переданы в запросе, будут переопределены на значения по умолчанию. Чтобы избежать этого, перечислите настройки, которые вы хотите изменить, в параметре update_mask.

    • permissions.patterns — разрешения на шаблоны ключей, в строку через пробел.

    • permissions.pub_sub_channels — разрешения на каналы Pub/Sub, в строку через пробел.

    • permissions.categories — разрешения на категории команд, в строку через пробел.

    • permissions.commands — разрешения на команды, в строку через пробел.

    Примечание

    Пользователю не могут быть выданы разрешения на категорию административных команд +@admin и некоторые команды.

    Подробнее о списках контроля доступа читайте в документации Valkey™ ACL.

  4. Воспользуйтесь вызовом UserService.Update и выполните запрос, например с помощью gRPCurl:

    grpcurl \
      -format json \
      -import-path ~/cloudapi/ \
      -import-path ~/cloudapi/third_party/googleapis/ \
      -proto ~/cloudapi/yandex/cloud/mdb/redis/v1/user_service.proto \
      -rpc-header "Authorization: Bearer $IAM_TOKEN" \
      -d @ \
      mdb.api.cloud.yandex.net:443 \
      yandex.cloud.mdb.redis.v1.UserService.Update \
      < body.json
    
  5. Убедитесь, что запрос был выполнен успешно, изучив ответ сервера.

Была ли статья полезна?

Предыдущая
Создание пользователя
Следующая
Удаление пользователя
Проект Яндекса
© 2025 ООО «Яндекс.Облако»