Spec-Zone.ru › Ansible

Модуль community.general.keycloak_client_rolescope — позволяет управлять областью ролей клиентов Keycloak, чтобы ограничить использование определённых ролей другими конкретными клиентскими приложениями

Примечание

Этот модуль входит в коллекцию community.general (версия 12.6.1).

Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.

Для установки используйте: ansible-galaxy collection install community.general.

Чтобы использовать её в плейбуке, укажите: community.general.keycloak_client_rolescope.

Добавлено в community.general 8.6.0

  • Краткое описание
  • Параметры
  • Атрибуты
  • Примеры
  • Возвращаемые значения

Краткое описание

  • Этот модуль позволяет добавлять или удалять роли Keycloak из области клиентов с помощью REST API Keycloak. Для этого требуется доступ к REST API через OpenID Connect; подключающийся пользователь и используемый клиент должны иметь необходимые права доступа. В стандартной установке Keycloak подойдут admin-cli и пользователь с правами администратора, а также отдельное определение клиента с областью, настроенной в соответствии с вашими потребностями, и пользователь с необходимыми ролями.
  • Для клиента client_id параметр full_scope_allowed должен иметь значение false.
  • В API Keycloak атрибуты могут иметь несколько значений. Все атрибуты представляют собой списки отдельных значений и возвращаются этим модулем в таком виде. При вызове модуля для атрибутов можно передавать одиночные значения — они будут преобразованы в списки, подходящие для API.

Параметры

Параметр

Комментарии

auth_client_id

string

Идентификатор клиента OpenID Connect client_id для аутентификации в API.

По умолчанию: "admin-cli"

auth_client_secret

string

Секрет клиента, используемый вместе с auth_client_id (если требуется).

auth_keycloak_url

псевдонимы: url

string / обязательный

URL экземпляра Keycloak.

auth_password

псевдонимы: password

string

Пароль для аутентификации при доступе к API.

auth_realm

string

Имя области Keycloak для аутентификации при доступе к API.

auth_username

псевдонимы: username

string

Имя пользователя для аутентификации при доступе к API.

client_id

string / обязательный

Роли, указанные в role_names, будут добавлены в область этого клиента.

client_scope_id

string

Если role_names являются ролями клиента, укажите идентификатор клиента, которому они принадлежат.

Если этот параметр не указан, роли считаются ролями области.

connection_timeout

integer

добавлено в community.general 4.5.0

Задаёт время ожидания HTTP-подключения к API Keycloak (в секундах).

По умолчанию: 10

http_agent

string

добавлено в community.general 5.4.0

Настраивает заголовок HTTP User-Agent.

По умолчанию: "Ansible"

realm

string

Область Keycloak, в которой находятся клиенты.

По умолчанию: "master"

refresh_token

string

добавлено в community.general 10.3.0

Токен обновления для аутентификации в API Keycloak.

role_names

list / elements=string / обязательный

Имена ролей для управления.

Если указан client_scope_id, все роли должны принадлежать этому клиенту.

Если client_scope_id не указан, все роли должны принадлежать области.

state

string

Состояние сопоставления ролей.

При present все роли из role_names сопоставляются, если они ещё не сопоставлены.

При absent все сопоставления ролей в role_names удаляются, если они существуют.

Варианты:

  • "present" ← (по умолчанию)
  • "absent"

token

string

добавлено в community.general 3.0.0

Токен аутентификации для API Keycloak.

validate_certs

boolean

Проверять сертификаты TLS (не отключайте эту проверку в рабочей среде).

Варианты:

  • false
  • true ← (по умолчанию)

Атрибуты

Атрибут

Поддержка

Описание

action_group

Группа действий: community.general.keycloak

добавлено в community.general 10.2.0

Используйте group/community.general.keycloak в module_defaults, чтобы задать значения по умолчанию для этого модуля.

check_mode

Поддержка: полная

Модуль может работать в режиме check_mode и возвращать прогноз изменения статуса, не изменяя целевой объект.

diff_mode

Поддержка: полная

В режиме сравнения возвращает подробные сведения об изменениях (или о том, что, возможно, нужно изменить в check_mode).

Примеры

- name: Add roles to public client scope
  community.general.keycloak_client_rolescope:
    auth_keycloak_url: https://auth.example.com/auth
    auth_realm: master
    auth_username: USERNAME
    auth_password: PASSWORD
    realm: MyCustomRealm
    client_id: frontend-client-public
    client_scope_id: backend-client-private
    role_names:
      - backend-role-admin
      - backend-role-user

- name: Remove roles from public client scope
  community.general.keycloak_client_rolescope:
    auth_keycloak_url: https://auth.example.com/auth
    auth_realm: master
    auth_username: USERNAME
    auth_password: PASSWORD
    realm: MyCustomRealm
    client_id: frontend-client-public
    client_scope_id: backend-client-private
    role_names:
      - backend-role-admin
    state: absent

- name: Add realm roles to public client scope
  community.general.keycloak_client_rolescope:
    auth_keycloak_url: https://auth.example.com/auth
    auth_realm: master
    auth_username: USERNAME
    auth_password: PASSWORD
    realm: MyCustomRealm
    client_id: frontend-client-public
    role_names:
      - realm-role-admin
      - realm-role-user

Возвращаемые значения

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

Ключ

Описание

end_state

list / elements=dictionary

Представление области ролей после выполнения модуля.

Возвращается: при успехе

Пример: [{"clientRole": false, "composite": false, "containerId": "MyCustomRealm", "id": "47293104-59a6-46f0-b460-2e9e3c9c424c", "name": "backend-role-admin"}, {"clientRole": false, "composite": false, "containerId": "MyCustomRealm", "id": "39c62a6d-542c-4715-92d2-41021eb33967", "name": "backend-role-user"}]

msg

string

Сообщение о выполненном действии.

Возвращается: всегда

Пример: "Client role scope for frontend-client-public has been updated"

Авторы

  • Andre Desrosiers (@desand01)

Ссылки на коллекцию

  • Отслеживание проблем
  • Репозиторий (исходный код)
  • Задать вопрос
  • Сообщить об ошибке
  • Предложить новую функцию
  • Связь

© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/community/general/keycloak_client_rolescope_module.html

Spec-Zone.ru

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