Skip to content

Latest commit

 

History

History
69 lines (48 loc) · 6.31 KB

File metadata and controls

69 lines (48 loc) · 6.31 KB

Terraform модуль usersgen

Оглавление

Описание модуля

Модуль usersgen является вспомогательным для модуля zitadel-config из которого вызывается.

С помощью данного модуля осуществляется управление обычными пользователями (не менеджерами) в организации Zitadel.

Входные параметры модуля

Параметр (переменная) Описание
zitadel_users Полный путь к YAML-файлу с описанием пользователей. Например, может быть определён так - "${abspath(path.module)}/users.yml", что означает, взять из папки где запускается модуль файл users.yml. Формат описания пользователей см. в разделе "Управление пользователями".
templates_file Имя файла с шаблоном пользовательских ресурсов, которые будут создаваться. В каталоге templates приведены несколько примеров для разных сценариев. При необходимости в этом же каталоге можно создавать другие шаблоны.

Шаблоны пользовательских ресурсов

Имя файла с шаблоном в каталоге templates Описание шаблона
user.tpl Создаёт пользователя в Zitadel и добавляет его в облачную организацию Yandex Cloud.
user-cloud-folder.tpl Дополнительно к шаблону user.tpl создаёт в Yandex Cloud для каждого пользователя облако и каталог, а также выдаёт пользователю доступ к этим объектам.
user-cloud-folder-vpc-gw-rt.tpl Дополнительно к шаблону user-cloud-folder.tpl создаёт в пользовательском каталоге сеть, подсети, NAT-шлюз и таблицу маршрутизации для всех подсетей, которая обеспечивает выход в Интернет для подключенных ресурсов.
user-gitlab.tpl Дополнительно к шаблону user.tpl создаёт в Gitlab пользователя и репозиторий (project) для него.
user-gitlab-cloud-folder.tpl Дополнительно к шаблону user-cloud-folder.tpl создаёт в Gitlab пользователя и репозиторий (project) для него.

Выходные параметры модуля

Формально выходных параметров у модуля нет (он ничего не возвращает), однако в процессе своей работы он генерирует terraform код, который записывается в файл с определённым именем по определенному пути. Значения имени и пути определяются в коде модуля в переменной users_out. По умолчанию это значение равно ../../zitadel-config/users.tf, но может быть изменено при необходимости.

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

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

  • добавление нового пользователя в Zitadel организацию.
  • удаление существующего пользователя из Zitadel организации.
  • изменение атрибутов у существующего в организации пользователя.

Управление пользователями осуществляется с помощью специального файла в формате YAML с описанием пользователей и их атрибутов. Каждая запись в этом файле описывает одного пользователя. В файле может быть одна или несколько записей.

Пример записи с описанием атрибутов для одного пользователя приведён ниже:

zuser1:
  fname: "First"
  lname: "Firstov"
  lang: "en"
  email: "first@myorg.org"
  pass: "Th3mVxPz5#mIDXlL7P"

где,

  • zuser1 - идентификатор пользователя
  • fname - имя пользователя (First Name)
  • lname - фамилия пользователя (Last Name)
  • lang - язык интерфейса по-умолчанию для пользователя в Zitadel
  • pass - пароль учетной записи пользователя

Примечание: При аутентификация пользователь должен будет ввести свой идентификатор zuser1 и пароль.