mirror of
https://github.com/ansible-middleware/keycloak.git
synced 2026-07-25 00:44:48 +00:00
1234 lines
112 KiB
HTML
1234 lines
112 KiB
HTML
|
||
|
||
<!DOCTYPE html>
|
||
<html class="writer-html5" lang="en" data-content_root="../">
|
||
<head>
|
||
<meta charset="utf-8" /><meta name="viewport" content="width=device-width, initial-scale=1" />
|
||
<meta content="2.24.0" name="antsibull-docs" />
|
||
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||
<title>keycloak_realm_key – Allows administration of Keycloak realm keys using Keycloak API — Keycloak Ansible Collection documentation</title>
|
||
<link rel="stylesheet" type="text/css" href="../_static/pygments.css?v=41de9001" />
|
||
<link rel="stylesheet" type="text/css" href="../_static/css/theme.css?v=9edc463e" />
|
||
<link rel="stylesheet" type="text/css" href="../_static/antsibull-minimal.css" />
|
||
|
||
|
||
<script src="../_static/jquery.js?v=5d32c60e"></script>
|
||
<script src="../_static/_sphinx_javascript_frameworks_compat.js?v=2cd50e6c"></script>
|
||
<script src="../_static/documentation_options.js?v=5929fcd5"></script>
|
||
<script src="../_static/doctools.js?v=fd6eb6e6"></script>
|
||
<script src="../_static/sphinx_highlight.js?v=6ffebe34"></script>
|
||
<script src="../_static/js/theme.js"></script>
|
||
<link rel="index" title="Index" href="../genindex.html" />
|
||
<link rel="search" title="Search" href="../search.html" />
|
||
<link rel="next" title="keycloak_realm_keys_metadata_info – Allows obtaining Keycloak realm keys metadata using Keycloak API" href="keycloak_realm_keys_metadata_info.html" />
|
||
<link rel="prev" title="keycloak_realm_info – Allows obtaining Keycloak realm public information using Keycloak API" href="keycloak_realm_info.html" />
|
||
</head>
|
||
|
||
<body class="wy-body-for-nav">
|
||
<div class="wy-grid-for-nav">
|
||
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
|
||
<div class="wy-side-scroll">
|
||
<div class="wy-side-nav-search" >
|
||
|
||
|
||
|
||
<a href="../index.html" class="icon icon-home">
|
||
Keycloak Ansible Collection
|
||
</a>
|
||
<div role="search">
|
||
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">
|
||
<input type="text" name="q" placeholder="Search docs" aria-label="Search docs" />
|
||
<input type="hidden" name="check_keywords" value="yes" />
|
||
<input type="hidden" name="area" value="default" />
|
||
</form>
|
||
</div>
|
||
</div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
|
||
<p class="caption" role="heading"><span class="caption-text">User documentation</span></p>
|
||
<ul class="current">
|
||
<li class="toctree-l1"><a class="reference internal" href="../README.html">Ansible Collection - middleware_automation.keycloak</a></li>
|
||
<li class="toctree-l1 current"><a class="reference internal" href="index.html">Plugin Index</a><ul class="current">
|
||
<li class="toctree-l2"><a class="reference internal" href="keycloak_authentication.html">keycloak_authentication – Configure authentication in Keycloak</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="keycloak_authentication_flow.html">keycloak_authentication_flow – Allows administration of Keycloak authentication flows via Keycloak API</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="keycloak_authentication_required_actions.html">keycloak_authentication_required_actions – Allows administration of Keycloak authentication required actions</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="keycloak_authentication_v2.html">keycloak_authentication_v2 – Configure authentication flows in Keycloak in an idempotent and safe manner.</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="keycloak_authz_authorization_scope.html">keycloak_authz_authorization_scope – Allows administration of Keycloak client authorization scopes using Keycloak API</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="keycloak_authz_custom_policy.html">keycloak_authz_custom_policy – Allows administration of Keycloak client custom Javascript policies using Keycloak API</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="keycloak_authz_permission.html">keycloak_authz_permission – Allows administration of Keycloak client authorization permissions using Keycloak API</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="keycloak_authz_permission_info.html">keycloak_authz_permission_info – Query Keycloak client authorization permissions information</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="keycloak_client.html">keycloak_client – Allows administration of Keycloak clients using Keycloak API</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="keycloak_client_rolemapping.html">keycloak_client_rolemapping – Allows administration of Keycloak client_rolemapping with the Keycloak API</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="keycloak_client_rolescope.html">keycloak_client_rolescope – Allows administration of Keycloak client roles scope to restrict the usage of certain roles to a other specific client applications</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="keycloak_client_scope.html">keycloak_client_scope – Allows administration of Keycloak client scopes via Keycloak API</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="keycloak_client_scope_rolemappings.html">keycloak_client_scope_rolemappings – Allows administration of Keycloak client scope scope mappings to restrict the usage of certain roles to specific client scopes</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="keycloak_client_scope_type.html">keycloak_client_scope_type – Set the type of a client scope in a realm or client using the Keycloak API</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="keycloak_clientsecret_info.html">keycloak_clientsecret_info – Retrieve client secret using Keycloak API</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="keycloak_clientsecret_regenerate.html">keycloak_clientsecret_regenerate – Regenerate Keycloak client secret using Keycloak API</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="keycloak_clienttemplate.html">keycloak_clienttemplate – Allows administration of Keycloak client templates using Keycloak API</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="keycloak_component.html">keycloak_component – Allows administration of Keycloak components using Keycloak API</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="keycloak_component_info.html">keycloak_component_info – Retrieve component info in Keycloak</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="keycloak_group.html">keycloak_group – Allows administration of Keycloak groups using Keycloak API</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="keycloak_identity_provider.html">keycloak_identity_provider – Allows administration of Keycloak identity providers using Keycloak API</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="keycloak_realm.html">keycloak_realm – Allows administration of Keycloak realm using Keycloak API</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="keycloak_realm_info.html">keycloak_realm_info – Allows obtaining Keycloak realm public information using Keycloak API</a></li>
|
||
<li class="toctree-l2 current"><a class="current reference internal" href="#">keycloak_realm_key – Allows administration of Keycloak realm keys using Keycloak API</a><ul>
|
||
<li class="toctree-l3"><a class="reference internal" href="#synopsis">Synopsis</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="#parameters">Parameters</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="#attributes">Attributes</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="#notes">Notes</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="#examples">Examples</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="#return-values">Return Values</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="#authors">Authors</a></li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l2"><a class="reference internal" href="keycloak_realm_keys_metadata_info.html">keycloak_realm_keys_metadata_info – Allows obtaining Keycloak realm keys metadata using Keycloak API</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="keycloak_realm_localization.html">keycloak_realm_localization – Allows management of Keycloak realm localization overrides via the Keycloak API</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="keycloak_realm_rolemapping.html">keycloak_realm_rolemapping – Allows administration of Keycloak realm role mappings into groups with the Keycloak API</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="keycloak_role.html">keycloak_role – Allows administration of Keycloak roles using Keycloak API</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="keycloak_user.html">keycloak_user – Create and configure a user in Keycloak</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="keycloak_user_execute_actions_email.html">keycloak_user_execute_actions_email – Send a Keycloak execute-actions email to a user</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="keycloak_user_federation.html">keycloak_user_federation – Allows administration of Keycloak user federations using Keycloak API</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="keycloak_user_rolemapping.html">keycloak_user_rolemapping – Allows administration of Keycloak user_rolemapping with the Keycloak API</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="keycloak_userprofile.html">keycloak_userprofile – Allows managing Keycloak User Profiles</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l1"><a class="reference internal" href="../roles/index.html">Role Index</a></li>
|
||
<li class="toctree-l1"><a class="reference internal" href="../CHANGELOG.html">Changelog</a></li>
|
||
</ul>
|
||
<p class="caption" role="heading"><span class="caption-text">Developer documentation</span></p>
|
||
<ul>
|
||
<li class="toctree-l1"><a class="reference internal" href="../developing.html">Developing</a></li>
|
||
<li class="toctree-l1"><a class="reference internal" href="../developing.html#contributor-s-guidelines">Contributor’s Guidelines</a></li>
|
||
<li class="toctree-l1"><a class="reference internal" href="../testing.html">Testing</a></li>
|
||
<li class="toctree-l1"><a class="reference internal" href="../releasing.html">Releasing</a></li>
|
||
</ul>
|
||
<p class="caption" role="heading"><span class="caption-text">Middleware collections</span></p>
|
||
<ul>
|
||
<li class="toctree-l1"><a class="reference external" href="https://ansible-middleware.github.io/keycloak/main/">Keycloak / Red Hat Single Sign-On</a></li>
|
||
<li class="toctree-l1"><a class="reference external" href="https://ansible-middleware.github.io/infinispan/main/">Infinispan / Red Hat Data Grid</a></li>
|
||
<li class="toctree-l1"><a class="reference external" href="https://ansible-middleware.github.io/wildfly/main/">Wildfly / Red Hat JBoss EAP</a></li>
|
||
<li class="toctree-l1"><a class="reference external" href="https://ansible-middleware.github.io/jws/main/">Tomcat / Red Hat JWS</a></li>
|
||
<li class="toctree-l1"><a class="reference external" href="https://ansible-middleware.github.io/amq/main/">ActiveMQ / Red Hat AMQ Broker</a></li>
|
||
<li class="toctree-l1"><a class="reference external" href="https://ansible-middleware.github.io/amq_streams/main/">Kafka / Red Hat AMQ Streams</a></li>
|
||
<li class="toctree-l1"><a class="reference external" href="https://ansible-middleware.github.io/common/main/">Ansible Middleware utilities</a></li>
|
||
<li class="toctree-l1"><a class="reference external" href="https://ansible-middleware.github.io/ansible_collections_jcliff/main/">JCliff</a></li>
|
||
</ul>
|
||
|
||
</div>
|
||
</div>
|
||
</nav>
|
||
|
||
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"><nav class="wy-nav-top" aria-label="Mobile navigation menu" >
|
||
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
|
||
<a href="../index.html">Keycloak Ansible Collection</a>
|
||
</nav>
|
||
|
||
<div class="wy-nav-content">
|
||
<div class="rst-content">
|
||
<div role="navigation" aria-label="Page navigation">
|
||
<ul class="wy-breadcrumbs">
|
||
<li><a href="../index.html" class="icon icon-home" aria-label="Home"></a></li>
|
||
<li class="breadcrumb-item"><a href="index.html">Plugin Index</a></li>
|
||
<li class="breadcrumb-item active">keycloak_realm_key – Allows administration of Keycloak realm keys using Keycloak API</li>
|
||
<li class="wy-breadcrumbs-aside">
|
||
<a href="../_sources/plugins/keycloak_realm_key.rst.txt" rel="nofollow"> View page source</a>
|
||
</li>
|
||
</ul>
|
||
<hr/>
|
||
</div>
|
||
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
|
||
<div itemprop="articleBody">
|
||
|
||
<span class="target" id="ansible-collections-middleware-automation-keycloak-keycloak-realm-key-module"></span><section id="keycloak-realm-key-allows-administration-of-keycloak-realm-keys-using-keycloak-api">
|
||
<h1>keycloak_realm_key – Allows administration of Keycloak realm keys using Keycloak API<a class="headerlink" href="#keycloak-realm-key-allows-administration-of-keycloak-realm-keys-using-keycloak-api" title="Link to this heading"></a></h1>
|
||
<div class="admonition note">
|
||
<p class="admonition-title">Note</p>
|
||
<p>This module is part of the <a class="reference external" href="https://galaxy.ansible.com/ui/repo/published/middleware_automation/keycloak/">middleware_automation.keycloak collection</a>.</p>
|
||
<p>It is not included in <code class="docutils literal notranslate"><span class="pre">ansible-core</span></code>.
|
||
To check whether it is installed, run <code class="code docutils literal notranslate"><span class="pre">ansible-galaxy</span> <span class="pre">collection</span> <span class="pre">list</span></code>.</p>
|
||
<p>To install it, use: <code class="code docutils literal notranslate"><span class="pre">ansible-galaxy</span> <span class="pre">collection</span> <span class="pre">install</span> <span class="pre">middleware_automation.keycloak</span></code>.</p>
|
||
<p>To use it in a playbook, specify: <code class="code docutils literal notranslate"><span class="pre">middleware_automation.keycloak.keycloak_realm_key</span></code>.</p>
|
||
</div>
|
||
<p class="ansible-version-added">New in middleware_automation.keycloak 3.0.0</p>
|
||
<nav class="contents local" id="contents">
|
||
<ul class="simple">
|
||
<li><p><a class="reference internal" href="#synopsis" id="id1">Synopsis</a></p></li>
|
||
<li><p><a class="reference internal" href="#parameters" id="id2">Parameters</a></p></li>
|
||
<li><p><a class="reference internal" href="#attributes" id="id3">Attributes</a></p></li>
|
||
<li><p><a class="reference internal" href="#notes" id="id4">Notes</a></p></li>
|
||
<li><p><a class="reference internal" href="#examples" id="id5">Examples</a></p></li>
|
||
<li><p><a class="reference internal" href="#return-values" id="id6">Return Values</a></p></li>
|
||
</ul>
|
||
</nav>
|
||
<section id="synopsis">
|
||
<h2><a class="toc-backref" href="#id1" role="doc-backlink">Synopsis</a><a class="headerlink" href="#synopsis" title="Link to this heading"></a></h2>
|
||
<ul class="simple">
|
||
<li><p>This module allows the administration of Keycloak realm keys using the Keycloak REST API. It requires access to the REST API using OpenID Connect; the user connecting and the realm being used must have the requisite access rights. In a default Keycloak installation, admin-cli and an admin user would work, as would a separate realm definition with the scope tailored to your needs and a user having the expected roles.</p></li>
|
||
<li><p>The names of module options are snake_cased versions of the camelCase ones found in the Keycloak API and its documentation at <a class="reference external" href="https://www.keycloak.org/docs-api/latest/rest-api/index.html">https://www.keycloak.org/docs-api/latest/rest-api/index.html</a>. Aliases are provided so camelCased versions can be used as well.</p></li>
|
||
<li><p>This module is unable to detect changes to the actual cryptographic key after importing it. However, if some other property is changed alongside the cryptographic key, then the key also changes as a side-effect, as the JSON payload needs to include the private key. This can be considered either a bug or a feature, as the alternative would be to always update the realm key whether it has changed or not.</p></li>
|
||
</ul>
|
||
</section>
|
||
<section id="parameters">
|
||
<h2><a class="toc-backref" href="#id2" role="doc-backlink">Parameters</a><a class="headerlink" href="#parameters" title="Link to this heading"></a></h2>
|
||
<table class="colwidths-auto ansible-option-table docutils align-default" style="width: 100%">
|
||
<thead>
|
||
<tr class="row-odd">
|
||
<th class="head"><p>Parameter</p></th>
|
||
<th class="head"><p>Comments</p></th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<tr class="row-even">
|
||
<td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-auth_client_id"></div>
|
||
<p class="ansible-option-title"><strong>auth_client_id</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-auth_client_id" title="Permalink to this option"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">string</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell">
|
||
<p>OpenID Connect <em>client_id</em> to authenticate to the API with.</p>
|
||
<p class="ansible-option-line"><strong class="ansible-option-default-bold">Default:</strong> <code class="ansible-value literal notranslate ansible-option-default">"admin-cli"</code></p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-odd">
|
||
<td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-auth_client_secret"></div>
|
||
<p class="ansible-option-title"><strong>auth_client_secret</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-auth_client_secret" title="Permalink to this option"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">string</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell">
|
||
<p>Client Secret to use in conjunction with <em>auth_client_id</em> (if required).</p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-even">
|
||
<td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-auth_keycloak_url"></div>
|
||
<div class="ansibleOptionAnchor" id="parameter-url"></div>
|
||
<p class="ansible-option-title"><strong>auth_keycloak_url</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-auth_keycloak_url" title="Permalink to this option"></a>
|
||
<p class="ansible-option-type-line"><span class="ansible-option-aliases">aliases: url</span></p>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">string</span>
|
||
/ <span class="ansible-option-required">required</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell">
|
||
<p>URL to the Keycloak instance.</p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-odd">
|
||
<td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-auth_password"></div>
|
||
<div class="ansibleOptionAnchor" id="parameter-password"></div>
|
||
<p class="ansible-option-title"><strong>auth_password</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-auth_password" title="Permalink to this option"></a>
|
||
<p class="ansible-option-type-line"><span class="ansible-option-aliases">aliases: password</span></p>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">string</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell">
|
||
<p>Password to authenticate for API access with.</p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-even">
|
||
<td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-auth_realm"></div>
|
||
<p class="ansible-option-title"><strong>auth_realm</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-auth_realm" title="Permalink to this option"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">string</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell">
|
||
<p>Keycloak realm name to authenticate to for API access.</p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-odd">
|
||
<td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-auth_username"></div>
|
||
<div class="ansibleOptionAnchor" id="parameter-username"></div>
|
||
<p class="ansible-option-title"><strong>auth_username</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-auth_username" title="Permalink to this option"></a>
|
||
<p class="ansible-option-type-line"><span class="ansible-option-aliases">aliases: username</span></p>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">string</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell">
|
||
<p>Username to authenticate for API access with.</p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-even">
|
||
<td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-config"></div>
|
||
<p class="ansible-option-title"><strong>config</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-config" title="Permalink to this option"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">dictionary</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell">
|
||
<p>Dict specifying the key and its properties.</p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-odd">
|
||
<td><div class="ansible-option-indent"></div><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-config/active"></div>
|
||
<p class="ansible-option-title"><strong>active</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-config/active" title="Permalink to this option"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">boolean</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-indent-desc"></div><div class="ansible-option-cell">
|
||
<p>Whether they key is active or inactive. Not to be confused with the state of the Ansible resource managed by the <code class="ansible-option literal notranslate"><strong><a class="reference internal" href="#parameter-state"><span class="std std-ref"><span class="pre">state</span></span></a></strong></code> parameter.</p>
|
||
<p class="ansible-option-line"><strong class="ansible-option-choices">Choices:</strong></p>
|
||
<ul class="simple">
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">false</code></p></li>
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-default-bold"><strong>true</strong></code> <span class="ansible-option-choices-default-mark">← (default)</span></p></li>
|
||
</ul>
|
||
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-even">
|
||
<td><div class="ansible-option-indent"></div><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-config/algorithm"></div>
|
||
<p class="ansible-option-title"><strong>algorithm</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-config/algorithm" title="Permalink to this option"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">string</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-indent-desc"></div><div class="ansible-option-cell">
|
||
<p>Key algorithm.</p>
|
||
<p>The values <code class="ansible-value literal notranslate">RS384</code>, <code class="ansible-value literal notranslate">RS512</code>, <code class="ansible-value literal notranslate">PS256</code>, <code class="ansible-value literal notranslate">PS384</code>, <code class="ansible-value literal notranslate">PS512</code>, <code class="ansible-value literal notranslate">RSA1_5</code>, <code class="ansible-value literal notranslate">RSA-OAEP</code>, <code class="ansible-value literal notranslate">RSA-OAEP-256</code> have been added in middleware_automation.keycloak 8.2.0.</p>
|
||
<p>The values <code class="ansible-value literal notranslate">HS256</code>, <code class="ansible-value literal notranslate">HS384</code>, <code class="ansible-value literal notranslate">HS512</code> (for HMAC), <code class="ansible-value literal notranslate">ES256</code>, <code class="ansible-value literal notranslate">ES384</code>, <code class="ansible-value literal notranslate">ES512</code> (for ECDSA), and <code class="ansible-value literal notranslate">AES</code> have been added in middleware_automation.keycloak 12.4.0.</p>
|
||
<p>The values <code class="ansible-value literal notranslate">ECDH_ES</code>, <code class="ansible-value literal notranslate">ECDH_ES_A128KW</code>, <code class="ansible-value literal notranslate">ECDH_ES_A192KW</code>, <code class="ansible-value literal notranslate">ECDH_ES_A256KW</code> (for ECDH key exchange), and <code class="ansible-value literal notranslate">Ed25519</code>, <code class="ansible-value literal notranslate">Ed448</code> (for EdDSA signing) have been added in middleware_automation.keycloak 12.4.0.</p>
|
||
<p>For <code class="ansible-option-value literal notranslate"><a class="reference internal" href="#parameter-provider_id"><span class="std std-ref"><span class="pre">provider_id=rsa</span></span></a></code>, <code class="ansible-option-value literal notranslate"><a class="reference internal" href="#parameter-provider_id"><span class="std std-ref"><span class="pre">provider_id=rsa-generated</span></span></a></code>, and <code class="ansible-option-value literal notranslate"><a class="reference internal" href="#parameter-provider_id"><span class="std std-ref"><span class="pre">provider_id=java-keystore</span></span></a></code>, defaults to <code class="ansible-value literal notranslate">RS256</code>.</p>
|
||
<p>For <code class="ansible-option-value literal notranslate"><a class="reference internal" href="#parameter-provider_id"><span class="std std-ref"><span class="pre">provider_id=rsa-enc</span></span></a></code> and <code class="ansible-option-value literal notranslate"><a class="reference internal" href="#parameter-provider_id"><span class="std std-ref"><span class="pre">provider_id=rsa-enc-generated</span></span></a></code>, must be one of <code class="ansible-value literal notranslate">RSA1_5</code>, <code class="ansible-value literal notranslate">RSA-OAEP</code>, <code class="ansible-value literal notranslate">RSA-OAEP-256</code> (required, no default).</p>
|
||
<p>For <code class="ansible-option-value literal notranslate"><a class="reference internal" href="#parameter-provider_id"><span class="std std-ref"><span class="pre">provider_id=hmac-generated</span></span></a></code>, must be one of <code class="ansible-value literal notranslate">HS256</code>, <code class="ansible-value literal notranslate">HS384</code>, <code class="ansible-value literal notranslate">HS512</code> (required, no default).</p>
|
||
<p>For <code class="ansible-option-value literal notranslate"><a class="reference internal" href="#parameter-provider_id"><span class="std std-ref"><span class="pre">provider_id=ecdsa-generated</span></span></a></code>, must be one of <code class="ansible-value literal notranslate">ES256</code>, <code class="ansible-value literal notranslate">ES384</code>, <code class="ansible-value literal notranslate">ES512</code> (required, no default).</p>
|
||
<p>For <code class="ansible-option-value literal notranslate"><a class="reference internal" href="#parameter-provider_id"><span class="std std-ref"><span class="pre">provider_id=ecdh-generated</span></span></a></code>, must be one of <code class="ansible-value literal notranslate">ECDH_ES</code>, <code class="ansible-value literal notranslate">ECDH_ES_A128KW</code>, <code class="ansible-value literal notranslate">ECDH_ES_A192KW</code>, <code class="ansible-value literal notranslate">ECDH_ES_A256KW</code> (required, no default).</p>
|
||
<p>For <code class="ansible-option-value literal notranslate"><a class="reference internal" href="#parameter-provider_id"><span class="std std-ref"><span class="pre">provider_id=eddsa-generated</span></span></a></code>, this option is not used (the algorithm is determined by <code class="ansible-option literal notranslate"><strong><a class="reference internal" href="#parameter-config/elliptic_curve"><span class="std std-ref"><span class="pre">config.elliptic_curve</span></span></a></strong></code>).</p>
|
||
<p>For <code class="ansible-option-value literal notranslate"><a class="reference internal" href="#parameter-provider_id"><span class="std std-ref"><span class="pre">provider_id=aes-generated</span></span></a></code>, this option is not used (AES is always used).</p>
|
||
<p class="ansible-option-line"><strong class="ansible-option-choices">Choices:</strong></p>
|
||
<ul class="simple">
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-default-bold"><strong>"RS256"</strong></code> <span class="ansible-option-choices-default-mark">← (default)</span></p></li>
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">"RS384"</code></p></li>
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">"RS512"</code></p></li>
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">"PS256"</code></p></li>
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">"PS384"</code></p></li>
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">"PS512"</code></p></li>
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">"RSA1_5"</code></p></li>
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">"RSA-OAEP"</code></p></li>
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">"RSA-OAEP-256"</code></p></li>
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">"HS256"</code></p></li>
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">"HS384"</code></p></li>
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">"HS512"</code></p></li>
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">"ES256"</code></p></li>
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">"ES384"</code></p></li>
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">"ES512"</code></p></li>
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">"AES"</code></p></li>
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">"ECDH_ES"</code></p></li>
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">"ECDH_ES_A128KW"</code></p></li>
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">"ECDH_ES_A192KW"</code></p></li>
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">"ECDH_ES_A256KW"</code></p></li>
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">"Ed25519"</code></p></li>
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">"Ed448"</code></p></li>
|
||
</ul>
|
||
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-odd">
|
||
<td><div class="ansible-option-indent"></div><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-config/certificate"></div>
|
||
<p class="ansible-option-title"><strong>certificate</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-config/certificate" title="Permalink to this option"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">string</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-indent-desc"></div><div class="ansible-option-cell">
|
||
<p>A certificate signed with the private key as an ASCII string. Contents of the key must match <code class="ansible-option literal notranslate"><strong><a class="reference internal" href="#parameter-config/algorithm"><span class="std std-ref"><span class="pre">config.algorithm</span></span></a></strong></code> and <code class="ansible-option literal notranslate"><strong><a class="reference internal" href="#parameter-provider_id"><span class="std std-ref"><span class="pre">provider_id</span></span></a></strong></code>.</p>
|
||
<p>If you want Keycloak to automatically generate a certificate using your private key then set this to an empty string.</p>
|
||
<p>Required when <code class="ansible-option literal notranslate"><strong><a class="reference internal" href="#parameter-provider_id"><span class="std std-ref"><span class="pre">provider_id</span></span></a></strong></code> is <code class="ansible-value literal notranslate">rsa</code> or <code class="ansible-value literal notranslate">rsa-enc</code>. Not used for auto-generated providers.</p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-even">
|
||
<td><div class="ansible-option-indent"></div><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-config/elliptic_curve"></div>
|
||
<p class="ansible-option-title"><strong>elliptic_curve</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-config/elliptic_curve" title="Permalink to this option"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">string</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-indent-desc"></div><div class="ansible-option-cell">
|
||
<p>The elliptic curve to use for ECDSA, ECDH, or EdDSA keys.</p>
|
||
<p>For <code class="ansible-option-value literal notranslate"><a class="reference internal" href="#parameter-provider_id"><span class="std std-ref"><span class="pre">provider_id=ecdsa-generated</span></span></a></code> and <code class="ansible-option-value literal notranslate"><a class="reference internal" href="#parameter-provider_id"><span class="std std-ref"><span class="pre">provider_id=ecdh-generated</span></span></a></code>, valid values are <code class="ansible-value literal notranslate">P-256</code>, <code class="ansible-value literal notranslate">P-384</code>, <code class="ansible-value literal notranslate">P-521</code>. Default is <code class="ansible-value literal notranslate">P-256</code>.</p>
|
||
<p>For <code class="ansible-option-value literal notranslate"><a class="reference internal" href="#parameter-provider_id"><span class="std std-ref"><span class="pre">provider_id=eddsa-generated</span></span></a></code>, valid values are <code class="ansible-value literal notranslate">Ed25519</code>, <code class="ansible-value literal notranslate">Ed448</code>. Default is <code class="ansible-value literal notranslate">Ed25519</code>.</p>
|
||
<p class="ansible-option-line"><strong class="ansible-option-choices">Choices:</strong></p>
|
||
<ul class="simple">
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">"P-256"</code></p></li>
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">"P-384"</code></p></li>
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">"P-521"</code></p></li>
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">"Ed25519"</code></p></li>
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">"Ed448"</code></p></li>
|
||
</ul>
|
||
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-odd">
|
||
<td><div class="ansible-option-indent"></div><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-config/enabled"></div>
|
||
<p class="ansible-option-title"><strong>enabled</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-config/enabled" title="Permalink to this option"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">boolean</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-indent-desc"></div><div class="ansible-option-cell">
|
||
<p>Whether the key is enabled or disabled. Not to be confused with the state of the Ansible resource managed by the <code class="ansible-option literal notranslate"><strong><a class="reference internal" href="#parameter-state"><span class="std std-ref"><span class="pre">state</span></span></a></strong></code> parameter.</p>
|
||
<p class="ansible-option-line"><strong class="ansible-option-choices">Choices:</strong></p>
|
||
<ul class="simple">
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">false</code></p></li>
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-default-bold"><strong>true</strong></code> <span class="ansible-option-choices-default-mark">← (default)</span></p></li>
|
||
</ul>
|
||
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-even">
|
||
<td><div class="ansible-option-indent"></div><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-config/key_alias"></div>
|
||
<p class="ansible-option-title"><strong>key_alias</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-config/key_alias" title="Permalink to this option"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">string</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-indent-desc"></div><div class="ansible-option-cell">
|
||
<p>Alias of the key within the keystore.</p>
|
||
<p>Required when <code class="ansible-option-value literal notranslate"><a class="reference internal" href="#parameter-provider_id"><span class="std std-ref"><span class="pre">provider_id=java-keystore</span></span></a></code>.</p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-odd">
|
||
<td><div class="ansible-option-indent"></div><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-config/key_password"></div>
|
||
<p class="ansible-option-title"><strong>key_password</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-config/key_password" title="Permalink to this option"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">string</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-indent-desc"></div><div class="ansible-option-cell">
|
||
<p>Password for the key within the keystore.</p>
|
||
<p>If not specified, the <code class="ansible-option literal notranslate"><strong><a class="reference internal" href="#parameter-config/keystore_password"><span class="std std-ref"><span class="pre">config.keystore_password</span></span></a></strong></code> is used.</p>
|
||
<p>Only applicable to <code class="ansible-option-value literal notranslate"><a class="reference internal" href="#parameter-provider_id"><span class="std std-ref"><span class="pre">provider_id=java-keystore</span></span></a></code>.</p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-even">
|
||
<td><div class="ansible-option-indent"></div><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-config/key_size"></div>
|
||
<p class="ansible-option-title"><strong>key_size</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-config/key_size" title="Permalink to this option"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">integer</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-indent-desc"></div><div class="ansible-option-cell">
|
||
<p>The size of the generated key in bits.</p>
|
||
<p>Only applicable to <code class="ansible-option-value literal notranslate"><a class="reference internal" href="#parameter-provider_id"><span class="std std-ref"><span class="pre">provider_id=rsa-generated</span></span></a></code> and <code class="ansible-option-value literal notranslate"><a class="reference internal" href="#parameter-provider_id"><span class="std std-ref"><span class="pre">provider_id=rsa-enc-generated</span></span></a></code>.</p>
|
||
<p>Valid values are <code class="ansible-value literal notranslate">1024</code>, <code class="ansible-value literal notranslate">2048</code>, <code class="ansible-value literal notranslate">4096</code>. Default is <code class="ansible-value literal notranslate">2048</code>.</p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-odd">
|
||
<td><div class="ansible-option-indent"></div><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-config/keystore"></div>
|
||
<p class="ansible-option-title"><strong>keystore</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-config/keystore" title="Permalink to this option"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">string</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-indent-desc"></div><div class="ansible-option-cell">
|
||
<p>Path to the Java Keystore file on the Keycloak server filesystem.</p>
|
||
<p>Required when <code class="ansible-option-value literal notranslate"><a class="reference internal" href="#parameter-provider_id"><span class="std std-ref"><span class="pre">provider_id=java-keystore</span></span></a></code>.</p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-even">
|
||
<td><div class="ansible-option-indent"></div><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-config/keystore_password"></div>
|
||
<p class="ansible-option-title"><strong>keystore_password</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-config/keystore_password" title="Permalink to this option"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">string</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-indent-desc"></div><div class="ansible-option-cell">
|
||
<p>Password for the Java Keystore.</p>
|
||
<p>Required when <code class="ansible-option-value literal notranslate"><a class="reference internal" href="#parameter-provider_id"><span class="std std-ref"><span class="pre">provider_id=java-keystore</span></span></a></code>.</p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-odd">
|
||
<td><div class="ansible-option-indent"></div><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-config/priority"></div>
|
||
<p class="ansible-option-title"><strong>priority</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-config/priority" title="Permalink to this option"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">integer</span>
|
||
/ <span class="ansible-option-required">required</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-indent-desc"></div><div class="ansible-option-cell">
|
||
<p>The priority of the key.</p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-even">
|
||
<td><div class="ansible-option-indent"></div><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-config/private_key"></div>
|
||
<p class="ansible-option-title"><strong>private_key</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-config/private_key" title="Permalink to this option"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">string</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-indent-desc"></div><div class="ansible-option-cell">
|
||
<p>The private key as an ASCII string. Contents of the key must match <code class="ansible-option literal notranslate"><strong><a class="reference internal" href="#parameter-config/algorithm"><span class="std std-ref"><span class="pre">config.algorithm</span></span></a></strong></code> and <code class="ansible-option literal notranslate"><strong><a class="reference internal" href="#parameter-provider_id"><span class="std std-ref"><span class="pre">provider_id</span></span></a></strong></code>.</p>
|
||
<p>Please note that the module cannot detect whether the private key specified differs from the current state's private key. Use <code class="ansible-option-value literal notranslate"><a class="reference internal" href="#parameter-force"><span class="std std-ref"><span class="pre">force=true</span></span></a></code> to force the module to update the private key if you expect it to be updated.</p>
|
||
<p>Required when <code class="ansible-option literal notranslate"><strong><a class="reference internal" href="#parameter-provider_id"><span class="std std-ref"><span class="pre">provider_id</span></span></a></strong></code> is <code class="ansible-value literal notranslate">rsa</code> or <code class="ansible-value literal notranslate">rsa-enc</code>. Not used for auto-generated providers.</p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-odd">
|
||
<td><div class="ansible-option-indent"></div><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-config/secret_size"></div>
|
||
<p class="ansible-option-title"><strong>secret_size</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-config/secret_size" title="Permalink to this option"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">integer</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-indent-desc"></div><div class="ansible-option-cell">
|
||
<p>The size of the generated secret key in bytes.</p>
|
||
<p>Only applicable to <code class="ansible-option-value literal notranslate"><a class="reference internal" href="#parameter-provider_id"><span class="std std-ref"><span class="pre">provider_id=hmac-generated</span></span></a></code> and <code class="ansible-option-value literal notranslate"><a class="reference internal" href="#parameter-provider_id"><span class="std std-ref"><span class="pre">provider_id=aes-generated</span></span></a></code>.</p>
|
||
<p>Valid values are <code class="ansible-value literal notranslate">16</code>, <code class="ansible-value literal notranslate">24</code>, <code class="ansible-value literal notranslate">32</code>, <code class="ansible-value literal notranslate">64</code>, <code class="ansible-value literal notranslate">128</code>, <code class="ansible-value literal notranslate">256</code>, <code class="ansible-value literal notranslate">512</code>.</p>
|
||
<p>Default is <code class="ansible-value literal notranslate">64</code> for HMAC, <code class="ansible-value literal notranslate">16</code> for AES.</p>
|
||
</div></td>
|
||
</tr>
|
||
|
||
<tr class="row-even">
|
||
<td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-connection_timeout"></div>
|
||
<p class="ansible-option-title"><strong>connection_timeout</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-connection_timeout" title="Permalink to this option"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">integer</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell">
|
||
<p>Controls the HTTP connections timeout period (in seconds) to Keycloak API.</p>
|
||
<p class="ansible-option-line"><strong class="ansible-option-default-bold">Default:</strong> <code class="ansible-value literal notranslate ansible-option-default">10</code></p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-odd">
|
||
<td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-force"></div>
|
||
<p class="ansible-option-title"><strong>force</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-force" title="Permalink to this option"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">boolean</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell">
|
||
<p>Enforce the state of the private key and certificate. This is not automatically the case as this module is unable to determine the current state of the private key and thus cannot trigger an update based on an actual divergence. That said, a private key update may happen even if force is false as a side-effect of other changes.</p>
|
||
<p class="ansible-option-line"><strong class="ansible-option-choices">Choices:</strong></p>
|
||
<ul class="simple">
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-default-bold"><strong>false</strong></code> <span class="ansible-option-choices-default-mark">← (default)</span></p></li>
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">true</code></p></li>
|
||
</ul>
|
||
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-even">
|
||
<td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-http_agent"></div>
|
||
<p class="ansible-option-title"><strong>http_agent</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-http_agent" title="Permalink to this option"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">string</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell">
|
||
<p>Configures the HTTP User-Agent header.</p>
|
||
<p class="ansible-option-line"><strong class="ansible-option-default-bold">Default:</strong> <code class="ansible-value literal notranslate ansible-option-default">"Ansible"</code></p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-odd">
|
||
<td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-name"></div>
|
||
<p class="ansible-option-title"><strong>name</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-name" title="Permalink to this option"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">string</span>
|
||
/ <span class="ansible-option-required">required</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell">
|
||
<p>Name of the realm key to create.</p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-even">
|
||
<td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-parent_id"></div>
|
||
<p class="ansible-option-title"><strong>parent_id</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-parent_id" title="Permalink to this option"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">string</span>
|
||
/ <span class="ansible-option-required">required</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell">
|
||
<p>The parent_id of the realm key. In practice the name of the realm.</p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-odd">
|
||
<td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-provider_id"></div>
|
||
<p class="ansible-option-title"><strong>provider_id</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-provider_id" title="Permalink to this option"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">string</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell">
|
||
<p>The name of the "provider ID" for the key.</p>
|
||
<p>The value <code class="ansible-value literal notranslate">rsa-enc</code> has been added in middleware_automation.keycloak 8.2.0.</p>
|
||
<p>The value <code class="ansible-value literal notranslate">java-keystore</code> has been added in middleware_automation.keycloak 12.4.0. This provider imports keys from a Java Keystore (JKS or PKCS12) file located on the Keycloak server filesystem.</p>
|
||
<p>The values <code class="ansible-value literal notranslate">rsa-generated</code>, <code class="ansible-value literal notranslate">hmac-generated</code>, <code class="ansible-value literal notranslate">aes-generated</code>, and <code class="ansible-value literal notranslate">ecdsa-generated</code> have been added in middleware_automation.keycloak 3.0.0. These are auto-generated key providers where Keycloak manages the key material.</p>
|
||
<p>The values <code class="ansible-value literal notranslate">rsa-enc-generated</code>, <code class="ansible-value literal notranslate">ecdh-generated</code>, and <code class="ansible-value literal notranslate">eddsa-generated</code> have been added in middleware_automation.keycloak 3.0.0. These correspond to the auto-generated key providers available in Keycloak 26.</p>
|
||
<p class="ansible-option-line"><strong class="ansible-option-choices">Choices:</strong></p>
|
||
<ul class="simple">
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-default-bold"><strong>"rsa"</strong></code> <span class="ansible-option-choices-default-mark">← (default)</span></p></li>
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">"rsa-enc"</code></p></li>
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">"java-keystore"</code></p></li>
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">"rsa-generated"</code></p></li>
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">"rsa-enc-generated"</code></p></li>
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">"hmac-generated"</code></p></li>
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">"aes-generated"</code></p></li>
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">"ecdsa-generated"</code></p></li>
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">"ecdh-generated"</code></p></li>
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">"eddsa-generated"</code></p></li>
|
||
</ul>
|
||
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-even">
|
||
<td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-refresh_token"></div>
|
||
<p class="ansible-option-title"><strong>refresh_token</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-refresh_token" title="Permalink to this option"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">string</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell">
|
||
<p>Authentication refresh token for Keycloak API.</p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-odd">
|
||
<td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-state"></div>
|
||
<p class="ansible-option-title"><strong>state</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-state" title="Permalink to this option"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">string</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell">
|
||
<p>State of the keycloak realm key.</p>
|
||
<p>On <code class="ansible-value literal notranslate">present</code>, the realm key is created (or updated if it exists already).</p>
|
||
<p>On <code class="ansible-value literal notranslate">absent</code>, the realm key is removed if it exists.</p>
|
||
<p class="ansible-option-line"><strong class="ansible-option-choices">Choices:</strong></p>
|
||
<ul class="simple">
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-default-bold"><strong>"present"</strong></code> <span class="ansible-option-choices-default-mark">← (default)</span></p></li>
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">"absent"</code></p></li>
|
||
</ul>
|
||
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-even">
|
||
<td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-token"></div>
|
||
<p class="ansible-option-title"><strong>token</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-token" title="Permalink to this option"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">string</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell">
|
||
<p>Authentication token for Keycloak API.</p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-odd">
|
||
<td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-update_password"></div>
|
||
<p class="ansible-option-title"><strong>update_password</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-update_password" title="Permalink to this option"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">string</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell">
|
||
<p>Controls when passwords are sent to Keycloak for <code class="ansible-value literal notranslate">java-keystore</code> provider.</p>
|
||
<p><code class="ansible-value literal notranslate">always</code> - Always send passwords. Keycloak will update the component even if passwords have not changed. Use when you need to ensure passwords are updated.</p>
|
||
<p><code class="ansible-value literal notranslate">on_create</code> - Only send passwords when creating a new component. When updating an existing component, send the masked value to preserve existing passwords. This makes the module idempotent for password fields.</p>
|
||
<p>This is necessary because Keycloak masks passwords in API responses (returns <code class='docutils literal notranslate'>**********</code>), making comparison impossible.</p>
|
||
<p>Has no effect for providers other than <code class="ansible-value literal notranslate">java-keystore</code>.</p>
|
||
<p class="ansible-option-line"><strong class="ansible-option-choices">Choices:</strong></p>
|
||
<ul class="simple">
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-default-bold"><strong>"always"</strong></code> <span class="ansible-option-choices-default-mark">← (default)</span></p></li>
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">"on_create"</code></p></li>
|
||
</ul>
|
||
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-even">
|
||
<td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-validate_certs"></div>
|
||
<p class="ansible-option-title"><strong>validate_certs</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-validate_certs" title="Permalink to this option"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">boolean</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell">
|
||
<p>Verify TLS certificates (do not disable this in production).</p>
|
||
<p class="ansible-option-line"><strong class="ansible-option-choices">Choices:</strong></p>
|
||
<ul class="simple">
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-choices-entry">false</code></p></li>
|
||
<li><p><code class="ansible-value literal notranslate ansible-option-default-bold"><strong>true</strong></code> <span class="ansible-option-choices-default-mark">← (default)</span></p></li>
|
||
</ul>
|
||
|
||
</div></td>
|
||
</tr>
|
||
</tbody>
|
||
</table></section>
|
||
<section id="attributes">
|
||
<h2><a class="toc-backref" href="#id3" role="doc-backlink">Attributes</a><a class="headerlink" href="#attributes" title="Link to this heading"></a></h2>
|
||
<table class="longtable ansible-option-table docutils align-default" style="width: 100%">
|
||
<thead>
|
||
<tr class="row-odd"><th class="head"><p>Attribute</p></th>
|
||
<th class="head"><p>Support</p></th>
|
||
<th class="head"><p>Description</p></th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<tr class="row-even"><td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="attribute-action_group"></div><p class="ansible-option-title" id="ansible-collections-middleware-automation-keycloak-keycloak-realm-key-module-attribute-action-group"><strong>action_group</strong></p>
|
||
<a class="ansibleOptionLink" href="#attribute-action_group" title="Permalink to this attribute"></a></div></td>
|
||
<td><div class="ansible-option-cell"><p><strong class="ansible-attribute-support-property">Action group:</strong> <strong class="ansible-attribute-support-full">middleware_automation.keycloak.keycloak</strong></p>
|
||
<p><em class="ansible-option-versionadded">added in middleware_automation.keycloak 3.0.0</em></p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell"><p>Use <code class="docutils literal notranslate"><span class="pre">group/middleware_automation.keycloak.keycloak</span></code> in <code class="docutils literal notranslate"><span class="pre">module_defaults</span></code> to set defaults for this module.</p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-odd"><td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="attribute-check_mode"></div><p class="ansible-option-title" id="ansible-collections-middleware-automation-keycloak-keycloak-realm-key-module-attribute-check-mode"><strong>check_mode</strong></p>
|
||
<a class="ansibleOptionLink" href="#attribute-check_mode" title="Permalink to this attribute"></a></div></td>
|
||
<td><div class="ansible-option-cell"><p><strong class="ansible-attribute-support-label">Support: </strong><strong class="ansible-attribute-support-full">full</strong></p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell"><p>Can run in <code class="docutils literal notranslate"><span class="pre">check_mode</span></code> and return changed status prediction without modifying target.</p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-even"><td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="attribute-diff_mode"></div><p class="ansible-option-title" id="ansible-collections-middleware-automation-keycloak-keycloak-realm-key-module-attribute-diff-mode"><strong>diff_mode</strong></p>
|
||
<a class="ansibleOptionLink" href="#attribute-diff_mode" title="Permalink to this attribute"></a></div></td>
|
||
<td><div class="ansible-option-cell"><p><strong class="ansible-attribute-support-label">Support: </strong><strong class="ansible-attribute-support-partial">partial</strong></p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell"><p>Will return details on what has changed (or possibly needs changing in <code class="docutils literal notranslate"><span class="pre">check_mode</span></code>), when in diff mode.</p>
|
||
</div></td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
</section>
|
||
<section id="notes">
|
||
<h2><a class="toc-backref" href="#id4" role="doc-backlink">Notes</a><a class="headerlink" href="#notes" title="Link to this heading"></a></h2>
|
||
<div class="admonition note">
|
||
<p class="admonition-title">Note</p>
|
||
<ul class="simple">
|
||
<li><p>Current value of the private key cannot be fetched from Keycloak. Therefore comparing its desired state to the current state is not possible.</p></li>
|
||
<li><p>If <code class="ansible-option docutils literal notranslate"><strong><span><span class="pre">config.certificate</span></span></strong></code> is not explicitly provided it is dynamically created by Keycloak. Therefore comparing the current state of the certificate to the desired state (which may be empty) is not possible.</p></li>
|
||
<li><p>Due to the private key and certificate options the module is <strong>not fully idempotent</strong>. You can use <code class="ansible-option-value docutils literal notranslate"><span><span class="pre">force=true</span></span></code> to force the module to ensure updating if you know that the private key might have changed.</p></li>
|
||
<li><p>For auto-generated providers (<code class="ansible-value docutils literal notranslate"><span class="pre">rsa-generated</span></code>, <code class="ansible-value docutils literal notranslate"><span class="pre">rsa-enc-generated</span></code>, <code class="ansible-value docutils literal notranslate"><span class="pre">hmac-generated</span></code>, <code class="ansible-value docutils literal notranslate"><span class="pre">aes-generated</span></code>, <code class="ansible-value docutils literal notranslate"><span class="pre">ecdsa-generated</span></code>, <code class="ansible-value docutils literal notranslate"><span class="pre">ecdh-generated</span></code>, <code class="ansible-value docutils literal notranslate"><span class="pre">eddsa-generated</span></code>), Keycloak manages the key material automatically. The <code class="ansible-option docutils literal notranslate"><strong><span><span class="pre">config.private_key</span></span></strong></code> and <code class="ansible-option docutils literal notranslate"><strong><span><span class="pre">config.certificate</span></span></strong></code> options are not used.</p></li>
|
||
<li><p>For <code class="ansible-value docutils literal notranslate"><span class="pre">java-keystore</span></code> provider, the <code class="ansible-option docutils literal notranslate"><strong><span><span class="pre">config.keystore_password</span></span></strong></code> and <code class="ansible-option docutils literal notranslate"><strong><span><span class="pre">config.key_password</span></span></strong></code> values are returned masked by Keycloak. Therefore comparing their current state to the desired state is not possible. Use <code class="ansible-option-value docutils literal notranslate"><span><span class="pre">update_password=on_create</span></span></code> for idempotent playbooks, or use <code class="ansible-option-value docutils literal notranslate"><span><span class="pre">update_password=always</span></span></code> (default) if you need to ensure passwords are updated.</p></li>
|
||
</ul>
|
||
</div>
|
||
</section>
|
||
<section id="examples">
|
||
<h2><a class="toc-backref" href="#id5" role="doc-backlink">Examples</a><a class="headerlink" href="#examples" title="Link to this heading"></a></h2>
|
||
<div class="highlight-yaml+jinja notranslate"><div class="highlight"><pre><span></span><span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">Manage Keycloak realm key (certificate autogenerated by Keycloak)</span>
|
||
<span class="w"> </span><span class="nt">middleware_automation.keycloak.keycloak_realm_key</span><span class="p">:</span>
|
||
<span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">custom</span>
|
||
<span class="w"> </span><span class="nt">state</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">present</span>
|
||
<span class="w"> </span><span class="nt">parent_id</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">master</span>
|
||
<span class="w"> </span><span class="nt">provider_id</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">rsa</span>
|
||
<span class="w"> </span><span class="nt">auth_keycloak_url</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">http://localhost:8080</span>
|
||
<span class="w"> </span><span class="nt">auth_username</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">keycloak</span>
|
||
<span class="w"> </span><span class="nt">auth_password</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">keycloak</span>
|
||
<span class="w"> </span><span class="nt">auth_realm</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">master</span>
|
||
<span class="w"> </span><span class="nt">config</span><span class="p">:</span>
|
||
<span class="w"> </span><span class="nt">private_key</span><span class="p">:</span><span class="w"> </span><span class="s">"</span><span class="cp">{{</span> <span class="nv">private_key</span> <span class="cp">}}</span><span class="s">"</span>
|
||
<span class="w"> </span><span class="nt">certificate</span><span class="p">:</span><span class="w"> </span><span class="s">""</span>
|
||
<span class="w"> </span><span class="nt">enabled</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">true</span>
|
||
<span class="w"> </span><span class="nt">active</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">true</span>
|
||
<span class="w"> </span><span class="nt">priority</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">120</span>
|
||
<span class="w"> </span><span class="nt">algorithm</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">RS256</span>
|
||
|
||
<span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">Manage Keycloak realm key and certificate</span>
|
||
<span class="w"> </span><span class="nt">middleware_automation.keycloak.keycloak_realm_key</span><span class="p">:</span>
|
||
<span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">custom</span>
|
||
<span class="w"> </span><span class="nt">state</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">present</span>
|
||
<span class="w"> </span><span class="nt">parent_id</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">master</span>
|
||
<span class="w"> </span><span class="nt">provider_id</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">rsa</span>
|
||
<span class="w"> </span><span class="nt">auth_keycloak_url</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">http://localhost:8080</span>
|
||
<span class="w"> </span><span class="nt">auth_username</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">keycloak</span>
|
||
<span class="w"> </span><span class="nt">auth_password</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">keycloak</span>
|
||
<span class="w"> </span><span class="nt">auth_realm</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">master</span>
|
||
<span class="w"> </span><span class="nt">config</span><span class="p">:</span>
|
||
<span class="w"> </span><span class="nt">private_key</span><span class="p">:</span><span class="w"> </span><span class="s">"</span><span class="cp">{{</span> <span class="nv">private_key</span> <span class="cp">}}</span><span class="s">"</span>
|
||
<span class="w"> </span><span class="nt">certificate</span><span class="p">:</span><span class="w"> </span><span class="s">"</span><span class="cp">{{</span> <span class="nv">certificate</span> <span class="cp">}}</span><span class="s">"</span>
|
||
<span class="w"> </span><span class="nt">enabled</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">true</span>
|
||
<span class="w"> </span><span class="nt">active</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">true</span>
|
||
<span class="w"> </span><span class="nt">priority</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">120</span>
|
||
<span class="w"> </span><span class="nt">algorithm</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">RS256</span>
|
||
|
||
<span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">Create HMAC signing key (auto-generated)</span>
|
||
<span class="w"> </span><span class="nt">middleware_automation.keycloak.keycloak_realm_key</span><span class="p">:</span>
|
||
<span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">hmac-custom</span>
|
||
<span class="w"> </span><span class="nt">state</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">present</span>
|
||
<span class="w"> </span><span class="nt">parent_id</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">master</span>
|
||
<span class="w"> </span><span class="nt">provider_id</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">hmac-generated</span>
|
||
<span class="w"> </span><span class="nt">auth_keycloak_url</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">http://localhost:8080</span>
|
||
<span class="w"> </span><span class="nt">auth_username</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">keycloak</span>
|
||
<span class="w"> </span><span class="nt">auth_password</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">keycloak</span>
|
||
<span class="w"> </span><span class="nt">auth_realm</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">master</span>
|
||
<span class="w"> </span><span class="nt">config</span><span class="p">:</span>
|
||
<span class="w"> </span><span class="nt">enabled</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">true</span>
|
||
<span class="w"> </span><span class="nt">active</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">true</span>
|
||
<span class="w"> </span><span class="nt">priority</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">100</span>
|
||
<span class="w"> </span><span class="nt">algorithm</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">HS256</span>
|
||
<span class="w"> </span><span class="nt">secret_size</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">64</span>
|
||
|
||
<span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">Create AES encryption key (auto-generated)</span>
|
||
<span class="w"> </span><span class="nt">middleware_automation.keycloak.keycloak_realm_key</span><span class="p">:</span>
|
||
<span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">aes-custom</span>
|
||
<span class="w"> </span><span class="nt">state</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">present</span>
|
||
<span class="w"> </span><span class="nt">parent_id</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">master</span>
|
||
<span class="w"> </span><span class="nt">provider_id</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">aes-generated</span>
|
||
<span class="w"> </span><span class="nt">auth_keycloak_url</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">http://localhost:8080</span>
|
||
<span class="w"> </span><span class="nt">auth_username</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">keycloak</span>
|
||
<span class="w"> </span><span class="nt">auth_password</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">keycloak</span>
|
||
<span class="w"> </span><span class="nt">auth_realm</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">master</span>
|
||
<span class="w"> </span><span class="nt">config</span><span class="p">:</span>
|
||
<span class="w"> </span><span class="nt">enabled</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">true</span>
|
||
<span class="w"> </span><span class="nt">active</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">true</span>
|
||
<span class="w"> </span><span class="nt">priority</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">100</span>
|
||
<span class="w"> </span><span class="nt">secret_size</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">16</span>
|
||
|
||
<span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">Create ECDSA signing key (auto-generated)</span>
|
||
<span class="w"> </span><span class="nt">middleware_automation.keycloak.keycloak_realm_key</span><span class="p">:</span>
|
||
<span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">ecdsa-custom</span>
|
||
<span class="w"> </span><span class="nt">state</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">present</span>
|
||
<span class="w"> </span><span class="nt">parent_id</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">master</span>
|
||
<span class="w"> </span><span class="nt">provider_id</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">ecdsa-generated</span>
|
||
<span class="w"> </span><span class="nt">auth_keycloak_url</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">http://localhost:8080</span>
|
||
<span class="w"> </span><span class="nt">auth_username</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">keycloak</span>
|
||
<span class="w"> </span><span class="nt">auth_password</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">keycloak</span>
|
||
<span class="w"> </span><span class="nt">auth_realm</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">master</span>
|
||
<span class="w"> </span><span class="nt">config</span><span class="p">:</span>
|
||
<span class="w"> </span><span class="nt">enabled</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">true</span>
|
||
<span class="w"> </span><span class="nt">active</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">true</span>
|
||
<span class="w"> </span><span class="nt">priority</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">100</span>
|
||
<span class="w"> </span><span class="nt">algorithm</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">ES256</span>
|
||
<span class="w"> </span><span class="nt">elliptic_curve</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">P-256</span>
|
||
|
||
<span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">Create RSA signing key (auto-generated)</span>
|
||
<span class="w"> </span><span class="nt">middleware_automation.keycloak.keycloak_realm_key</span><span class="p">:</span>
|
||
<span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">rsa-auto</span>
|
||
<span class="w"> </span><span class="nt">state</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">present</span>
|
||
<span class="w"> </span><span class="nt">parent_id</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">master</span>
|
||
<span class="w"> </span><span class="nt">provider_id</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">rsa-generated</span>
|
||
<span class="w"> </span><span class="nt">auth_keycloak_url</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">http://localhost:8080</span>
|
||
<span class="w"> </span><span class="nt">auth_username</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">keycloak</span>
|
||
<span class="w"> </span><span class="nt">auth_password</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">keycloak</span>
|
||
<span class="w"> </span><span class="nt">auth_realm</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">master</span>
|
||
<span class="w"> </span><span class="nt">config</span><span class="p">:</span>
|
||
<span class="w"> </span><span class="nt">enabled</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">true</span>
|
||
<span class="w"> </span><span class="nt">active</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">true</span>
|
||
<span class="w"> </span><span class="nt">priority</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">100</span>
|
||
<span class="w"> </span><span class="nt">algorithm</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">RS256</span>
|
||
<span class="w"> </span><span class="nt">key_size</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">2048</span>
|
||
|
||
<span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">Remove default HMAC key</span>
|
||
<span class="w"> </span><span class="nt">middleware_automation.keycloak.keycloak_realm_key</span><span class="p">:</span>
|
||
<span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">hmac-generated</span>
|
||
<span class="w"> </span><span class="nt">state</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">absent</span>
|
||
<span class="w"> </span><span class="nt">parent_id</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">myrealm</span>
|
||
<span class="w"> </span><span class="nt">provider_id</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">hmac-generated</span>
|
||
<span class="w"> </span><span class="nt">auth_keycloak_url</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">http://localhost:8080</span>
|
||
<span class="w"> </span><span class="nt">auth_username</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">keycloak</span>
|
||
<span class="w"> </span><span class="nt">auth_password</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">keycloak</span>
|
||
<span class="w"> </span><span class="nt">auth_realm</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">master</span>
|
||
<span class="w"> </span><span class="nt">config</span><span class="p">:</span>
|
||
<span class="w"> </span><span class="nt">priority</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">100</span>
|
||
|
||
<span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">Create RSA encryption key (auto-generated)</span>
|
||
<span class="w"> </span><span class="nt">middleware_automation.keycloak.keycloak_realm_key</span><span class="p">:</span>
|
||
<span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">rsa-enc-auto</span>
|
||
<span class="w"> </span><span class="nt">state</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">present</span>
|
||
<span class="w"> </span><span class="nt">parent_id</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">master</span>
|
||
<span class="w"> </span><span class="nt">provider_id</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">rsa-enc-generated</span>
|
||
<span class="w"> </span><span class="nt">auth_keycloak_url</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">http://localhost:8080</span>
|
||
<span class="w"> </span><span class="nt">auth_username</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">keycloak</span>
|
||
<span class="w"> </span><span class="nt">auth_password</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">keycloak</span>
|
||
<span class="w"> </span><span class="nt">auth_realm</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">master</span>
|
||
<span class="w"> </span><span class="nt">config</span><span class="p">:</span>
|
||
<span class="w"> </span><span class="nt">enabled</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">true</span>
|
||
<span class="w"> </span><span class="nt">active</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">true</span>
|
||
<span class="w"> </span><span class="nt">priority</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">100</span>
|
||
<span class="w"> </span><span class="nt">algorithm</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">RSA-OAEP</span>
|
||
<span class="w"> </span><span class="nt">key_size</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">2048</span>
|
||
|
||
<span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">Create ECDH key exchange key (auto-generated)</span>
|
||
<span class="w"> </span><span class="nt">middleware_automation.keycloak.keycloak_realm_key</span><span class="p">:</span>
|
||
<span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">ecdh-custom</span>
|
||
<span class="w"> </span><span class="nt">state</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">present</span>
|
||
<span class="w"> </span><span class="nt">parent_id</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">master</span>
|
||
<span class="w"> </span><span class="nt">provider_id</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">ecdh-generated</span>
|
||
<span class="w"> </span><span class="nt">auth_keycloak_url</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">http://localhost:8080</span>
|
||
<span class="w"> </span><span class="nt">auth_username</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">keycloak</span>
|
||
<span class="w"> </span><span class="nt">auth_password</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">keycloak</span>
|
||
<span class="w"> </span><span class="nt">auth_realm</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">master</span>
|
||
<span class="w"> </span><span class="nt">config</span><span class="p">:</span>
|
||
<span class="w"> </span><span class="nt">enabled</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">true</span>
|
||
<span class="w"> </span><span class="nt">active</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">true</span>
|
||
<span class="w"> </span><span class="nt">priority</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">100</span>
|
||
<span class="w"> </span><span class="nt">algorithm</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">ECDH_ES</span>
|
||
<span class="w"> </span><span class="nt">elliptic_curve</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">P-256</span>
|
||
|
||
<span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">Create EdDSA signing key (auto-generated)</span>
|
||
<span class="w"> </span><span class="nt">middleware_automation.keycloak.keycloak_realm_key</span><span class="p">:</span>
|
||
<span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">eddsa-custom</span>
|
||
<span class="w"> </span><span class="nt">state</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">present</span>
|
||
<span class="w"> </span><span class="nt">parent_id</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">master</span>
|
||
<span class="w"> </span><span class="nt">provider_id</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">eddsa-generated</span>
|
||
<span class="w"> </span><span class="nt">auth_keycloak_url</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">http://localhost:8080</span>
|
||
<span class="w"> </span><span class="nt">auth_username</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">keycloak</span>
|
||
<span class="w"> </span><span class="nt">auth_password</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">keycloak</span>
|
||
<span class="w"> </span><span class="nt">auth_realm</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">master</span>
|
||
<span class="w"> </span><span class="nt">config</span><span class="p">:</span>
|
||
<span class="w"> </span><span class="nt">enabled</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">true</span>
|
||
<span class="w"> </span><span class="nt">active</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">true</span>
|
||
<span class="w"> </span><span class="nt">priority</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">100</span>
|
||
<span class="w"> </span><span class="nt">elliptic_curve</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">Ed25519</span>
|
||
|
||
<span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">Import key from Java Keystore (always update passwords)</span>
|
||
<span class="w"> </span><span class="nt">middleware_automation.keycloak.keycloak_realm_key</span><span class="p">:</span>
|
||
<span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">jks-imported</span>
|
||
<span class="w"> </span><span class="nt">state</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">present</span>
|
||
<span class="w"> </span><span class="nt">parent_id</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">master</span>
|
||
<span class="w"> </span><span class="nt">provider_id</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">java-keystore</span>
|
||
<span class="w"> </span><span class="nt">auth_keycloak_url</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">http://localhost:8080</span>
|
||
<span class="w"> </span><span class="nt">auth_username</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">keycloak</span>
|
||
<span class="w"> </span><span class="nt">auth_password</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">keycloak</span>
|
||
<span class="w"> </span><span class="nt">auth_realm</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">master</span>
|
||
<span class="w"> </span><span class="c1"># update_password: always is the default - passwords are always sent to Keycloak</span>
|
||
<span class="w"> </span><span class="nt">config</span><span class="p">:</span>
|
||
<span class="w"> </span><span class="nt">enabled</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">true</span>
|
||
<span class="w"> </span><span class="nt">active</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">true</span>
|
||
<span class="w"> </span><span class="nt">priority</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">100</span>
|
||
<span class="w"> </span><span class="nt">algorithm</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">RS256</span>
|
||
<span class="w"> </span><span class="nt">keystore</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">/opt/keycloak/conf/keystore.jks</span>
|
||
<span class="w"> </span><span class="nt">keystore_password</span><span class="p">:</span><span class="w"> </span><span class="s">"</span><span class="cp">{{</span> <span class="nv">keystore_password</span> <span class="cp">}}</span><span class="s">"</span>
|
||
<span class="w"> </span><span class="nt">key_alias</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">mykey</span>
|
||
<span class="w"> </span><span class="nt">key_password</span><span class="p">:</span><span class="w"> </span><span class="s">"</span><span class="cp">{{</span> <span class="nv">key_password</span> <span class="cp">}}</span><span class="s">"</span>
|
||
|
||
<span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">Import key from Java Keystore (idempotent - only set password on create)</span>
|
||
<span class="w"> </span><span class="nt">middleware_automation.keycloak.keycloak_realm_key</span><span class="p">:</span>
|
||
<span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">jks-idempotent</span>
|
||
<span class="w"> </span><span class="nt">state</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">present</span>
|
||
<span class="w"> </span><span class="nt">parent_id</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">master</span>
|
||
<span class="w"> </span><span class="nt">provider_id</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">java-keystore</span>
|
||
<span class="w"> </span><span class="nt">auth_keycloak_url</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">http://localhost:8080</span>
|
||
<span class="w"> </span><span class="nt">auth_username</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">keycloak</span>
|
||
<span class="w"> </span><span class="nt">auth_password</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">keycloak</span>
|
||
<span class="w"> </span><span class="nt">auth_realm</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">master</span>
|
||
<span class="w"> </span><span class="nt">update_password</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">on_create</span><span class="w"> </span><span class="c1"># Only send passwords when creating, preserve existing on update</span>
|
||
<span class="w"> </span><span class="nt">config</span><span class="p">:</span>
|
||
<span class="w"> </span><span class="nt">enabled</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">true</span>
|
||
<span class="w"> </span><span class="nt">active</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">true</span>
|
||
<span class="w"> </span><span class="nt">priority</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">100</span>
|
||
<span class="w"> </span><span class="nt">algorithm</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">RS256</span>
|
||
<span class="w"> </span><span class="nt">keystore</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">/opt/keycloak/conf/keystore.jks</span>
|
||
<span class="w"> </span><span class="nt">keystore_password</span><span class="p">:</span><span class="w"> </span><span class="s">"</span><span class="cp">{{</span> <span class="nv">keystore_password</span> <span class="cp">}}</span><span class="s">"</span>
|
||
<span class="w"> </span><span class="nt">key_alias</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">mykey</span>
|
||
<span class="w"> </span><span class="nt">key_password</span><span class="p">:</span><span class="w"> </span><span class="s">"</span><span class="cp">{{</span> <span class="nv">key_password</span> <span class="cp">}}</span><span class="s">"</span>
|
||
</pre></div>
|
||
</div>
|
||
</section>
|
||
<section id="return-values">
|
||
<h2><a class="toc-backref" href="#id6" role="doc-backlink">Return Values</a><a class="headerlink" href="#return-values" title="Link to this heading"></a></h2>
|
||
<p>Common return values are documented <a class="reference external" href="https://docs.ansible.com/projects/ansible/latest/reference_appendices/common_return_values.html#common-return-values" title="(in Ansible v14)"><span class="xref std std-ref">here</span></a>, the following are the fields unique to this module:</p>
|
||
<table class="colwidths-auto ansible-option-table docutils align-default" style="width: 100%">
|
||
<thead>
|
||
<tr class="row-odd">
|
||
<th class="head"><p>Key</p></th>
|
||
<th class="head"><p>Description</p></th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<tr class="row-even">
|
||
<td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="return-end_state"></div>
|
||
<p class="ansible-option-title"><strong>end_state</strong></p>
|
||
<a class="ansibleOptionLink" href="#return-end_state" title="Permalink to this return value"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">dictionary</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell">
|
||
<p>Representation of the keycloak_realm_key after module execution.</p>
|
||
<p class="ansible-option-line"><strong class="ansible-option-returned-bold">Returned:</strong> on success</p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-odd">
|
||
<td><div class="ansible-option-indent"></div><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="return-end_state/config"></div>
|
||
<p class="ansible-option-title"><strong>config</strong></p>
|
||
<a class="ansibleOptionLink" href="#return-end_state/config" title="Permalink to this return value"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">dictionary</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-indent-desc"></div><div class="ansible-option-cell">
|
||
<p>Realm key configuration.</p>
|
||
<p class="ansible-option-line"><strong class="ansible-option-returned-bold">Returned:</strong> when <code class="ansible-option-value literal notranslate"><a class="reference internal" href="#parameter-state"><span class="std std-ref"><span class="pre">state=present</span></span></a></code></p>
|
||
<p class="ansible-option-line ansible-option-sample"><strong class="ansible-option-sample-bold">Sample:</strong> <code class="ansible-value literal notranslate ansible-option-sample">{"active": ["true"], "algorithm": ["RS256"], "enabled": ["true"], "priority": ["140"]}</code></p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-even">
|
||
<td><div class="ansible-option-indent"></div><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="return-end_state/id"></div>
|
||
<p class="ansible-option-title"><strong>id</strong></p>
|
||
<a class="ansibleOptionLink" href="#return-end_state/id" title="Permalink to this return value"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">string</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-indent-desc"></div><div class="ansible-option-cell">
|
||
<p>ID of the realm key.</p>
|
||
<p class="ansible-option-line"><strong class="ansible-option-returned-bold">Returned:</strong> when <code class="ansible-option-value literal notranslate"><a class="reference internal" href="#parameter-state"><span class="std std-ref"><span class="pre">state=present</span></span></a></code></p>
|
||
<p class="ansible-option-line ansible-option-sample"><strong class="ansible-option-sample-bold">Sample:</strong> <code class="ansible-value literal notranslate ansible-option-sample">"5b7ec13f-99da-46ad-8326-ab4c73cf4ce4"</code></p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-odd">
|
||
<td><div class="ansible-option-indent"></div><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="return-end_state/key_info"></div>
|
||
<p class="ansible-option-title"><strong>key_info</strong></p>
|
||
<a class="ansibleOptionLink" href="#return-end_state/key_info" title="Permalink to this return value"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">dictionary</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-indent-desc"></div><div class="ansible-option-cell">
|
||
<p>Cryptographic key metadata fetched from the realm keys endpoint.</p>
|
||
<p>Only returned for <code class="ansible-value literal notranslate">java-keystore</code> provider when <code class="ansible-option-value literal notranslate"><a class="reference internal" href="#parameter-state"><span class="std std-ref"><span class="pre">state=present</span></span></a></code> and not in check mode.</p>
|
||
<p>This includes the key ID (kid) and certificate fingerprint, which can be used to detect if the actual cryptographic key changed.</p>
|
||
<p class="ansible-option-line"><strong class="ansible-option-returned-bold">Returned:</strong> when <code class="ansible-option-value literal notranslate"><a class="reference internal" href="#parameter-provider_id"><span class="std std-ref"><span class="pre">provider_id=java-keystore</span></span></a></code> and <code class="ansible-option-value literal notranslate"><a class="reference internal" href="#parameter-state"><span class="std std-ref"><span class="pre">state=present</span></span></a></code></p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-even">
|
||
<td><div class="ansible-option-indent"></div><div class="ansible-option-indent"></div><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="return-end_state/key_info/certificate_fingerprint"></div>
|
||
<p class="ansible-option-title"><strong>certificate_fingerprint</strong></p>
|
||
<a class="ansibleOptionLink" href="#return-end_state/key_info/certificate_fingerprint" title="Permalink to this return value"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">string</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-indent-desc"></div><div class="ansible-option-indent-desc"></div><div class="ansible-option-cell">
|
||
<p>SHA256 fingerprint of the certificate in colon-separated hex format.</p>
|
||
<p class="ansible-option-line"><strong class="ansible-option-returned-bold">Returned:</strong> success</p>
|
||
<p class="ansible-option-line ansible-option-sample"><strong class="ansible-option-sample-bold">Sample:</strong> <code class="ansible-value literal notranslate ansible-option-sample">"A1:B2:C3:D4:E5:F6:..."</code></p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-odd">
|
||
<td><div class="ansible-option-indent"></div><div class="ansible-option-indent"></div><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="return-end_state/key_info/kid"></div>
|
||
<p class="ansible-option-title"><strong>kid</strong></p>
|
||
<a class="ansibleOptionLink" href="#return-end_state/key_info/kid" title="Permalink to this return value"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">string</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-indent-desc"></div><div class="ansible-option-indent-desc"></div><div class="ansible-option-cell">
|
||
<p>The key ID (kid) - unique identifier for the cryptographic key.</p>
|
||
<p class="ansible-option-line"><strong class="ansible-option-returned-bold">Returned:</strong> success</p>
|
||
<p class="ansible-option-line ansible-option-sample"><strong class="ansible-option-sample-bold">Sample:</strong> <code class="ansible-value literal notranslate ansible-option-sample">"bN7p5Nc_V2M7N_-mb5vVSRVPKq5qD_OuARInB9ofsJ0"</code></p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-even">
|
||
<td><div class="ansible-option-indent"></div><div class="ansible-option-indent"></div><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="return-end_state/key_info/status"></div>
|
||
<p class="ansible-option-title"><strong>status</strong></p>
|
||
<a class="ansibleOptionLink" href="#return-end_state/key_info/status" title="Permalink to this return value"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">string</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-indent-desc"></div><div class="ansible-option-indent-desc"></div><div class="ansible-option-cell">
|
||
<p>The key status (ACTIVE, PASSIVE, DISABLED).</p>
|
||
<p class="ansible-option-line"><strong class="ansible-option-returned-bold">Returned:</strong> success</p>
|
||
<p class="ansible-option-line ansible-option-sample"><strong class="ansible-option-sample-bold">Sample:</strong> <code class="ansible-value literal notranslate ansible-option-sample">"ACTIVE"</code></p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-odd">
|
||
<td><div class="ansible-option-indent"></div><div class="ansible-option-indent"></div><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="return-end_state/key_info/valid_to"></div>
|
||
<p class="ansible-option-title"><strong>valid_to</strong></p>
|
||
<a class="ansibleOptionLink" href="#return-end_state/key_info/valid_to" title="Permalink to this return value"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">integer</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-indent-desc"></div><div class="ansible-option-indent-desc"></div><div class="ansible-option-cell">
|
||
<p>Certificate expiration timestamp in milliseconds since epoch.</p>
|
||
<p class="ansible-option-line"><strong class="ansible-option-returned-bold">Returned:</strong> success</p>
|
||
<p class="ansible-option-line ansible-option-sample"><strong class="ansible-option-sample-bold">Sample:</strong> <code class="ansible-value literal notranslate ansible-option-sample">1801789047000</code></p>
|
||
</div></td>
|
||
</tr>
|
||
|
||
<tr class="row-even">
|
||
<td><div class="ansible-option-indent"></div><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="return-end_state/name"></div>
|
||
<p class="ansible-option-title"><strong>name</strong></p>
|
||
<a class="ansibleOptionLink" href="#return-end_state/name" title="Permalink to this return value"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">string</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-indent-desc"></div><div class="ansible-option-cell">
|
||
<p>Name of the realm key.</p>
|
||
<p class="ansible-option-line"><strong class="ansible-option-returned-bold">Returned:</strong> when <code class="ansible-option-value literal notranslate"><a class="reference internal" href="#parameter-state"><span class="std std-ref"><span class="pre">state=present</span></span></a></code></p>
|
||
<p class="ansible-option-line ansible-option-sample"><strong class="ansible-option-sample-bold">Sample:</strong> <code class="ansible-value literal notranslate ansible-option-sample">"mykey"</code></p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-odd">
|
||
<td><div class="ansible-option-indent"></div><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="return-end_state/parentId"></div>
|
||
<p class="ansible-option-title"><strong>parentId</strong></p>
|
||
<a class="ansibleOptionLink" href="#return-end_state/parentId" title="Permalink to this return value"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">string</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-indent-desc"></div><div class="ansible-option-cell">
|
||
<p>ID of the realm this key belongs to.</p>
|
||
<p class="ansible-option-line"><strong class="ansible-option-returned-bold">Returned:</strong> when <code class="ansible-option-value literal notranslate"><a class="reference internal" href="#parameter-state"><span class="std std-ref"><span class="pre">state=present</span></span></a></code></p>
|
||
<p class="ansible-option-line ansible-option-sample"><strong class="ansible-option-sample-bold">Sample:</strong> <code class="ansible-value literal notranslate ansible-option-sample">"myrealm"</code></p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-even">
|
||
<td><div class="ansible-option-indent"></div><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="return-end_state/providerId"></div>
|
||
<p class="ansible-option-title"><strong>providerId</strong></p>
|
||
<a class="ansibleOptionLink" href="#return-end_state/providerId" title="Permalink to this return value"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">string</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-indent-desc"></div><div class="ansible-option-cell">
|
||
<p>The ID of the key provider.</p>
|
||
<p class="ansible-option-line"><strong class="ansible-option-returned-bold">Returned:</strong> when <code class="ansible-option-value literal notranslate"><a class="reference internal" href="#parameter-state"><span class="std std-ref"><span class="pre">state=present</span></span></a></code></p>
|
||
<p class="ansible-option-line ansible-option-sample"><strong class="ansible-option-sample-bold">Sample:</strong> <code class="ansible-value literal notranslate ansible-option-sample">"rsa"</code></p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-odd">
|
||
<td><div class="ansible-option-indent"></div><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="return-end_state/providerType"></div>
|
||
<p class="ansible-option-title"><strong>providerType</strong></p>
|
||
<a class="ansibleOptionLink" href="#return-end_state/providerType" title="Permalink to this return value"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">string</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-indent-desc"></div><div class="ansible-option-cell">
|
||
<p>The type of provider.</p>
|
||
<p class="ansible-option-line"><strong class="ansible-option-returned-bold">Returned:</strong> when <code class="ansible-option-value literal notranslate"><a class="reference internal" href="#parameter-state"><span class="std std-ref"><span class="pre">state=present</span></span></a></code></p>
|
||
</div></td>
|
||
</tr>
|
||
|
||
<tr class="row-even">
|
||
<td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="return-msg"></div>
|
||
<p class="ansible-option-title"><strong>msg</strong></p>
|
||
<a class="ansibleOptionLink" href="#return-msg" title="Permalink to this return value"></a>
|
||
<p class="ansible-option-type-line">
|
||
<span class="ansible-option-type">string</span>
|
||
</p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell">
|
||
<p>Message as to what action was taken.</p>
|
||
<p class="ansible-option-line"><strong class="ansible-option-returned-bold">Returned:</strong> always</p>
|
||
</div></td>
|
||
</tr>
|
||
</tbody>
|
||
</table><section id="authors">
|
||
<h3>Authors<a class="headerlink" href="#authors" title="Link to this heading"></a></h3>
|
||
<ul class="simple">
|
||
<li><p>Samuli Seppänen (@mattock)</p></li>
|
||
<li><p>Ivan Kokalović (@koke1997)</p></li>
|
||
</ul>
|
||
</section>
|
||
</section>
|
||
</section>
|
||
|
||
|
||
</div>
|
||
</div>
|
||
<footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
|
||
<a href="keycloak_realm_info.html" class="btn btn-neutral float-left" title="keycloak_realm_info – Allows obtaining Keycloak realm public information using Keycloak API" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
|
||
<a href="keycloak_realm_keys_metadata_info.html" class="btn btn-neutral float-right" title="keycloak_realm_keys_metadata_info – Allows obtaining Keycloak realm keys metadata using Keycloak API" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
|
||
</div>
|
||
|
||
<hr/>
|
||
|
||
<div role="contentinfo">
|
||
<p>© Copyright 2026, Red Hat, Inc..</p>
|
||
</div>
|
||
|
||
Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a
|
||
<a href="https://github.com/readthedocs/sphinx_rtd_theme">theme</a>
|
||
provided by <a href="https://readthedocs.org">Read the Docs</a>.
|
||
|
||
|
||
</footer>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
</div>
|
||
<script>
|
||
jQuery(function () {
|
||
SphinxRtdTheme.Navigation.enable(true);
|
||
});
|
||
</script>
|
||
|
||
</body>
|
||
</html> |