middleware_automation.keycloak Release Notes
+middleware_automation.keycloak Release Notes
This changelog describes changes after version 0.2.6.
v3.0.4-devel
+v3.0.4-devel
Major Changes
+Major Changes
Minor Changes
+-
+
AMW-518 Validating arguments against arg spec ‘main’ fails unexpectedly. #324
+
Bugfixes
+Bugfixes
Removing parseable from lint file as Additional properties are not allowed #319
v3.0.3
-Major Changes
+v3.0.3
+Major Changes
Minor Changes
+Minor Changes
Bugfixes
+Bugfixes
v3.0.2
-Minor Changes
+v3.0.2
+Minor Changes
Bugfixes
+Bugfixes
v3.0.1
-Minor Changes
+v3.0.1
+Minor Changes
Version update to 26.0.8 / rhbk 26.0.11 #277
Bugfixes
+Bugfixes
Trigger rebuild handler on envvars file change #276
v3.0.0
-Minor Changes
+v3.0.0
+Minor Changes
Breaking Changes / Porting Guide
+Breaking Changes / Porting Guide
Bugfixes
+Bugfixes
New Modules
+New Modules
middleware_automation.keycloak.keycloak_realm - Allows administration of Keycloak realm via Keycloak API
v2.4.3
-Minor Changes
+v2.4.3
+Minor Changes
Update keycloak to 24.0.5 #241
v2.4.2
-Minor Changes
+v2.4.2
+Minor Changes
New parameter
keycloak_quarkus_download_path#239
Bugfixes
+Bugfixes
Add wait_for_port number parameter #237
v2.4.1
+v2.4.1
Release Summary
+Release Summary
Internal release, documentation or test changes only.
v2.4.0
-Major Changes
+v2.4.0
+Major Changes
v2.3.0
-Major Changes
+v2.3.0
+Major Changes
Minor Changes
+Minor Changes
Bugfixes
+Bugfixes
kc.sh builduses configured jdk #211
v2.2.2
-Minor Changes
+v2.2.2
+Minor Changes
Bugfixes
+Bugfixes
Turn off controller privilege escalation #209
v2.2.1
-Release Summary
+v2.2.1
+Release Summary
Internal release, documentation or test changes only.
Bugfixes
+Bugfixes
JDBC provider: fix clause in argument validation #204
v2.2.0
-Major Changes
+v2.2.0
+Major Changes
Support java keystore for configuration of sensitive options #189
Minor Changes
+Minor Changes
v2.1.2
-Release Summary
+v2.1.2
+Release Summary
Internal release, documentation or test changes only.
v2.1.1
-Minor Changes
+v2.1.1
+Minor Changes
Bugfixes
+Bugfixes
v2.1.0
-Major Changes
+v2.1.0
+Major Changes
Implement infinispan TCPPING discovery protocol #159
Minor Changes
+Minor Changes
Breaking Changes / Porting Guide
+Breaking Changes / Porting Guide
keycloak_quarkus: renamed infinispan host list configuration #157
Bugfixes
+Bugfixes
keycloak_quarkus: fix custom JAVA_HOME parameter name #171
v2.0.2
-Minor Changes
+v2.0.2
+Minor Changes
Bugfixes
+Bugfixes
v2.0.1
-Minor Changes
+v2.0.1
+Minor Changes
Bugfixes
+Bugfixes
keycloak_quarkus: template requires lowercase boolean values #138
v2.0.0
-Minor Changes
+v2.0.0
+Minor Changes
Breaking Changes / Porting Guide
+Breaking Changes / Porting Guide
v1.3.0
-Major Changes
+v1.3.0
+Major Changes
Run service as
keycloak_service_user#106
Minor Changes
+Minor Changes
Bugfixes
+Bugfixes
keycloak_quarkus: fix validation failure upon port configuration change #113
v1.2.8
-Minor Changes
+v1.2.8
+Minor Changes
Bugfixes
+Bugfixes
v1.2.7
-Minor Changes
+v1.2.7
+Minor Changes
v1.2.6
-Minor Changes
+v1.2.6
+Minor Changes
Bugfixes
+Bugfixes
Handle WFLYCTL0117 when background validation millis is 0 #90
v1.2.5
-Minor Changes
+v1.2.5
+Minor Changes
v1.2.4
-Minor Changes
+v1.2.4
+Minor Changes
Bugfixes
+Bugfixes
v1.2.1
-Minor Changes
+v1.2.1
+Minor Changes
Allow to setup keycloak HA cluster without remote cache store #68
Bugfixes
+Bugfixes
Pass attributes to realm clients #69
v1.2.0
-Major Changes
+v1.2.0
+Major Changes
Provide config for multiple modcluster proxies #60
Minor Changes
+Minor Changes
v1.1.1
-Bugfixes
+v1.1.1
+Bugfixes
keycloak-quarkus: fix
cache-config-filepath in keycloak.conf.j2 template #53
v1.1.0
-Minor Changes
+v1.1.0
+Minor Changes
Breaking Changes / Porting Guide
+Breaking Changes / Porting Guide
Rename variables from
infinispan_prefix tokeycloak_infinispan_#42
Bugfixes
+Bugfixes
keycloak_quarkus: fix /var/log/keycloak symlink to keycloak log directory #44
v1.0.7
-Breaking Changes / Porting Guide
+v1.0.7
+Breaking Changes / Porting Guide
keycloak_quarkus: use absolute path for certificate files #39
Bugfixes
+Bugfixes
keycloak_quarkus: use become for tasks that will otherwise fail #38
v1.0.6
-Bugfixes
+v1.0.6
+Bugfixes
v1.0.5
-Minor Changes
+v1.0.5
+Minor Changes
Update config options: keycloak and quarkus #32
v1.0.4
-Release Summary
+v1.0.4
+Release Summary
Internal release, documentation or test changes only.
v1.0.3
-Major Changes
+v1.0.3
+Major Changes
New role for installing keycloak >= 17.0.0 (quarkus) #29
Minor Changes
+Minor Changes
Add
keycloak_config_override_templateparameter for passing a custom xml config template #30
Bugfixes
+Bugfixes
Make sure systemd unit starts with selected java JVM #31
v1.0.2
-Minor Changes
+v1.0.2
+Minor Changes
Bugfixes
+Bugfixes
Set
keycloak_frontend_urldefault according to other defaults #25
v1.0.1
-Release Summary
+v1.0.1
+Release Summary
Minor enhancements, bug and documentation fixes.
Major Changes
+Major Changes
Apply latest cumulative patch of RH-SSO automatically when new parameter
keycloak_rhsso_apply_patchesistrue#18
Minor Changes
+Minor Changes
Clustered installs now perform database initialization on first node to avoid locking issues #17
v1.0.0
-Release Summary
+v1.0.0
+Release Summary
This is the first stable release of the middleware_automation.keycloak collection.
-
@@ -63,7 +64,7 @@
Included modules
+-
+
keycloak_realm: module for managing Keycloak realms (create/update/delete).
+keycloak_client: module for managing Keycloak clients (create/update/delete).
+keycloak_role: module for managing Keycloak roles — realm roles and client roles (create/update/delete).
+keycloak_user_federation: module for managing user federations such as LDAP/AD (create/update/delete).
+keycloak_client_scope: module for managing client scopes and protocol mappers (create/update/delete).
+keycloak_authentication_flow: module for managing authentication flows and execution steps (create/delete, copy existing flows).
+
Usage
@@ -219,11 +231,18 @@ the download tasks. The local path for the archive does match the downloaded arcConfiguration
-Config Playbook
+Config Playbooks
-playbooks/keycloak_realm.yml creates or updates provided realm, user federation(s), client(s), client role(s) and client user(s).
-
+
playbooks/keycloak_realm.ymlcreates or updates provided realm, user federation(s), client(s), client role(s) and client user(s).
+
-
+
playbooks/keycloak_realm_client.ymlcreates a realm with clients, roles and users using thekeycloak_realmrole.
+playbooks/keycloak_client_scope.ymlcreates a client scope with protocol mappers using thekeycloak_client_scopemodule.
+playbooks/keycloak_authentication_flow.ymlcreates a custom authentication flow with execution steps using thekeycloak_authentication_flowmodule.
+
Example configuration command
diff --git a/main/_downloads/7a1ffec81340e26b924b5291048874ac/keycloak_client_scope.yml b/main/_downloads/7a1ffec81340e26b924b5291048874ac/keycloak_client_scope.yml new file mode 100644 index 0000000..aa5ed3d --- /dev/null +++ b/main/_downloads/7a1ffec81340e26b924b5291048874ac/keycloak_client_scope.yml @@ -0,0 +1,48 @@ +--- +- name: Playbook for Keycloak Client Scope Configuration + hosts: all + vars: + keycloak_admin_user: admin + keycloak_admin_password: "remembertochangeme" + keycloak_url: "http://localhost:8080" + keycloak_realm: TestRealm + tasks: + - name: Create client scope with protocol mappers + middleware_automation.keycloak.keycloak_client_scope: + auth_keycloak_url: "{{ keycloak_url }}" + auth_realm: master + auth_username: "{{ keycloak_admin_user }}" + auth_password: "{{ keycloak_admin_password }}" + realm: "{{ keycloak_realm }}" + name: TestClientScope + description: "Client scope created via Ansible" + protocol: openid-connect + protocol_mappers: + - name: email + protocolMapper: oidc-usermodel-attribute-mapper + config: + user.attribute: email + claim.name: email + jsonType.label: String + id.token.claim: "true" + access.token.claim: "true" + userinfo.token.claim: "true" + - name: firstName + protocolMapper: oidc-usermodel-attribute-mapper + config: + user.attribute: firstName + claim.name: given_name + jsonType.label: String + id.token.claim: "true" + access.token.claim: "true" + userinfo.token.claim: "true" + - name: username + protocolMapper: oidc-usermodel-attribute-mapper + config: + user.attribute: username + claim.name: preferred_username + jsonType.label: String + id.token.claim: "true" + access.token.claim: "true" + userinfo.token.claim: "true" + state: present diff --git a/main/_downloads/bf30f2df147c4911eb753f8cef6007e1/keycloak_authentication_flow.yml b/main/_downloads/bf30f2df147c4911eb753f8cef6007e1/keycloak_authentication_flow.yml new file mode 100644 index 0000000..38878b5 --- /dev/null +++ b/main/_downloads/bf30f2df147c4911eb753f8cef6007e1/keycloak_authentication_flow.yml @@ -0,0 +1,27 @@ +--- +- name: Playbook for Keycloak Authentication Flow Configuration + hosts: all + vars: + keycloak_admin_user: admin + keycloak_admin_password: "remembertochangeme" + keycloak_url: "http://localhost:8080" + keycloak_realm: TestRealm + tasks: + - name: Create authentication flow with executions + middleware_automation.keycloak.keycloak_authentication_flow: + auth_keycloak_url: "{{ keycloak_url }}" + auth_realm: master + auth_username: "{{ keycloak_admin_user }}" + auth_password: "{{ keycloak_admin_password }}" + realm: "{{ keycloak_realm }}" + alias: my-browser-flow + description: "Custom browser authentication flow" + provider_id: basic-flow + executions: + - provider_id: auth-cookie + requirement: ALTERNATIVE + - provider_id: auth-password + requirement: REQUIRED + - provider_id: auth-otp-form + requirement: ALTERNATIVE + state: present diff --git a/main/_sources/CHANGELOG.rst.txt b/main/_sources/CHANGELOG.rst.txt index f305f2a..e27f049 100644 --- a/main/_sources/CHANGELOG.rst.txt +++ b/main/_sources/CHANGELOG.rst.txt @@ -15,6 +15,11 @@ Major Changes - AMW-467 Download keycloak binary from password protected HTTP location `#321Parameter |
+ Comments |
+
|---|---|
| + |
+ Alias (name) of the authentication flow. + |
+
| + |
+ OpenID Connect client_id to authenticate to the API with. +Default: |
+
| + |
+ Client Secret to use in conjunction with auth_client_id (if required). + |
+
| + |
+ URL to the Keycloak instance. + |
+
| + |
+ Password to authenticate for API access with. + |
+
| + |
+ Keycloak realm name to authenticate to for API access. + |
+
| + |
+ Username to authenticate for API access with. + |
+
| + |
+ Controls the HTTP connections timeout period (in seconds) to Keycloak API. +Default: |
+
| + |
+ If set, the new flow is created as a copy of the flow with this alias. +Cannot be used together with |
+
| + |
+ Description of the authentication flow. +Default: |
+
| + |
+ A list of executions (authenticator steps) to add to the flow. +Each execution is a dict with keys Executions are only added when the flow is first created. +Default: |
+
| + |
+ The authenticator provider ID (e.g. |
+
| + |
+ The requirement level for this execution. +Choices: +
|
+
| + |
+ Configures the HTTP User-Agent header. +Default: |
+
| + |
+ The provider ID for the flow. +Default: |
+
| + |
+ The Keycloak realm under which this authentication flow resides. +Default: |
+
| + |
+ State of the authentication flow. +On On Choices: +
|
+
| + |
+ Authentication token for Keycloak API. + |
+
| + |
+ Verify TLS certificates (do not disable this in production). +Choices: +
|
+
Key |
+ Description |
+
|---|---|
| + |
+ Representation of the authentication flow after module execution. +Returned: on success +Sample: |
+
| + |
+ Message as to what action was taken. +Returned: always +Sample: |
+
Parameter |
+ Comments |
+
|---|---|
| + |
+ A dict of key/value pairs to set as attributes for the client scope. + |
+
| + |
+ OpenID Connect client_id to authenticate to the API with. +Default: |
+
| + |
+ Client Secret to use in conjunction with auth_client_id (if required). + |
+
| + |
+ URL to the Keycloak instance. + |
+
| + |
+ Password to authenticate for API access with. + |
+
| + |
+ Keycloak realm name to authenticate to for API access. + |
+
| + |
+ Username to authenticate for API access with. + |
+
| + |
+ Controls the HTTP connections timeout period (in seconds) to Keycloak API. +Default: |
+
| + |
+ Description of the client scope. +Default: |
+
| + |
+ Configures the HTTP User-Agent header. +Default: |
+
| + |
+ Name of the client scope. + |
+
| + |
+ The protocol associated with the client scope. +Choices: +
|
+
| + |
+ A list of protocol mappers to associate with the client scope. +Each mapper is a dict with the keys Default: |
+
| + |
+ Configuration for the protocol mapper. + |
+
| + |
+ Name of the protocol mapper. + |
+
| + |
+ Protocol for the mapper. +Default: |
+
| + |
+ The mapper type (e.g. |
+
| + |
+ The Keycloak realm under which this client scope resides. +Default: |
+
| + |
+ State of the client scope. +On On Choices: +
|
+
| + |
+ Authentication token for Keycloak API. + |
+
| + |
+ Verify TLS certificates (do not disable this in production). +Choices: +
|
+
Key |
+ Description |
+
|---|---|
| + |
+ Representation of the client scope after module execution. +Returned: on success +Sample: |
+
| + |
+ Message as to what action was taken. +Returned: always +Sample: |
+
' + - '' + - _("Hide Search Matches") + - "
" - ) + '' + + '' + + _("Hide Search Matches") + + "
", + ), ); }, @@ -125,7 +125,7 @@ const SphinxHighlight = { document .querySelectorAll("span.highlighted") .forEach((el) => el.classList.remove("highlighted")); - localStorage.removeItem("sphinx_highlight_terms") + localStorage.removeItem("sphinx_highlight_terms"); }, initEscapeListener: () => { @@ -134,10 +134,15 @@ const SphinxHighlight = { document.addEventListener("keydown", (event) => { // bail for input elements - if (BLACKLISTED_KEY_CONTROL_ELEMENTS.has(document.activeElement.tagName)) return; + if (BLACKLISTED_KEY_CONTROL_ELEMENTS.has(document.activeElement.tagName)) + return; // bail with special keys - if (event.shiftKey || event.altKey || event.ctrlKey || event.metaKey) return; - if (DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS && (event.key === "Escape")) { + if (event.shiftKey || event.altKey || event.ctrlKey || event.metaKey) + return; + if ( + DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS + && event.key === "Escape" + ) { SphinxHighlight.hideSearchWords(); event.preventDefault(); } diff --git a/main/developing.html b/main/developing.html index 4245e86..5196e32 100644 --- a/main/developing.html +++ b/main/developing.html @@ -16,8 +16,8 @@ - - + + diff --git a/main/genindex.html b/main/genindex.html index 94d82b8..06dbdd6 100644 --- a/main/genindex.html +++ b/main/genindex.html @@ -15,8 +15,8 @@ - - + + diff --git a/main/index.html b/main/index.html index e93b59c..49d04dc 100644 --- a/main/index.html +++ b/main/index.html @@ -16,8 +16,8 @@ - - + + @@ -107,7 +107,9 @@-
+
- keycloak_authentication_flow – Allows administration of Keycloak authentication flows via Keycloak API
- keycloak_client – Allows administration of Keycloak clients via Keycloak API +
- keycloak_client_scope – Allows administration of Keycloak client scopes via Keycloak API
- keycloak_realm – Allows administration of Keycloak realm via Keycloak API
- keycloak_role – Allows administration of Keycloak roles via Keycloak API
- keycloak_user_federation – Allows administration of Keycloak user federations via Keycloak API diff --git a/main/objects.inv b/main/objects.inv index 048577b..be76981 100644 Binary files a/main/objects.inv and b/main/objects.inv differ diff --git a/main/plugins/index.html b/main/plugins/index.html index 0d978fe..b0fe281 100644 --- a/main/plugins/index.html +++ b/main/plugins/index.html @@ -16,12 +16,12 @@ - - + + - + @@ -48,7 +48,9 @@
- Ansible Collection - middleware_automation.keycloak
- Plugin Index
-
+
- keycloak_authentication_flow – Allows administration of Keycloak authentication flows via Keycloak API
- keycloak_client – Allows administration of Keycloak clients via Keycloak API +
- keycloak_client_scope – Allows administration of Keycloak client scopes via Keycloak API
- keycloak_realm – Allows administration of Keycloak realm via Keycloak API
- keycloak_role – Allows administration of Keycloak roles via Keycloak API
- keycloak_user_federation – Allows administration of Keycloak user federations via Keycloak API @@ -105,6 +107,17 @@
- keycloak_authentication_flow – Allows administration of Keycloak authentication flows via Keycloak API
-
+
- Synopsis +
- Parameters +
- Attributes +
- Examples +
- Return Values
-
+
- Authors +
+
- keycloak_client – Allows administration of Keycloak clients via Keycloak API
- Synopsis
- Parameters @@ -116,6 +129,17 @@
- keycloak_client_scope – Allows administration of Keycloak client scopes via Keycloak API
-
+
- Synopsis +
- Parameters +
- Attributes +
- Examples +
- Return Values
-
+
- Authors +
+
- keycloak_realm – Allows administration of Keycloak realm via Keycloak API
- Synopsis
- Parameters @@ -158,7 +182,7 @@
modules plugins
-
+