Spec-Zone.ru › Ansible 2.9

keycloak_group – Разрешает администрирование групп Keycloak через API Keycloak

Новая версия с версии 2.8.

  • Описание
  • Параметры
  • Примечания
  • Примеры
  • Значения возврата
  • Статус

Описание

  • Этот модуль позволяет добавлять, удалять или изменять группы Keycloak через REST API Keycloak. Он требует доступа к REST API через OpenID Connect; пользователь, подключающийся, и используемый клиент должны иметь необходимые права доступа. В стандартной установке Keycloak admin-cli и административный пользователь будут работать, как и отдельное определение клиента со scope, настроенным под ваши потребности, и пользователем с ожидаемыми ролями.
  • Имена параметров модуля являются snake_cased версиями camelCase, найденными в API Keycloak и его документации по адресу http://www.keycloak.org/docs-api/3.3/rest-api/.
  • Атрибуты являются многозначными в API Keycloak. Все атрибуты являются списками отдельных значений и будут возвращаться таким же образом этим модулем. Вы можете передать одиночные значения для атрибутов при вызове модуля, и это будет преобразовано в список, подходящий для API.
  • При обновлении группы, где это возможно, предоставьте идентификатор группы модулю. Это устраняет поиск в API для преобразования имени в идентификатор группы.

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
attributes
словарь
Словарь пар «ключ-значение» для установки пользовательских атрибутов для группы.
Значения могут быть одиночными значениями (например, строкой) или списком строк.
auth_client_id
строка / обязательно
По умолчанию:
"admin-cli"
OpenID Connect client_id для аутентификации с API.
auth_client_secret
строка
Секретный ключ клиента для использования совместно с auth_client_id (если требуется).
auth_keycloak_url
строка / обязательно
URL-адрес экземпляра Keycloak.

псевдонимы: url
auth_password
строка / обязательно
Пароль для аутентификации доступа к API.

псевдонимы: password
auth_realm
строка / обязательно
Имя области Keycloak для аутентификации доступа к API.
auth_username
строка / обязательно
Имя пользователя для аутентификации доступа к API.

псевдонимы: username
id
строка
Уникальный идентификатор этой группы.
Этот параметр не обязателен для обновления или удаления группы, но его предоставление уменьшит количество запросов к API.
name
строка
Имя группы.
Этот параметр обязателен только при создании или обновлении группы.
realm
строка
По умолчанию:
"master"
Область Keycloak, в которой находится эта группа.
state
строка / обязательно
    Варианты:
  • present ←
  • absent
Состояние группы.
При present, группа будет создана, если она еще не существует, или обновлена с предоставленными параметрами.
При absent, группа будет удалена, если она существует.
validate_certs
булево
    Варианты:
  • no
  • yes ←
Проверка сертификатов TLS (не отключайте это в производственной среде).

Примечания

Примечание

  • В настоящее время атрибуты realmRoles, clientRoles и access, возвращаемые API Keycloak, являются только для чтения для групп. Это ограничение будет устранено в последующей версии этого модуля.

Примеры

- name: Create a Keycloak group
  keycloak_group:
    name: my-new-kc-group
    realm: MyCustomRealm
    state: present
    auth_client_id: admin-cli
    auth_keycloak_url: https://auth.example.com/auth
    auth_realm: master
    auth_username: USERNAME
    auth_password: PASSWORD
  delegate_to: localhost

- name: Delete a keycloak group
  keycloak_group:
    id: '9d59aa76-2755-48c6-b1af-beb70a82c3cd'
    state: absent
    realm: MyCustomRealm
    auth_client_id: admin-cli
    auth_keycloak_url: https://auth.example.com/auth
    auth_realm: master
    auth_username: USERNAME
    auth_password: PASSWORD
  delegate_to: localhost

- name: Delete a Keycloak group based on name
  keycloak_group:
    name: my-group-for-deletion
    state: absent
    auth_client_id: admin-cli
    auth_keycloak_url: https://auth.example.com/auth
    auth_realm: master
    auth_username: USERNAME
    auth_password: PASSWORD
  delegate_to: localhost

- name: Update the name of a Keycloak group
  keycloak_group:
    id: '9d59aa76-2755-48c6-b1af-beb70a82c3cd'
    name: an-updated-kc-group-name
    state: present
    auth_client_id: admin-cli
    auth_keycloak_url: https://auth.example.com/auth
    auth_realm: master
    auth_username: USERNAME
    auth_password: PASSWORD
  delegate_to: localhost

- name: Create a keycloak group with some custom attributes
  keycloak_group:
    auth_client_id: admin-cli
    auth_keycloak_url: https://auth.example.com/auth
    auth_realm: master
    auth_username: USERNAME
    auth_password: PASSWORD
    name: my-new_group
    attributes:
        attrib1: value1
        attrib2: value2
        attrib3:
            - with
            - numerous
            - individual
            - list
            - items
  delegate_to: localhost

Значения возврата

Общие значения возврата описаны в здесь, следующие поля уникальны для этого модуля:

Ключ Возвращаемое значение Описание
group
сложный
всегда
Представление группы после выполнения модуля (пример урезан).

access
словарь
всегда
Словарь, описывающий доступ, который у вас есть к этой группе, на основе используемых учетных данных.

Пример:
{'manage': True, 'manageMembership': True, 'view': True}
attributes
словарь
всегда
Атрибуты, примененные к этой группе

Пример:
{'attr1': ['val1', 'val2', 'val3']}
clientRoles
список
всегда
Список ролей уровня клиента, предоставленных этой группе

id
строка
всегда
GUID, который идентифицирует группу

Пример:
23f38145-3195-462c-97e7-97041ccea73e
name
строка
всегда
Имя группы

Пример:
grp-test-123
path
строка
всегда
Путь URI к группе

Пример:
/grp-test-123
realmRoles
список
всегда
Массив ролей уровня области, предоставленных этой группе

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



Статус

  • Этот модуль не гарантирует обратной совместимости интерфейса. [превью]
  • Этот модуль поддерживается сообществом Ansible. [сообщество]

Авторы

  • Adam Goossens (@adamgoossens)

Подсказка

Если вы заметите какие-либо проблемы в этой документации, вы можете отредактировать этот документ, чтобы улучшить его.

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.9/modules/keycloak_group_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API