<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
    <channel>
        <title>Release Notes | PingFederate Server</title>
        <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html</link>
        <description>Release Notes</description>
        <lastBuildDate>Thu, 07 May 2026 16:26:25 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <ttl>5</ttl>
        <copyright>Copyright 2026 Ping Identity. All rights reserved.</copyright>
        <item>
            <title><![CDATA[PingFederate 13.0.2 (April 2026)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-13-0-2-april-2026</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-13-0-2-april-2026</guid>
            <pubDate>Fri, 03 Apr 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="ognl-code-test"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#ognl-code-test"></a>OGNL code test</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-38742</span></p>
</div>
<div class="paragraph">
<p>We improved role-based access control (RBAC) for the administrative expression testing endpoint. Access to expression evaluation is now limited to appropriately-privileged roles, ensuring alignment with intended administrative permissions.</p>
</div>
</div>
<div class="sect3">
<h4 id="fixed-npe-when-updating-sp-connection"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#fixed-npe-when-updating-sp-connection"></a>Fixed NPE when updating SP connection</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38508</span></p>
</div>
<div class="paragraph">
<p>We fixed a defect that caused a null pointer exception (NPE) error when an SP connection with backchannel authentication inbound authentication type set to <strong class="uicontrol">No Client Authentication</strong> and <strong class="uicontrol">Require SSL</strong> enabled was created or updated using the Admin API.</p>
</div>
</div>
<div class="sect3">
<h4 id="log-settings-not-applied-on-new-engine-nodes"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#log-settings-not-applied-on-new-engine-nodes"></a>Log settings not applied on new engine nodes</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38627</span></p>
</div>
<div class="paragraph">
<p>We fixed a defect where log settings weren’t applied to newly joined engine nodes.</p>
</div>
</div>
<div class="sect3">
<h4 id="response-code-for-refresh-token-exchange-failure-with-revoked-user-session"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#response-code-for-refresh-token-exchange-failure-with-revoked-user-session"></a>Response code for refresh token exchange failure with revoked user session</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38656</span></p>
</div>
<div class="paragraph">
<p>We fixed a defect that caused a refresh token for access token exchange to fail with <code class="msgph">500 Internal Server Error</code> instead of <code class="msgph">400 Bad Request</code> when the user’s sessions had been revoked.</p>
</div>
</div>
<div class="sect3">
<h4 id="ciba-token-request-fails-with-ldap-persistent-grant-storage"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#ciba-token-request-fails-with-ldap-persistent-grant-storage"></a>CIBA token request fails with LDAP persistent grant storage</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38706</span></p>
</div>
<div class="paragraph">
<p>We fixed a defect that caused CIBA token requests to fail when persistent grants are stored in an LDAP directory like PingDirectory.</p>
</div>
</div>
<div class="sect3">
<h4 id="admin-api-oauth-authentication-failure"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#admin-api-oauth-authentication-failure"></a>Admin API OAuth authentication failure</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38722</span></p>
</div>
<div class="paragraph">
<p>We fixed a defect that caused OAuth and JWT authentication through the Admin API to fail when the <code class="parmname">role attribute name</code> parameter used the scope claim containing space-delimited values.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 13.0.1 (February 2026)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-13-0-1-february-2026</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-13-0-1-february-2026</guid>
            <pubDate>Fri, 13 Feb 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="new-features-and-enhancements"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#new-features-and-enhancements"></a>New features and enhancements</h3>
<div class="sect3">
<h4 id="disable-automatic-idp-adapter-validation"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#disable-automatic-idp-adapter-validation"></a>Disable automatic IdP adapter validation</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-38501</span></p>
</div>
<div class="paragraph">
<p>We’ve added a feature that allows you to disable automatic validation of IdP adapters when you go to the <strong class="uicontrol">Authentication &gt; Integration &gt; IdP Adapters</strong> menu.</p>
</div>
<div class="paragraph">
<p>Disabling automatic validation can reduce loading time if you have a large number of IdP adapters configured.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_disabling_automatic_idp_adapter_validation.html" class="xref page">Disabling automatic IdP adapter validation</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="par-parameters"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#par-parameters"></a>PAR parameters</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_ticket">PF-38526</span></p>
</div>
<div class="paragraph">
<p>We’ve added a new configuration option to limit the Pushed Authorization Request (PAR) to the parameters mentioned in the specification when the connection is configured to use JWT-secured Authorization Request (JAR).</p>
</div>
</div>
<div class="sect3">
<h4 id="log4j-core-update"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#log4j-core-update"></a><code class="codeph">log4j-core</code> update</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_ticket">PF-38538</span></p>
</div>
<div class="paragraph">
<p>We’ve upgraded <code class="codeph">log4j-core</code> to version 2.25.3.</p>
</div>
<div class="paragraph">
<p>This upgrade ensures continued alignment with maintained upstream dependencies and resolves a potential security vulnerability.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="resolved-issues-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-2"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="pi-flow-response_mode-fix"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pi-flow-response_mode-fix"></a><code class="codeph">pi.flow</code> <code class="parmname">response_mode</code> fix</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38417</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where setting <code class="parmname">response_mode</code> to <code class="codeph">pi.flow</code> in Pushed Authorization Requests (PAR) or standard request objects resulted in an <code class="msgph">INVALID_REQUEST</code> error.</p>
</div>
</div>
<div class="sect3">
<h4 id="dynamic-client-registration-failure"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#dynamic-client-registration-failure"></a>Dynamic client registration failure</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38548</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused dynamic client registration to fail when <strong class="uicontrol">Retain Client Secret</strong> was enabled and <strong class="uicontrol">Client Secret Retention Period</strong> was set globally in <strong class="uicontrol">Authorization Server Settings</strong>.</p>
</div>
</div>
<div class="sect3">
<h4 id="kerberos-realm-validation-error"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#kerberos-realm-validation-error"></a>Kerberos realm validation error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38585</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that prevented PingFederate from creating, updating, or testing Kerberos realms when the <code class="parmname">AutoGenerateKrb5Conf</code> parameter was set to <code class="option">false</code> in the <code class="filepath">com.pingidentity.common.util.KerberosConfigUtil</code> file.</p>
</div>
</div>
<div class="sect3">
<h4 id="kerberos-realm-test-connectivity-overwriting-krb5-conf"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#kerberos-realm-test-connectivity-overwriting-krb5-conf"></a>Kerberos realm test connectivity overwriting <code class="filepath">krb5.conf</code></h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38585</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where PingFederate temporarily overwrote the <code class="filepath">krb5.conf</code> file during Kerberos realms testing when <code class="parmname">AutoGenerateKrb5Conf</code> was disabled.</p>
</div>
</div>
<div class="sect3">
<h4 id="heartbeat-endpoint-failure"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#heartbeat-endpoint-failure"></a>Heartbeat endpoint failure</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38595</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused the heartbeat endpoint to be potentially unresponsive in rare concurrent access situations.</p>
</div>
</div>
<div class="sect3">
<h4 id="authentication-policy-error"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#authentication-policy-error"></a>Authentication policy error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38623</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused an error when authentication policies with a Requested AuthN Context Authentication had <strong class="uicontrol">Add or Update AuthN Context Attribute</strong> enabled.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 13.0 (December 2025)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-13-0-december-2025</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-13-0-december-2025</guid>
            <pubDate>Wed, 17 Dec 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="new-features-and-enhancements-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#new-features-and-enhancements-2"></a>New features and enhancements</h3>
<div class="sect3">
<h4 id="gmsa-support-for-kerberos-realms-on-windows"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#gmsa-support-for-kerberos-realms-on-windows"></a>gMSA support for Kerberos realms on Windows</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-37270</span></p>
</div>
<div class="paragraph">
<p>We’ve added a feature that lets you use group Managed Service Account (gMSA) credentials in Kerberos realms when running PingFederate on Windows.</p>
</div>
<div class="paragraph">
<p>With this feature, you can let Active Directory automatically rotate your client password so you don’t have to manage it.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_configuring_secret_manager_windows_gmsa.html" class="xref page">Configuring a secret manager for Windows gMSA</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="verbose-logging-lifetime-expiration"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#verbose-logging-lifetime-expiration"></a>Verbose logging lifetime expiration</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-37374</span></p>
</div>
<div class="paragraph">
<p>We’ve added a feature that allows you to set an expiration time for verbose logging.</p>
</div>
<div class="paragraph">
<p>This feature is disabled by default, but you can enable it by configuring the <code class="filepath">log4j-categories-settings.conf</code> file.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_logsettingstasklet_logsettingsstate.html#enabling_verbose_logging_lifetime_expiration" class="xref page">Enabling verbose logging lifetime expiration</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="externally-stored-scopes-with-aws-dynamodb"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#externally-stored-scopes-with-aws-dynamodb"></a>Externally stored scopes with AWS DynamoDB</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-37671</span></p>
</div>
<div class="paragraph">
<p>We’ve added a feature that allows external scope storage using AWS DynamoDB.</p>
</div>
<div class="paragraph">
<p>This allows administrators to manage a large volume of scopes without replicating for every scope modification.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_configuring_external_databases_for_scope_storage.html" class="xref page">Configuring external databases for scope storage</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="automatically-replicate-log-changes-to-cluster"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#automatically-replicate-log-changes-to-cluster"></a>Automatically replicate log changes to cluster</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-37684</span></p>
</div>
<div class="paragraph">
<p>We’ve added a feature that automatically replicates changes to log settings to cluster servers. This feature is enabled by default, but you can disable it from the <strong class="wintitle">Cluster Management</strong> page.</p>
</div>
<div class="paragraph">
<p>This feature makes it easier to change log settings across your cluster without running a full replication cycle.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_cluster_management.html" class="xref page">Cluster management</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="redis-support"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#redis-support"></a>Redis support</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-37691</span>
<span class="ping_ticket">PF-38064</span>
<span class="ping_ticket">PF-38065</span></p>
</div>
<div class="paragraph">
<p>We’ve added support for connecting PingFederate to Redis.</p>
</div>
<div class="paragraph">
<p>PingFederate stores short-lived data in a Redis cache to improve resiliency and scalability. It also eases upgrades in clustered environments. PingFederate currently supports storing the following data in Redis:</p>
</div>
<div class="ulist">
<ul>
<li>
<p>Account locking information</p>
</li>
<li>
<p>Authorization artifacts</p>
</li>
<li>
<p>Inter-Request State-Management (IRSM) service data</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_storing_pf_data_redis.html" class="xref page">Storing PingFederate data with Redis</a></p>
</div>
</div>
<div class="sect3">
<h4 id="custom-audience-values-for-oauth-clients"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#custom-audience-values-for-oauth-clients"></a>Custom audience values for OAuth clients</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-37693</span></p>
</div>
<div class="paragraph">
<p>We’ve added a feature that allows you to add custom audience values for OAuth clients.</p>
</div>
<div class="paragraph">
<p>You can use this feature to migrate clients from your existing issuer into PingFederate.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_migrating_external_oauth_clients.html" class="xref page">Migrating external OAuth clients into PingFederate</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="user-count-utility-log-parsing"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#user-count-utility-log-parsing"></a>User Count Utility log parsing</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-37847</span></p>
</div>
<div class="paragraph">
<p>We’ve added a feature that allows the PingFederate User Count Utility (UCU) to parse JSON logs.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://support.pingidentity.com/s/article/PingFederate-User-Count-Utility" target="_blank" rel="noopener">PingFederate User Count Utility</a> in the Ping Identity Support Knowledge Base.</p>
</div>
</div>
<div class="sect3">
<h4 id="client-side-authenticators"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#client-side-authenticators"></a>Client Side Authenticators</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-37909</span></p>
</div>
<div class="paragraph">
<p>PingFederate now supports plugins with client-side authenticator functionality.</p>
</div>
<div class="paragraph">
<p>Client-side authenticators enable PingFederate to leverage authentication methods executed directly by the user’s browser or operating system, such as Passkeys. This allows for stronger, often passwordless, authentication flows.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_html_form_adapter_advanced_fields.html" class="xref page">HTML Form Adapter advanced fields</a> and <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_config_identif_first_adapt_instance.html" class="xref page">Configuring an Identifier First Adapter instance</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="distributed-tracing-open-telemetry"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#distributed-tracing-open-telemetry"></a>Distributed tracing (Open Telemetry)</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-38051</span></p>
</div>
<div class="paragraph">
<p>We’ve added the ability to perform distributed tracing for inbound and outbound requests to the PingFederate server.</p>
</div>
<div class="paragraph">
<p>This feature simplifies troubleshooting by giving you better observability of server processing across request workflows.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_distributed_tracing.html" class="xref page">Distributed tracing</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="expired-persistent-grants-in-pingds"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#expired-persistent-grants-in-pingds"></a>Expired persistent grants in PingDS</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-38062</span></p>
</div>
<div class="paragraph">
<p>We’ve added a feature that allows you to configure time-to-live (TTL) settings in PingDS to remove expired data from your directory server.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_managing_expired_persistent_grants_ds.html" class="xref page">Managing expired persistent grants in PingDS</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="error-handling-idp-connections"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#error-handling-idp-connections"></a>Error handling IdP connections</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-38063</span></p>
</div>
<div class="paragraph">
<p>We’ve added a feature that lets you determine how incoming errors are handled before they’re relayed to the requesting application or partner.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_overriding_error_handling_idp_connection.html" class="xref page">Overriding error handling in an IdP connection</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="authentication-session-storage-in-pingds"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#authentication-session-storage-in-pingds"></a>Authentication session storage in PingDS</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-38082</span></p>
</div>
<div class="paragraph">
<p>We’ve added support for storing authentication sessions on a PingDS server.</p>
</div>
<div class="paragraph">
<p>This update makes it easier to integrate your PingFederate and PingDS deployments.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_defining_datastore_persis_auth_sess.html" class="xref page">Defining a datastore for persistent authentication sessions</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="support-for-response_type-none"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#support-for-response_type-none"></a>Support for response_type <code class="codeph">none</code></h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-38114</span></p>
</div>
<div class="paragraph">
<p>We’ve added support for the OIDC <code class="codeph">response_type=none</code>.</p>
</div>
<div class="paragraph">
<p>This enables clients to request a grant of access from the Authorization Server without requiring the issuance of any tokens or security credentials.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://openid.net/specs/oauth-v2-multiple-response-types-1_0.html#none" target="_blank" rel="noopener">None Response Type</a> in the OIDC specification.</p>
</div>
</div>
<div class="sect3">
<h4 id="accessible-token-response-in-oidc-idp-connection"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#accessible-token-response-in-oidc-idp-connection"></a>Accessible token response in OIDC IdP connection</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-38120</span></p>
</div>
<div class="paragraph">
<p>We’ve added a feature that allows you to access additional parameters of an OIDC-enabled IdP’s token endpoint response.</p>
</div>
<div class="paragraph">
<p>You can use the <strong class="uicontrol">Token Endpoint Response</strong> context values when creating attribute mappings or issuance criteria in OIDC-enabled IdP connections.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_configuring_target_session_fulfillment.html" class="xref page">Configuring target session fulfillment</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="bulkhead-warning-email"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#bulkhead-warning-email"></a>Bulkhead warning email</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span>
<span class="ping_ticket">PF-37011</span></p>
</div>
<div class="paragraph">
<p>Bulkhead warning emails now include the IP address and cluster index of the engine node that triggered the bulkhead.</p>
</div>
</div>
<div class="sect3">
<h4 id="thread-pool-management"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#thread-pool-management"></a>Thread pool management</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span>
<span class="ping_ticket">PF-37547</span></p>
</div>
<div class="paragraph">
<p>We’ve improved Jetty thread pool management so that PingFederate no longer creates unnecessary thread pools. The number of threads allocated to unused servers now depends on the <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_config_pf_propert.html" class="xref page">operational mode</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="openid-connect-policy-selector"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#openid-connect-policy-selector"></a>OpenID Connect Policy Selector</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span>
<span class="ping_ticket">PF-38033</span></p>
</div>
<div class="paragraph">
<p>The policy list is now sorted alphabetically by name in both the OAuth Client and Client Settings configurations.</p>
</div>
</div>
<div class="sect3">
<h4 id="aws-dynamodb-scope-manager-cache-configuration"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#aws-dynamodb-scope-manager-cache-configuration"></a>AWS DynamoDB scope manager cache configuration</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span>
<span class="ping_ticket">PF-38269</span></p>
</div>
<div class="paragraph">
<p>The <code class="codeph">cacheExpirySecs</code> attribute is now exposed by default in the DynamoDB scope manager configuration file.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_configuring_external_databases_for_scope_storage.html" class="xref page">Configuring external databases for scope storage</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="multiple-addresses-for-administrative-console-runtime"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#multiple-addresses-for-administrative-console-runtime"></a>Multiple addresses for administrative console runtime</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span>
<span class="ping_ticket">PF-38118</span></p>
</div>
<div class="paragraph">
<p>We’ve added a feature that allows multiple email addresses for administrative console runtime notification email fields.</p>
</div>
<div class="paragraph">
<p>This update affects several notification features, such as <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_configuring_runtime_notifications.html" class="xref page">runtime notifications</a> and <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_config_notificat_for_license_events.html" class="xref page">licensing events</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="documentation-restructuring"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#documentation-restructuring"></a>Documentation restructuring</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span></p>
</div>
<div class="paragraph">
<p>The PingFederate 13.0 documentation has been completely restructured to help customers get up and running faster, improve the overall flow, and make it easier to find information. This is an ongoing effort which will continue after the initial 13.0 release.</p>
</div>
</div>
<div class="sect3">
<h4 id="jersey-library"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#jersey-library"></a>Jersey library</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">info</span>
<span class="ping_ticket">PF-5069</span></p>
</div>
<div class="paragraph">
<p>We’ve upgraded the internal Jersey library to version 2.</p>
</div>
<div class="paragraph">
<p>This change will require you to upgrade some plugins. Learn more in <a href="https://docs.pingidentity.com/pingfederate/upgrading_pingfederate/pf_upgrade_considerations_13x.html" class="xref page">Upgrade considerations</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="jetty-library"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#jetty-library"></a>Jetty library</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">info</span>
<span class="ping_ticket">PF-36674</span></p>
</div>
<div class="paragraph">
<p>We’ve upgraded the Jetty library to version 12.0.</p>
</div>
</div>
<div class="sect3">
<h4 id="log4j2-2-25-1"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#log4j2-2-25-1"></a>Log4j2 2.25.1</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_ticket">PF-37100</span></p>
</div>
<div class="paragraph">
<p>We’ve upgraded the log4j2 dependencies to version 2.25.1.</p>
</div>
</div>
<div class="sect3">
<h4 id="apache-commons-lang-libraries-update"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#apache-commons-lang-libraries-update"></a>Apache Commons Lang libraries update</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_ticket">PF-37775</span></p>
</div>
<div class="paragraph">
<p>We’ve upgraded Apache <code class="codeph">commons-lang</code> to version 2.6-p1 and <code class="codeph">commons-lang3</code> to version 3.18.0 to continue alignment with maintained upstream dependencies.</p>
</div>
</div>
<div class="sect3">
<h4 id="tls-1-3-support-for-oracle-java-21"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#tls-1-3-support-for-oracle-java-21"></a>TLS 1.3 support for Oracle Java 21</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_ticket">PF-37849</span></p>
</div>
<div class="paragraph">
<p>We’ve added support for TLS 1.3 for Oracle Java 21 with Thales and Entrust HSMs.</p>
</div>
</div>
<div class="sect3">
<h4 id="bouncy-castle-fips"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#bouncy-castle-fips"></a>Bouncy Castle FIPS</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_ticket">PF-37943</span></p>
</div>
<div class="paragraph">
<p>We’ve upgraded Bouncy Castle to version 2.0.1. This version is certified to operate in Federal Information Processing Standards (FIPS) mode 140-3.</p>
</div>
</div>
<div class="sect3">
<h4 id="amazon-aurora-mysql"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#amazon-aurora-mysql"></a>Amazon Aurora MySQL</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_ticket">PF-38045</span></p>
</div>
<div class="paragraph">
<p>We’ve qualified PingFederate for use with Amazon Aurora MySQL version 3.10 (compatible with MySQL 8.0.42).</p>
</div>
</div>
<div class="sect3">
<h4 id="postgresql"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#postgresql"></a>PostgreSQL</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_ticket">PF-38048</span></p>
</div>
<div class="paragraph">
<p>We’ve qualified PingFederate for use with PostgreSQL version 18.0.</p>
</div>
</div>
<div class="sect3">
<h4 id="oracle-mysql"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oracle-mysql"></a>Oracle MySQL</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_ticket">PF-38053</span></p>
</div>
<div class="paragraph">
<p>We’ve qualified PingFederate for use with Oracle MySQL version 8.4. This version has an updated database driver. Learn more in <a href="https://docs.pingidentity.com/pingfederate/installing_and_uninstalling_pingfederate/pf_compatible_database_drivers.html" class="xref page">Compatible database drivers</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="apache-commons-net-update"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#apache-commons-net-update"></a>Apache <code class="codeph">commons-net</code> update</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_ticket">PF-38250</span></p>
</div>
<div class="paragraph">
<p>We’ve upgraded the Apache <code class="codeph">commons-net</code> version to 3.12.0 to continue alignment with maintained upstream dependencies.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="resolved-issues-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-3"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="exposed-credentials"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#exposed-credentials"></a>Exposed credentials</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-36848</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a security vulnerability in the admin console where passwords entered for certificate and key management were visible when navigating back to the previous page. Password fields are now masked.</p>
</div>
</div>
<div class="sect3">
<h4 id="admin-console-ip-exposure"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#admin-console-ip-exposure"></a>Admin console IP exposure</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-33113</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a security vulnerability that could have allowed malicious parties to extract PingFederate administrative console IP addresses using HTTP Response headers.</p>
</div>
</div>
<div class="sect3">
<h4 id="session-revocation-after-password-change"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#session-revocation-after-password-change"></a>Session Revocation After Password Change</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-36426</span></p>
</div>
<div class="paragraph">
<p>After a successful PingFederate administrative password change, all other active concurrent sessions for that administrative account are now immediately invalidated, enhancing security and requiring reauthentication with the new credentials.</p>
</div>
</div>
<div class="sect3">
<h4 id="jackson-core-update"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#jackson-core-update"></a><code class="codeph">jackson-core</code> update</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-37460</span></p>
</div>
<div class="paragraph">
<p>We’ve upgraded <code class="codeph">jackson-core</code> to version 2.20.0 to continue alignment with maintained upstream dependencies and remove potential security vulnerabilities.</p>
</div>
</div>
<div class="sect3">
<h4 id="host-header-redirect"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#host-header-redirect"></a>Host header redirect</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-37460</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a security vulnerability that could have allowed malicious parties to redirect PingFederate admin console traffic using a spoofed Host header.</p>
</div>
</div>
<div class="sect3">
<h4 id="html-form-adapter-browser-history"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#html-form-adapter-browser-history"></a>HTML Form Adapter browser history</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-37902</span></p>
</div>
<div class="paragraph">
<p>We’ve corrected a security regression in the <strong class="uicontrol">HTML Form Adapter</strong> to ensure that password credentials are cleared from the browser immediately after form submission, mitigating a risk of residual exposure in the browser’s memory.</p>
</div>
</div>
<div class="sect3">
<h4 id="user-enumeration-in-policy-password-reset"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#user-enumeration-in-policy-password-reset"></a>User Enumeration in Policy Password Reset</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-38044</span></p>
</div>
<div class="paragraph">
<p>PingFederate now prevents user enumeration in the <strong class="uicontrol">Policy</strong> mode <strong class="uicontrol">Password Reset</strong> flow by eliminating the observable difference between valid and invalid usernames.</p>
</div>
</div>
<div class="sect3">
<h4 id="jakarta-mail-upgrade"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#jakarta-mail-upgrade"></a><code class="codeph">jakarta.mail</code> upgrade</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-38245</span></p>
</div>
<div class="paragraph">
<p>We’ve upgraded <code class="codeph">jakarta.mail</code> to 1.6.8 to continue alignment with maintained upstream dependencies.</p>
</div>
</div>
<div class="sect3">
<h4 id="template-fix-for-incorrect-language-variable"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#template-fix-for-incorrect-language-variable"></a>Template Fix for Incorrect Language Variable</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-25517</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect in several default template files where the language locale wasn’t retrieved correctly.</p>
</div>
</div>
<div class="sect3">
<h4 id="jwt-auth-to-support-azure"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#jwt-auth-to-support-azure"></a>JWT auth to support Azure</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35123</span></p>
</div>
<div class="paragraph">
<p>We’ve added private key JWT authentication support for Microsoft Azure AD as an OIDC provider.</p>
</div>
</div>
<div class="sect3">
<h4 id="aws-cloudhsm-certificate-linking"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#aws-cloudhsm-certificate-linking"></a>AWS CloudHSM certificate linking</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37156</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused failed AWS CloudHSM certificate linking to appear to succeed when the key alias was a value that was previously used in the environment.</p>
</div>
</div>
<div class="sect3">
<h4 id="scope-removal-error"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#scope-removal-error"></a>Scope removal error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37634</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect in the <strong class="uicontrol">Client Settings</strong> menu where removing scopes using the search bar could result in removing the wrong scope.</p>
</div>
</div>
<div class="sect3">
<h4 id="jarm-response-with-error-parameter"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#jarm-response-with-error-parameter"></a>JARM response with <code class="parmname">error</code> parameter</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37688</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where JARM responses with an <code class="parmname">error</code> parameter caused PingFederate to return a <code class="codeph">500</code> error. It now returns a <code class="codeph">200</code> response with the appropriate error page.</p>
</div>
</div>
<div class="sect3">
<h4 id="data-store-filter-configuration"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#data-store-filter-configuration"></a><strong class="uicontrol">Data Store Filter</strong> configuration</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36953</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect in <strong class="uicontrol">Authentication Policy Fragments</strong> where input contract values and tracked parameters were missing from the <strong class="uicontrol">Data Store Filter</strong> configuration page when setting up an <strong class="uicontrol">Attribute Source &amp; User Lookup</strong> for a local identity mapping.</p>
</div>
</div>
<div class="sect3">
<h4 id="serialized-ognl-java-objects"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#serialized-ognl-java-objects"></a>Serialized OGNL Java objects</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37405</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused JSON objects using OGNL expressions included in JWT request objects sent to the OIDC provider in OIDC IdP connections not to be serialized properly.</p>
</div>
</div>
<div class="sect3">
<h4 id="removed-jetty-log-warnings"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#removed-jetty-log-warnings"></a>Removed Jetty log warnings</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37696</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where unnecessary Jetty log warnings appeared after upgrading to new PingFederate versions.</p>
</div>
</div>
<div class="sect3">
<h4 id="atm-configuration-error"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#atm-configuration-error"></a>ATM configuration error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37716</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused an error in PingFederate when configuring an access token manager if the administrative node (ATM) isn’t the coordinator node.</p>
</div>
</div>
<div class="sect3">
<h4 id="refresh-token-error"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#refresh-token-error"></a>Refresh token error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37722</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where PingFederate returned an incorrect error when a refresh token was used by a different client after the original client was deleted.</p>
</div>
</div>
<div class="sect3">
<h4 id="data-store-naming-consistency"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#data-store-naming-consistency"></a><strong class="uicontrol">Data Store</strong> naming consistency</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37732</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a terminology inconsistency in the PingFederate UI and changed <strong class="uicontrol">Data-Store</strong> to <strong class="uicontrol">Data Store</strong> in <strong class="uicontrol">General settings</strong>.</p>
</div>
</div>
<div class="sect3">
<h4 id="authorization_details-access-token-inclusion"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#authorization_details-access-token-inclusion"></a><code class="codeph">authorization_details</code> access token inclusion</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37743</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that omitted the <code class="codeph">authorization_details</code> parameter from the access token if the value was an empty array.</p>
</div>
</div>
<div class="sect3">
<h4 id="sni-extension-error-in-bcfips-mode"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#sni-extension-error-in-bcfips-mode"></a>SNI extension error in BCFIPS mode</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37793</span></p>
</div>
<div class="paragraph">
<p>PingFederate now always includes the SNI extension in the ClientHello message during a TLS handshake when running in BCFIPS mode.</p>
</div>
</div>
<div class="sect3">
<h4 id="wildcard-tls-certificate-error-in-bcfips-mode"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#wildcard-tls-certificate-error-in-bcfips-mode"></a>Wildcard TLS certificate error in BCFIPS mode</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37794</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where PingFederate was refusing wildcard TLS certificates when running in BCFIPS mode.</p>
</div>
</div>
<div class="sect3">
<h4 id="overly-detailed-kerberos-error-messages"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#overly-detailed-kerberos-error-messages"></a>Overly detailed Kerberos error messages</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37798</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused lengthy stacktrace data to be included in ERROR level logging for Kerberos errors.</p>
</div>
</div>
<div class="sect3">
<h4 id="pingfailoverappender-race-condition"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfailoverappender-race-condition"></a><code class="codeph">PingFailoverAppender</code> race condition</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37816</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where a race condition could cause the <code class="codeph">PingFailoverAppender</code> to get stuck in a failed state without switching back to its primary appender.</p>
</div>
</div>
<div class="sect3">
<h4 id="dpop-proof-jwts-with-future-iat-value"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#dpop-proof-jwts-with-future-iat-value"></a>DPoP proof JWTs with future <code class="codeph">iat</code> value</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37818</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where PingFederate incorrectly accepted DPoP proof JWTs with a future <code class="codeph">iat</code> value.</p>
</div>
</div>
<div class="sect3">
<h4 id="classnotfoundexception-error"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#classnotfoundexception-error"></a><code class="codeph">ClassNotFoundException</code> error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37819</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed an issue that could cause <code class="codeph">ClassNotFoundException</code> on the admin console.</p>
</div>
</div>
<div class="sect3">
<h4 id="jwt-api-authentication-method"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#jwt-api-authentication-method"></a>JWT API authentication method</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37841</span></p>
</div>
<div class="paragraph">
<p>We’ve added JWT as an authentication method for the admin API during upgrade utility validation.</p>
</div>
</div>
<div class="sect3">
<h4 id="unused-devops-file"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#unused-devops-file"></a>Unused DevOps file</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37846</span></p>
</div>
<div class="paragraph">
<p>We’ve removed an unused file associated with the PingOne Advanced Identity Cloud DevOps deployment that was mistakenly included in the PingFederate Server <code class="filepath">.zip</code> archive.</p>
</div>
</div>
<div class="sect3">
<h4 id="forgot-password-flow-failure"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#forgot-password-flow-failure"></a>Forgot password flow failure</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37918</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused the forgot password flow to fail when reCAPTCHA is enabled and the flow is initiated using the Enter key rather than a mouse click.</p>
</div>
</div>
<div class="sect3">
<h4 id="password-credential-validator-message-override-error"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#password-credential-validator-message-override-error"></a>Password Credential Validator message override error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37942</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where overriding the reset password message in a Password Credential Validator incorrectly returned a generic <code class="codeph">VALIDATION_ERROR</code> during the redirectless flow, preventing users who are required to change their password from receiving the necessary <code class="codeph">MUST_CHANGE_PASSWORD</code> status and associated <code class="codeph">_links</code>.</p>
</div>
</div>
<div class="sect3">
<h4 id="enhanced-logging-for-idp-connections"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#enhanced-logging-for-idp-connections"></a>Enhanced logging for IdP connections</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37952</span> <span class="ping_ticket">PF-37953</span></p>
</div>
<div class="paragraph">
<p>Logging for IdP connections now includes greater detail when handling invalid state parameters and failing PAR requests.</p>
</div>
</div>
<div class="sect3">
<h4 id="virtual-hostname-accuracy-in-email-notifications"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#virtual-hostname-accuracy-in-email-notifications"></a>Virtual hostname accuracy in email notifications</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37964</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where a template variable incorrectly used the primary PingFederate base URL instead of the virtual hostname in some email notifications.</p>
</div>
</div>
<div class="sect3">
<h4 id="url-validation-for-relaystate"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#url-validation-for-relaystate"></a>URL validation for <code class="codeph">RelayState</code></h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38028</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where PingFederate would reject requests with valid, non-encoded relay state values.</p>
</div>
</div>
<div class="sect3">
<h4 id="html-flow-login-and-authentication-api"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#html-flow-login-and-authentication-api"></a>HTML flow login and Authentication API</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38039</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that could potentially allow a user to access an HTML browser sign-on page when the Authentication API redirectless mode is used.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://support.pingidentity.com/s/article/PingFederate-unexpected-template-rendering-in-redirectless-mode" target="_blank" rel="noopener">PingFederate unexpected template rendering in redirectless mode</a> in the Ping Identity Support Knowledge Base.</p>
</div>
</div>
<div class="sect3">
<h4 id="new-device-speed-bump-parameter-default"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#new-device-speed-bump-parameter-default"></a>New device speed bump parameter default</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38040</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where the <code class="parmname">show-speed-bump-for-new-devices</code> parameter in the <code class="filepath">org.sourceid.servlet.filter.SimultaneousAuthnRequestCheckingFilter.xml</code> file was set to <code class="option">true</code> instead of <code class="option">false</code> by default.</p>
</div>
<div class="paragraph">
<p>The new behavior enables <code class="parmname">show-speed-bump-for-new-devices</code> by default for new installs, but disables it by default for upgrades, if the source version doesn’t have the parameter configured.</p>
</div>
</div>
<div class="sect3">
<h4 id="ldap-account-lockout"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#ldap-account-lockout"></a>LDAP account lockout</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38043</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where PingFederate could incorrectly lock user accounts during an LDAP connectivity failure with Active Directory. This applies to all LDAP datastore types except for Generic LDAP.</p>
</div>
</div>
<div class="sect3">
<h4 id="jarm-idp-connections"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#jarm-idp-connections"></a>JARM IdP connections</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38052</span></p>
</div>
<div class="paragraph">
<p>When PingFederate is configured to expect a JARM-secured JWT response from an IdP, it enforces this requirement by failing the transaction if a plain response is received instead, and logs the details for administrator investigation.</p>
</div>
</div>
<div class="sect3">
<h4 id="idp-adapter-duplicate-attribute-sources"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#idp-adapter-duplicate-attribute-sources"></a>IdP Adapter duplicate attribute sources</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38060</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused IdP adapters to duplicate attribute sources when an SP connection was updated using the Admin API.</p>
</div>
</div>
<div class="sect3">
<h4 id="cluster-management-message-fix"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#cluster-management-message-fix"></a>Cluster Management message fix</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38116</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where <strong class="uicontrol">Cluster Management</strong> would present an incorrect success message although the replication failed.</p>
</div>
</div>
<div class="sect3">
<h4 id="connection-id-in-invalid-signature-audit-logs"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#connection-id-in-invalid-signature-audit-logs"></a>Connection ID in Invalid Signature audit logs</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38123</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect in SAML audit logging by making sure that entries recorded for "Invalid signature" failures now correctly include the associated Connection ID.</p>
</div>
</div>
<div class="sect3">
<h4 id="adapterid-population-issue"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#adapterid-population-issue"></a><code class="codeph">$adapterId</code> population issue</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38146</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where the <code class="codeph">$adapterId</code> variable wasn’t being populated in templates accessed through direct links for the HTML Form Adapter’s <strong class="uicontrol">Change Password</strong> and <strong class="uicontrol">Forgot Password</strong> flows.</p>
</div>
</div>
<div class="sect3">
<h4 id="trace-logging-for-error-information"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#trace-logging-for-error-information"></a>Trace logging for error information</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38210</span></p>
</div>
<div class="paragraph">
<p>We’ve added trace logging to the RP-initiated logout endpoint to explicitly detail session and token claims, allowing administrators to pinpoint why the logout confirmation page isn’t bypassed despite successful <code class="codeph">id_token_hint</code> validation.</p>
</div>
</div>
<div class="sect3">
<h4 id="server-startup-validation"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#server-startup-validation"></a>Server startup validation</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38243</span></p>
</div>
<div class="paragraph">
<p>We’ve added stricter validation during server startup so that PingFederate immediately halts the boot process and logs an error if an invalid or unrecognized value is detected for the <code class="codeph">pf.hsm.mode</code> property in <code class="filepath">run.properties</code>.</p>
</div>
</div>
<div class="sect3">
<h4 id="corrected-null-saasguid"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#corrected-null-saasguid"></a>Corrected null <code class="codeph">SaasGuid</code></h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38244</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a provisioning defect where disabled users weren’t provisioned once their account was enabled and the <strong class="uicontrol">Provision Disabled Users</strong> setting was set to false.</p>
</div>
</div>
<div class="sect3">
<h4 id="x-forward-for-ip"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#x-forward-for-ip"></a><code class="codeph">X-Forward-For</code> IP</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38251</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where the <code class="codeph">X-Forward-For</code> IP wasn’t logged correctly in the <code class="codeph">admin.log</code>.</p>
</div>
</div>
<div class="sect3">
<h4 id="tapestry-startup-error"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#tapestry-startup-error"></a>Tapestry startup error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38284</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a Tapestry error that was incorrectly logged during startup for the SCIM 2.0 Inbound Provisioning component, even when the feature wasn’t enabled or configured.</p>
</div>
</div>
<div class="sect3">
<h4 id="kerberos-adapter-redirect-url"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#kerberos-adapter-redirect-url"></a>Kerberos Adapter redirect URL</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38328</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where the Kerberos Adapter failed to authenticate when a context path is configured.</p>
</div>
</div>
<div class="sect3">
<h4 id="administrative-api-authentication-fix"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#administrative-api-authentication-fix"></a>Administrative API authentication fix</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38393</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that allowed Basic Authentication to access the Administrative API, even when it was disabled in the <code class="codeph">pf.admin.api.authentication</code> property.</p>
</div>
</div>
<div class="sect3">
<h4 id="oauth-error-code-fix"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oauth-error-code-fix"></a>OAuth error code fix</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38468</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where the <code class="codeph">/as/introspect.oauth2</code> endpoint incorrectly returned a <code class="codeph">500 Internal Server Error</code> instead of the expected <code class="codeph">400 Bad Request</code> when the <code class="parmname">token</code> parameter contained an invalid character like <code class="codeph">%</code>.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="known-issues-and-limitations"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#known-issues-and-limitations"></a>Known issues and limitations</h3>
<div class="sect3">
<h4 id="pingone-verify-ik-unexpected-error"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingone-verify-ik-unexpected-error"></a>PingOne Verify IK unexpected error</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span>
<span class="ping_ticket">PF-36573</span></p>
</div>
<div class="paragraph">
<p>PingFederate returns an unexpected error when you create an instance of the PingOne Verify Integration Kit version 2.2.2 in PingFederate with the Verify feature in PingOne disabled.</p>
</div>
</div>
<div class="sect3">
<h4 id="third-party-cookie-blocking-affecting-single-logout"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#third-party-cookie-blocking-affecting-single-logout"></a>Third-party cookie blocking affecting single logout</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span>
<span class="ping_ticket">PF-35772</span></p>
</div>
<div class="paragraph">
<p>Due to multiple vendors' recent browser versions that block third-party cookies, you might experience issues related to single logout with OIDC (via Front-Channel) and WS-Federation.</p>
</div>
<div class="paragraph">
<p>Refer to browsers' documentation regarding third-party cookie management to unblock them, if feasible.</p>
</div>
</div>
<div class="sect3">
<h4 id="passive-admin-console-ui-refresh"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#passive-admin-console-ui-refresh"></a>Passive admin console UI refresh</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span>
<span class="ping_ticket">PF-35643</span></p>
</div>
<div class="paragraph">
<p>When you promote a passive admin console to active, the UI doesn’t refresh until you perform an action.</p>
</div>
</div>
<div class="sect3">
<h4 id="multiple-active-admin-consoles"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#multiple-active-admin-consoles"></a>Multiple active admin consoles</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span>
<span class="ping_ticket">PF-35439</span></p>
</div>
<div class="paragraph">
<p>When you make configuration changes on the active console (especially large configuration changes like bulk imports or data archive imports), then promote a passive console to active, it can cause multiple consoles to be active at once. This can result in inconsistent configurations.</p>
</div>
<div class="paragraph">
<p>Learn how to resolve this issue in <a href="https://docs.pingidentity.com/pingfederate/server_clustering_guide/pf_resolving_multiple_active_admin_nodes.html" class="xref page">Resolving multiple active administrative nodes</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="administrative-console-and-administrative-api"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#administrative-console-and-administrative-api"></a>Administrative console and administrative API</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>Although PingFederate 11.3 and later support DPoP, a known limitation is that the following features don’t support DPoP when PingFederate is the RP:</p>
<div class="ulist">
<ul>
<li>
<p>The administrative console authentication scheme using OIDC</p>
</li>
<li>
<p>The administrative API authentication scheme using OAuth 2.0</p>
</li>
</ul>
</div>
</li>
<li>
<p>/bulk: Only resource types currently supported by the administrative API are included in the exported data. We don’t intend to introduce administrative API support to the following areas:</p>
<div class="ulist">
<ul>
<li>
<p><a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_configuring_standard_idp_discovery.html" class="xref page">SAML 2.0 IdP Discovery</a></p>
</li>
<li>
<p><a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_affiliationstasklet_affiliationmgmtstate.html" class="xref page">SAML 2.0 SP Affiliation</a></p>
</li>
<li>
<p><a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_smsprovidersettingstasklet_smsprovidersettingsstate.html" class="xref page">SMS Provider</a></p>
</li>
</ul>
</div>
</li>
<li>
<p>Previously, the administrative API did not accurately reflect a <strong class="uicontrol">Persistent Grant Max Lifetime</strong> setting of 29 days (or shorter) with the selection of the <strong class="uicontrol">Grants Do Not Timeout Due To Inactivity</strong> option. As a result, if you have configured such OAuth authorization server settings and have generated a bulk export in version 10.0 through 10.0.2, we recommend that you re-generate a new bulk export after upgrading to version 10.0.3 (or a more recent version). The newly exported data does not contain the aforementioned flaw, and you can safely import it to version 10.0.3 (or a more recent version).</p>
</li>
<li>
<p>When enabling mTLS certificate-based authentication, administrators often configure a list of acceptable client certificate issuers. When you use a browser to access the console or the administrative API documentation, PingFederate returns to the browser the list of acceptable issuers as part of the TLS handshake. If the browser’s client certificate store contains multiple client certificates, the browser often presents you only the certificates whose issuer matches one of the acceptable issuers. However, when PingFederate runs in a Java 17 environment, Chrome presents you all its configured client certificates, regardless of whether the issuer matches one of the acceptable issuers or not.</p>
</li>
<li>
<p>When using mTLS authentication to authenticate to an LDAP server for administrative console or administrative API access, PingFederate doesn’t support using a Microsoft Active Directory server.</p>
</li>
<li>
<p>Prior to toggling the status of a connection with the administrative API, you must ensure that any expired certificates or no longer available attributes are replaced with valid certificates or attributes; otherwise, the update request fails.</p>
</li>
<li>
<p>When creating or updating a child instance of a hierarchical plugin, the administrative API retains objects with an <code class="codeph">"inherited": false</code> name/value pair (or without such name/value pair altogether), ignores those with a value of <code class="codeph">true</code>, and returns a 200 HTTP status code. No error messages are returned for the ignored objects.</p>
</li>
<li>
<p>Using the browser’s navigation mechanisms (for example, the <strong class="uicontrol">Back</strong> button) causes inconsistent behavior in the administrative console. Use the navigation buttons provided at the bottom of windows in the PingFederate console.</p>
</li>
<li>
<p>Using the PingFederate console in multiple tabs on one browser might cause inconsistent behavior which could corrupt its configuration.</p>
</li>
<li>
<p>If authenticated to the PingFederate administrative console using certificate authentication, a session that has timed out might not appear to behave as expected. Normally (when using password authentication), when a session has timed out and a user attempts some action in the console, the browser is redirected to the sign-on page, and then back to the administrative console after authentication is complete. Similar behavior applies for certificate authentication, in principle. However, because the browser might automatically resubmit the certificate for authentication, the browser might redirect to the administrative console and not the sign on page.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="tls-cipher-suite-customization"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#tls-cipher-suite-customization"></a>TLS cipher suite customization</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>PingFederate’s TLS cipher suites can be customized by modifying <code class="filepath">com.pingidentity.crypto.SunJCEManager.xml</code> (or a similarly-named file if BCFIPS or an HSM is configured). After updating the file and replicating, all cluster nodes must be restarted for the change to take effect.</p>
</div>
</div>
<div class="sect3">
<h4 id="java"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#java"></a>Java</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>Updating Java version 8 to version 11 results in an error when PingFederate is already installed and running on Windows. To work around this issue, uninstall and reinstall the PingFederate Windows service by running the <code class="filepath">UninstallPingFederateService.bat</code> and <code class="filepath">InstallPingFederateService.bat</code> files located in <code class="filepath"><em class="varname">&lt;pf_install&gt;</em>/pingfederate/sbin/wrapper</code>.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="HSMs"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#HSMs"></a>HSMs</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>AWS CloudHSM</p>
</div>
<div class="ulist">
<ul>
<li>
<p>It is not possible to use an elliptic curve (EC) certificate as an SSL server certificate.</p>
</li>
<li>
<p>When creating an EC certificate with a <code class="codeph">signatureAlgorithm</code> smaller than the <code class="codeph">keySize</code> value, a <code class="msgph">500 Server error</code> occurs. For example, a <code class="codeph">signatureAlgorithm</code> of <code class="codeph">SHA256withECDSA</code> with a <code class="codeph">keySize</code> of <code class="codeph">384</code> results in an error. Learn more in <a href="https://docs.aws.amazon.com/cloudhsm/latest/userguide/ki-all.html?utm_source=chatgpt.com#ki-all-12" target="_blank" rel="noopener">ECDSA signing fails with "invalid mechanism" error starting with SDK 5.16</a> in the CloudHSM documentation.</p>
</li>
<li>
<p>TLS 1.3 is not currently supported with Oracle JDK 17 or 21.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Thales HSMs</p>
</div>
<div class="ulist">
<ul>
<li>
<p>JWT token decryption using ECDH-ES may fail. This issue only arises if PingFederate is configured with static OAuth and OpenID Connect keys, a static key is stored on the HSM, and PingFederate is consuming a token encrypted with this key.</p>
</li>
<li>
<p>It is not possible to use an EC certificate as an SSL server certificate.</p>
</li>
<li>
<p>TLS 1.3 isn’t currently supported with Oracle JDK 17.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Entrust HSMs</p>
</div>
<div class="ulist">
<ul>
<li>
<p>JWT token decryption using ECDH-ES may fail. This issue only arises if PingFederate is configured with static OAuth and OpenID Connect keys, a static key is stored on the HSM, and PingFederate is consuming a token encrypted with this key.</p>
</li>
<li>
<p>It is not possible to import a PKCS12- or PEM-formatted EC certificate.</p>
</li>
<li>
<p>It is not possible to use an EC certificate as an SSL server certificate.</p>
</li>
<li>
<p>TLS 1.3 isn’t currently supported with Oracle JDK 17.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="sso-and-slo"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#sso-and-slo"></a>SSO and SLO</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>When consuming SAML metadata, PingFederate does not report an error when neither the <code class="parmname">validUntil</code> nor the <code class="parmname">cacheDuration</code> attribute is included in the metadata. Note that PingFederate does reject expired SAML metadata as indicated by the <code class="parmname">validUntil</code> attribute value, if it is provided.</p>
</li>
<li>
<p>The anchored-certificate trust model cannot be used with the single logout (SLO) redirect binding because the certificate cannot be included with the logout request.</p>
</li>
<li>
<p>If an IdP connection is configured for multiple virtual server IDs, PingFederate will always use the default virtual server ID for IdP Discovery during an SP-initiated SSO event.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="composite-adapter-configuration"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#composite-adapter-configuration"></a>Composite Adapter configuration</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>SLO is not supported when users are authenticated through a Composite Adapter instance that contains another instance of the Composite Adapter.</p>
</div>
</div>
<div class="sect3">
<h4 id="self-service-password-reset"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#self-service-password-reset"></a>Self-service password reset</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>Passwords can be reset for Microsoft Active Directory user accounts without the permission to change password.</p>
</div>
</div>
<div class="sect3">
<h4 id="oauth"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oauth"></a>OAuth</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>PingFederate does not support a case-sensitive naming convention for OAuth client ID values when client records are stored in a directory server. For example, after creating a client with an ID value of <code class="codeph">sampleClient</code>, PingFederate does not allow the creation of another client with an ID value of <code class="codeph">SampleClient</code>.</p>
</div>
<div class="paragraph">
<p>Although it’s possible to create clients using the same ID values with different casings when client records are stored in XML files, a database server, or custom storage, we recommend not doing so to avoid potential record migration issues.</p>
</div>
</div>
<div class="sect3">
<h4 id="customer-identity-and-access-management"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#customer-identity-and-access-management"></a>Customer identity and access management</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>Some browsers display a date-picker user interface for fields that have been designed for date-specific inputs. Some browsers do not. If one or more date-specific fields are defined on the registration page or the profile management page (or both), end users must enter the dates manually if their browsers do not display a date-picker user interface for those fields.</p>
</div>
</div>
<div class="sect3">
<h4 id="provisioning"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#provisioning"></a>Provisioning</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>LDAP referrals return an error and cause provisioning to fail if the <code class="parmname">user</code> or <code class="parmname">group</code> objects are defined at the DC level, and not within an OU or within the Users CN.</p>
</li>
<li>
<p>The <code class="parmname">totalResults</code> value in SCIM responses indicates the number of results returned in the current response, not the total number of estimated results on the LDAP server.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="logging"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#logging"></a>Logging</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>If a source attribute has been configured for masking in an IdP adapter or IdP connection and the source attribute is mapped to OAuth’s persistent grant <code class="parmname">USER_KEY</code> attribute, the <code class="parmname">USER_KEY</code> attribute will not be masked in the server logs. Other persistent grant attributes will be masked.</p>
</li>
<li>
<p>Even if a source attribute has been configured for masking in an IdP adapter and the source attribute is mapped as the adapter’s unique user key, the user key attribute is not masked in the server or audit logs.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="database-logging"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#database-logging"></a>Database logging</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>If a source attribute has been configured for masking in an IdP adapter or IdP connection and the source attribute is mapped to OAuth’s persistent grant <code class="parmname">USER_KEY</code> attribute, the <code class="parmname">USER_KEY</code> attribute will not be masked in the server logs. Other persistent grant attributes will be masked.</p>
</li>
<li>
<p>Even if a source attribute has been configured for masking in an IdP adapter and the source attribute is mapped as the adapter’s unique user key, the user key attribute is not masked in the server or audit logs.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="radius-nas-ip-address"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#radius-nas-ip-address"></a>RADIUS NAS-IP-Address</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>The RADIUS NAS-IP-Address is only included in Access-Request packets when the <code class="codeph">pf.bind.engine.address</code> is set with an IPv4 address. IPv6 is not supported.</p>
</div>
</div>
<div class="sect3">
<h4 id="amazon-sns-notification-publisher"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#amazon-sns-notification-publisher"></a>Amazon SNS Notification Publisher</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>When deploying PingFederate with a forward proxy, plugins based on the AWS SDK, such as the Amazon SNS Notification Publisher, will only honor the <code class="codeph">http.proxyHost</code>, <code class="codeph">http.proxyPort</code>, <code class="codeph">http.proxyUser</code>, and <code class="codeph">http.proxyPassword</code> properties in <code class="filepath">run.properties</code>. The plugin will rely on these properties even if the service URL is <code class="codeph">https</code>.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="deprecated-features"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#deprecated-features"></a>Deprecated features</h3>
<div class="paragraph">
<p>No features were deprecated for PingFederate 13.0.</p>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 12.3.6 (April 2026)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-3-6-april-2026</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-3-6-april-2026</guid>
            <pubDate>Fri, 24 Apr 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="new-features-enhancements"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#new-features-enhancements"></a>New features &amp; enhancements</h3>
<div class="sect3">
<h4 id="unconnected-cluster-node-startup"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#unconnected-cluster-node-startup"></a>Unconnected cluster node startup</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span>
<span class="ping_ticket">PF-38898</span></p>
</div>
<div class="paragraph">
<p>We added the <code class="parmname">force.require.replication.data.on.startup</code> parameter to the <code class="filepath">cluster-config-replication.conf</code> file.</p>
</div>
<div class="paragraph">
<p>This parameter lets you prevent an engine node from starting up without establishing a connection to the cluster.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_cluster_management.html" class="xref page">Cluster management</a>.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="resolved-issues-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-4"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="ognl-code-test-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#ognl-code-test-2"></a>OGNL code test</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-38742</span></p>
</div>
<div class="paragraph">
<p>We improved role-based access control (RBAC) for the administrative expression testing endpoint. Access to expression evaluation is now limited to appropriately privileged roles, ensuring alignment with intended administrative permissions.</p>
</div>
</div>
<div class="sect3">
<h4 id="ciba-token-request-fails-with-ldap-persistent-grant-storage-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#ciba-token-request-fails-with-ldap-persistent-grant-storage-2"></a>CIBA token request fails with LDAP persistent grant storage</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38706</span></p>
</div>
<div class="paragraph">
<p>We fixed a defect that caused CIBA token requests to fail when persistent grants are stored in an LDAP directory such as PingDirectory.</p>
</div>
</div>
<div class="sect3">
<h4 id="admin-api-oauth-authentication-failure-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#admin-api-oauth-authentication-failure-2"></a>Admin API OAuth authentication failure</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38722</span></p>
</div>
<div class="paragraph">
<p>We fixed a defect that caused OAuth and JWT authentication through the Admin API to fail when the <code class="parmname">role attribute name</code> parameter used the scope claim containing space-delimited values.</p>
</div>
</div>
<div class="sect3">
<h4 id="multiple-sign-on-delay-routing"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#multiple-sign-on-delay-routing"></a>Multiple Sign-On Delay routing</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38801</span></p>
</div>
<div class="paragraph">
<p>We fixed a defect that caused PingFederate to route users to the base URL for the Multiple Sign-On Delay page when they should’ve been routed to the virtual host URL.</p>
</div>
</div>
<div class="sect3">
<h4 id="custom-authentication-selector-error"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#custom-authentication-selector-error"></a>Custom Authentication Selector error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38875</span></p>
</div>
<div class="paragraph">
<p>We fixed a defect that prevented viewing or editing certain custom Authentication Selectors in the admin console.</p>
</div>
</div>
<div class="sect3">
<h4 id="dynamic-jwks-rotation-timer"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#dynamic-jwks-rotation-timer"></a>Dynamic JWKS rotation timer</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38903</span></p>
</div>
<div class="paragraph">
<p>We fixed a defect that prevented dynamic JWKS rotation timing from resetting after a node joined a cluster.</p>
</div>
</div>
<div class="sect3">
<h4 id="url-validation-for-targetresource"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#url-validation-for-targetresource"></a>URL validation for <code class="parmname">TargetResource</code></h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38907</span></p>
</div>
<div class="paragraph">
<p>We fixed a defect where PingFederate rejected valid <code class="parmname">TargetResource</code> values.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 12.3.5 (February 2026)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-3-5-february-2026</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-3-5-february-2026</guid>
            <pubDate>Fri, 20 Feb 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="new-features-and-enhancements-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#new-features-and-enhancements-3"></a>New features and enhancements</h3>
<div class="sect3">
<h4 id="par-parameters-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#par-parameters-2"></a>PAR parameters</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_ticket">PF-38526</span></p>
</div>
<div class="paragraph">
<p>We’ve added a new configuration option to limit the Pushed Authorization Request (PAR) to the parameters mentioned in the specification when the connection is configured to use JWT-secured Authorization Request (JAR).</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="resolved-issues-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-5"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="user-enumeration-in-policy-password-reset-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#user-enumeration-in-policy-password-reset-2"></a>User Enumeration in Policy Password Reset</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-38628</span></p>
</div>
<div class="paragraph">
<p>PingFederate now prevents user enumeration in the <strong class="uicontrol">Policy</strong> mode <strong class="uicontrol">Password Reset</strong> flow by eliminating the observable difference between valid and invalid usernames.</p>
</div>
</div>
<div class="sect3">
<h4 id="serialized-ognl-java-objects-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#serialized-ognl-java-objects-2"></a>Serialized OGNL Java objects</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37405</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused JSON objects using OGNL expressions included in JWT request objects sent to the OIDC provider in OIDC IdP connections not to be serialized properly.</p>
</div>
</div>
<div class="sect3">
<h4 id="kerberos-realm-validation-error-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#kerberos-realm-validation-error-2"></a>Kerberos realm validation error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38585</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that prevented PingFederate from creating, updating, or testing Kerberos realms when the <code class="parmname">AutoGenerateKrb5Conf</code> parameter was set to <code class="option">false</code> in the <code class="filepath">com.pingidentity.common.util.KerberosConfigUtil</code> file.</p>
</div>
</div>
<div class="sect3">
<h4 id="authentication-policy-error-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#authentication-policy-error-2"></a>Authentication policy error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38623</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused an error when authentication policies with a Requested AuthN Context Authentication had <strong class="uicontrol">Add or Update AuthN Context Attribute</strong> enabled.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 12.3.4 (December 2025)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-3-4-december-2025</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-3-4-december-2025</guid>
            <pubDate>Thu, 18 Dec 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-6"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-6"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="url-validation-for-relaystate-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#url-validation-for-relaystate-2"></a>URL validation for <code class="codeph">RelayState</code></h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38028</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where PingFederate would reject requests with valid, non-encoded relay state values.</p>
</div>
</div>
<div class="sect3">
<h4 id="ldap-account-lockout-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#ldap-account-lockout-2"></a>LDAP account lockout</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38043</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where PingFederate could incorrectly lock user accounts during an LDAP connectivity failure with Active Directory. This applies to all LDAP datastore types except for Generic LDAP.</p>
</div>
</div>
<div class="sect3">
<h4 id="cluster-management-message-fix-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#cluster-management-message-fix-2"></a>Cluster Management message fix</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38116</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where <strong class="uicontrol">Cluster Management</strong> would present an incorrect success message although the replication failed.</p>
</div>
</div>
<div class="sect3">
<h4 id="adapterid-population-issue-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#adapterid-population-issue-2"></a><code class="codeph">$adapterId</code> population issue</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38146</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where the <code class="codeph">$adapterId</code> variable wasn’t being populated in templates accessed through direct links for the HTML Form Adapter’s <strong class="uicontrol">Change Password</strong> and <strong class="uicontrol">Forgot Password</strong> flows.</p>
</div>
</div>
<div class="sect3">
<h4 id="corrected-null-saasguid-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#corrected-null-saasguid-2"></a>Corrected null <code class="codeph">SaasGuid</code></h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38244</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a provisioning defect where disabled users weren’t provisioned after their account was enabled and the <strong class="uicontrol">Provision Disabled Users</strong> setting was set to false.</p>
</div>
</div>
<div class="sect3">
<h4 id="x-forward-for-ip-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#x-forward-for-ip-2"></a><code class="codeph">X-Forward-For</code> IP</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38251</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where the <code class="codeph">X-Forward-For</code> IP wasn’t logged correctly in the <code class="codeph">admin.log</code>.</p>
</div>
</div>
<div class="sect3">
<h4 id="kerberos-adapter-redirect-url-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#kerberos-adapter-redirect-url-2"></a>Kerberos Adapter redirect URL</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38328</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where the Kerberos Adapter failed to authenticate when a context path is configured.</p>
</div>
</div>
<div class="sect3">
<h4 id="jwt-admin-ai-authentication-misconfiguration"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#jwt-admin-ai-authentication-misconfiguration"></a>JWT Admin AI authentication misconfiguration</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38336</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused PingFederate to crash or shut down when attempting to access the Admin API with a misconfigured <span class="fr-alt fr-glossentry" title="<div class=&quot;paragraph&quot;>
<p>An IETF standard container format for a JSON object used for the secure exchange of content, such as identity or entitlement information. You can find the industry standard in <a href=&quot;https://datatracker.ietf.org/doc/html/rfc7519&quot;>RFC 7519</a>.</p>
</div>">JSON Web Token (JWT)</span> authentication setup.</p>
</div>
</div>
<div class="sect3">
<h4 id="administrative-api-authentication-fix-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#administrative-api-authentication-fix-2"></a>Administrative API authentication fix</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38393</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that allowed Basic Authentication to access the Administrative API, even when it was disabled in the <code class="codeph">pf.admin.api.authentication</code> property.</p>
</div>
</div>
<div class="sect3">
<h4 id="pi-flow-response_mode-fix-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pi-flow-response_mode-fix-2"></a><code class="codeph">pi.flow</code> <code class="codeph">response_mode</code> fix</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38417</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where setting <code class="codeph">response_mode</code> to <code class="codeph">pi.flow</code> in Pushed Authorization Requests (PAR) or standard request objects resulted in an <code class="codeph">INVALID_REQUEST</code> error.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 12.3.3 (October 2025)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-3-3-october-2025</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-3-3-october-2025</guid>
            <pubDate>Wed, 08 Oct 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-7"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-7"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="tls-1-3-support-for-oracle-java-21-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#tls-1-3-support-for-oracle-java-21-2"></a>TLS 1.3 support for Oracle Java 21</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_ticket">PF-37849</span></p>
</div>
<div class="paragraph">
<p>We’ve added support for TLS 1.3 for Oracle Java 21 with Thales and Entrust HSMs.</p>
</div>
</div>
<div class="sect3">
<h4 id="forgot-password-flow-failure-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#forgot-password-flow-failure-2"></a>Forgot password flow failure</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37918</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused the forgot password flow to fail when reCAPTCHA is enabled and the flow is initiated using the Enter key rather than a mouse click.</p>
</div>
</div>
<div class="sect3">
<h4 id="virtual-hostname-accuracy-in-email-notifications-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#virtual-hostname-accuracy-in-email-notifications-2"></a>Virtual hostname accuracy in email notifications</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37964</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where a template variable incorrectly used the primary PingFederate base URL instead of the virtual host name in some email notifications.</p>
</div>
</div>
<div class="sect3">
<h4 id="new-device-speed-bump-parameter-default-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#new-device-speed-bump-parameter-default-2"></a>New device speed bump parameter default</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38040</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where the <code class="parmname">show-speed-bump-for-new-devices</code> parameter in the <code class="filepath">org.sourceid.servlet.filter.SimultaneousAuthnRequestCheckingFilter.xml</code> file was set to <code class="option">true</code> instead of <code class="option">false</code> by default.</p>
</div>
<div class="paragraph">
<p>The new behavior enables <code class="parmname">show-speed-bump-for-new-devices</code> by default for new installs, but disables it by default for upgrades, if the source version doesn’t have the parameter configured.</p>
</div>
</div>
<div class="sect3">
<h4 id="idp-adapter-duplicate-attribute-sources-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#idp-adapter-duplicate-attribute-sources-2"></a>IdP Adapter duplicate attribute sources</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38060</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused IdP adapters to duplicate attribute sources when an SP connection was updated using the Admin API.</p>
</div>
</div>
<div class="sect3">
<h4 id="html-flow-login-and-authentication-api-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#html-flow-login-and-authentication-api-2"></a>HTML flow login and Authentication API</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38039</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that could potentially allow a user to access an HTML browser sign-on page when the Authentication API redirectless mode is used.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://support.pingidentity.com/s/article/PingFederate-unexpected-template-rendering-in-redirectless-mode" target="_blank" rel="noopener">PingFederate unexpected template rendering in redirectless mode</a> in the Ping Identity Support Knowledge Base.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="known-issues-and-limitations-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#known-issues-and-limitations-2"></a>Known issues and limitations</h3>
<div class="sect3">
<h4 id="hsms"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#hsms"></a>HSMs</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>AWS CloudHSM</p>
</div>
<div class="ulist">
<ul>
<li>
<p>It is not possible to use an elliptic curve (EC) certificate as an SSL server certificate.</p>
</li>
<li>
<p>When creating an EC certificate with a <code class="codeph">signatureAlgorithm</code> smaller than the <code class="codeph">keySize</code> value, a <code class="msgph">500 Server error</code> occurs. For example, a <code class="codeph">signatureAlgorithm</code> of <code class="codeph">SHA256withECDSA</code> with a <code class="codeph">keySize</code> of <code class="codeph">384</code> results in an error. Learn more in <a href="https://docs.aws.amazon.com/cloudhsm/latest/userguide/ki-all.html?utm_source=chatgpt.com#ki-all-12" target="_blank" rel="noopener">ECDSA signing fails with "invalid mechanism" error starting with SDK 5.16</a> in the CloudHSM documentation.</p>
</li>
<li>
<p>TLS 1.3 is not currently supported with Oracle JDK 11, 17, or 21.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Thales HSMs</p>
</div>
<div class="ulist">
<ul>
<li>
<p>JWT token decryption using ECDH-ES may fail. This issue only arises if PingFederate is configured with static OAuth and OpenID Connect keys, a static key is stored on the HSM, and PingFederate is consuming a token encrypted with this key.</p>
</li>
<li>
<p>It is not possible to use an EC certificate as an SSL server certificate.</p>
</li>
<li>
<p>TLS 1.3 isn’t currently supported with Oracle JDK 11 or 17.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Entrust HSMs</p>
</div>
<div class="ulist">
<ul>
<li>
<p>JWT token decryption using ECDH-ES may fail. This issue only arises if PingFederate is configured with static OAuth and OpenID Connect keys, a static key is stored on the HSM, and PingFederate is consuming a token encrypted with this key.</p>
</li>
<li>
<p>It is not possible to import a PKCS12- or PEM-formatted EC certificate.</p>
</li>
<li>
<p>It is not possible to use an EC certificate as an SSL server certificate.</p>
</li>
<li>
<p>TLS 1.3 isn’t currently supported with Oracle JDK 11 or 17.</p>
</li>
</ul>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 12.3.2 (September 2025)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-3-2-september-2025</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-3-2-september-2025</guid>
            <pubDate>Thu, 28 Aug 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="new-features-and-enhancements-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#new-features-and-enhancements-4"></a>New features and enhancements</h3>
<div class="sect3">
<h4 id="jetty-library-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#jetty-library-2"></a>Jetty library</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">info</span>
<span class="ping_ticket">PF-37936</span></p>
</div>
<div class="paragraph">
<p>We’ve upgraded the Jetty library to version 10.0.26</p>
</div>
</div>
<div class="sect3">
<h4 id="bouncy-castle-fips-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#bouncy-castle-fips-2"></a>Bouncy Castle FIPS</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">info</span>
<span class="ping_ticket">PF-37943</span></p>
</div>
<div class="paragraph">
<p>We’ve upgraded Bouncy Castle to version 2.0.1. This version is certified to operate in Federal Information Processing Standards (FIPS) mode 140-3.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="resolved-issues-8"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-8"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="aws-cloudhsm-certificate-linking-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#aws-cloudhsm-certificate-linking-2"></a>AWS CloudHSM certificate linking</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37156</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused failed AWS CloudHSM certificate linking to appear to succeed when the key alias was a value that was previously used in the environment.</p>
</div>
</div>
<div class="sect3">
<h4 id="authorization_details-access-token-inclusion-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#authorization_details-access-token-inclusion-2"></a><code class="codeph">authorization_details</code> access token inclusion</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37743</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that omitted the <code class="codeph">authorization_details</code> parameter from the access token if the value was an empty array.</p>
</div>
</div>
<div class="sect3">
<h4 id="overly-detailed-kerberos-error-messages-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#overly-detailed-kerberos-error-messages-2"></a>Overly detailed Kerberos error messages</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37798</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused lengthy stacktrace data to be included in ERROR level logging for Kerberos errors.</p>
</div>
</div>
<div class="sect3">
<h4 id="pingfailoverappender-race-condition-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfailoverappender-race-condition-2"></a><code class="codeph">PingFailoverAppender</code> race condition</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37816</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where a race condition could cause the <code class="codeph">PingFailoverAppender</code> to get stuck in a failed state without switching back to its primary appender.</p>
</div>
</div>
<div class="sect3">
<h4 id="admin-console-classnotfoundexception-error"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#admin-console-classnotfoundexception-error"></a>Admin console ClassNotFoundException error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37819</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that could cause <code class="msgph">ClassNotFoundException</code> errors in the admin console.</p>
</div>
</div>
<div class="sect3">
<h4 id="jwt-api-authentication-method-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#jwt-api-authentication-method-2"></a>JWT API authentication method</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37841</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where JWT wasn’t a valid authentication method for the admin AP during upgrade utility validation.</p>
</div>
</div>
<div class="sect3">
<h4 id="unused-devops-file-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#unused-devops-file-2"></a>Unused DevOps file</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37846</span></p>
</div>
<div class="paragraph">
<p>We’ve removed an unused file associated with the PingOne Advanced Identity Cloud DevOps deployment that was mistakenly included in the PingFederate Server <code class="filepath">.zip</code> archive.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 12.3.1 (August 2025)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-3-1-august-2025</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-3-1-august-2025</guid>
            <pubDate>Wed, 30 Jul 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="new-features-and-enhancements-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#new-features-and-enhancements-5"></a>New features and enhancements</h3>
<div class="sect3">
<h4 id="apache-version-upgrade"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#apache-version-upgrade"></a>Apache version upgrade</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-37674</span></p>
</div>
<div class="paragraph">
<p>We’ve upgraded the Apache <code class="codeph">commons-fileupload</code> version to 1.6.0.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="resolved-issues-9"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-9"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="admin-console-ip-exposure-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#admin-console-ip-exposure-2"></a>Admin console IP exposure</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-33113</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a security vulnerability that could have allowed malicious parties to extract the PingFederate administrative console’s IP address through HTTP Response headers.</p>
</div>
</div>
<div class="sect3">
<h4 id="host-header-redirect-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#host-header-redirect-2"></a>Host header redirect</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-37460</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a security vulnerability that could have allowed malicious parties to redirect PingFederate admin console traffic using a spoofed Host header.</p>
</div>
</div>
<div class="sect3">
<h4 id="pingdirectory-pcv-error-messaging"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingdirectory-pcv-error-messaging"></a>PingDirectory PCV error messaging</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37452</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where disabling <code class="codeph">PingDirectory Detailed Password Policy Requirement Messaging</code> caused password validation errors to not show up in the Authn API.</p>
</div>
</div>
<div class="sect3">
<h4 id="firefox-kerberos-negotiation"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#firefox-kerberos-negotiation"></a>Firefox Kerberos negotiation</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37559</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused Kerberos negotiations to fail with Firefox after the initial exchange.</p>
</div>
</div>
<div class="sect3">
<h4 id="csd-error-in-bcfips-mode"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#csd-error-in-bcfips-mode"></a>CSD error in BCFIPS mode</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37667</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused an error in the CSD when running in BCFIPS mode.</p>
</div>
</div>
<div class="sect3">
<h4 id="idp-connection-admin-api-error"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#idp-connection-admin-api-error"></a>IdP connection Admin API error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37670</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused a failure when creating or updating an IdP connection with the <code class="codeph">CLAIMS</code> source type in JIT provisioning user attribute mapping using the Administrative API.</p>
</div>
</div>
<div class="sect3">
<h4 id="admin-console-and-api-alignment"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#admin-console-and-api-alignment"></a>Admin console and API alignment</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37673</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where the Admin Console allowed configuring an IdP connection without a client secret, but the Admin API returned an error. The Admin API no longer returns an error in this case.</p>
</div>
</div>
<div class="sect3">
<h4 id="jarm-response-with-error-parameter-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#jarm-response-with-error-parameter-2"></a>JARM response with <code class="parmname">error</code> parameter</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37688</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where JARM responses with an <code class="parmname">error</code> parameter caused PingFederate to return a <code class="codeph">500</code> error. It now returns a <code class="codeph">200</code> response with the appropriate error page.</p>
</div>
</div>
<div class="sect3">
<h4 id="atm-configuration-error-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#atm-configuration-error-2"></a>ATM configuration error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37716</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused an error in PingFederate when configuring an access token manager if the administrative node (ATM) isn’t the coordinator node.</p>
</div>
</div>
<div class="sect3">
<h4 id="write-users-attributes-causing-validation-failures"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#write-users-attributes-causing-validation-failures"></a>Write Users attributes causing validation failures</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37776</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where certain SCIM attribute mappings were incorrectly causing validation failures when updating IdP connections through the Admin API.</p>
</div>
</div>
<div class="sect3">
<h4 id="sni-extension-error-in-bcfips-mode-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#sni-extension-error-in-bcfips-mode-2"></a>SNI extension error in BCFIPS mode</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37793</span></p>
</div>
<div class="paragraph">
<p>PingFederate now always includes the SNI extension in the ClientHello message during a TLS handshake when running in BCFIPS mode.</p>
</div>
</div>
<div class="sect3">
<h4 id="wildcard-tls-certificate-error-in-bcfips-mode-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#wildcard-tls-certificate-error-in-bcfips-mode-2"></a>Wildcard TLS certificate error in BCFIPS mode</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37794</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where PingFederate was refusing wildcard TLS certificates when running in BCFIPS mode.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 12.3 (June 2025)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-3-june-2025</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-3-june-2025</guid>
            <pubDate>Tue, 10 Jun 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="new-features-and-enhancements-6"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#new-features-and-enhancements-6"></a>New features and enhancements</h3>
<div class="sect3">
<h4 id="audit-log-failure-behavior"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#audit-log-failure-behavior"></a>Audit log failure behavior</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-36795</span>
<span class="ping_ticket">PF-36817</span></p>
</div>
<div class="paragraph">
<p>We’ve added a feature that allows you to configure how PingFederate responds when writing to the audit log fails.</p>
</div>
<div class="paragraph">
<p>This feature can improve user experience by allowing PingFederate to continue processing transactions when logging fails.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_configuring_audit_log_failure_settings.html" class="xref page">Configuring audit log failure settings</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="remove-ip-address-from-account-lockout-criteria"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#remove-ip-address-from-account-lockout-criteria"></a>Remove IP address from account lockout criteria</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-36818</span></p>
</div>
<div class="paragraph">
<p>We’ve added the ability to remove a user’s IP address from consideration when making account lockout decisions.</p>
</div>
<div class="paragraph">
<p>This can improve security by preventing malicious actors from masking their IP address to bypass account lockouts.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_config_account_lockout_protect.html" class="xref page">Configuring account lockout protection</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="cors-support-for-admin-api-endpoints"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#cors-support-for-admin-api-endpoints"></a>CORS support for admin API endpoints</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-36856</span></p>
</div>
<div class="paragraph">
<p>We’ve added a feature that allows you to grant <span class="fr-alt fr-glossentry" title="<div class=&quot;paragraph&quot;>
<p>A mechanism to allow restricted resources, such as images and scripts, on a web page to be requested from a domain outside of the domain from which the first resource was served.</p>
</div>">cross-origin resource sharing (CORS)</span> access to administrative API endpoints.</p>
</div>
<div class="paragraph">
<p>This makes it more secure and convenient for web applications like PingAccess to perform administrative tasks in PingFederate.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_configuring_administrative_api_cors.html" class="xref page">Configuring administrative API CORS settings</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="validate-oidc-id-tokens"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#validate-oidc-id-tokens"></a>Validate OIDC ID tokens</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-36860</span></p>
</div>
<div class="paragraph">
<p>We’ve added the ability to validate an ID token in the introspection endpoint as part of an <span class="fr-alt fr-glossentry" title="<div class=&quot;paragraph&quot;>
<p>An authentication protocol built on top of OAuth that authenticates users and enables clients (relying parties) of all types to request and receive information about authenticated sessions and users. OIDC is extensible, allowing clients to use optional features such as encryption of identity data, discovery of OpenID Providers (OAuth authorization servers), and session management.</p>
</div>">OpenID Connect (OIDC)</span> policy. You can enable this feature as part of a policy, but the runtime flows occur at the introspection endpoint.</p>
</div>
<div class="paragraph">
<p>This improves security by allowing PingFederate to determine whether a user’s ID token is valid.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_policymanagementtasklet_policymanagementstate.html" class="xref page">Configuring policy and ID token settings</a> and <a href="https://docs.pingidentity.com/pingfederate/developers_reference_guide/pf_introspec_endpoint.html" class="xref page">Introspection endpoint</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="always-return-scopes-in-client-credentials-response"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#always-return-scopes-in-client-credentials-response"></a>Always return scopes in client credentials response</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-36862</span></p>
</div>
<div class="paragraph">
<p>We’ve added a feature that allows you to always return the scope parameter in the response to client credential requests.</p>
</div>
<div class="paragraph">
<p>This allows you return scopes if clients require scopes that users haven’t authorized.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_returning_scopes_authorization_transactions.html" class="xref page">Returning scopes in authorization transactions</a></p>
</div>
</div>
<div class="sect3">
<h4 id="link-and-store-cloudhsm-keys"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#link-and-store-cloudhsm-keys"></a>Link and store CloudHSM keys</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-36871</span>
<span class="ping_ticket">PF-37272</span></p>
</div>
<div class="paragraph">
<p>We’ve added a feature that allows you to link private keys stored in <span class="fr-alt fr-glossentry" title="<div class=&quot;paragraph&quot;>
<p>An Amazon subsidiary providing cloud computing platforms.</p>
</div>">Amazon Web Services (AWS)</span> CloudHSM with their certificates, and store it in PingFederate’s Java keystore.</p>
</div>
<div class="paragraph">
<p>This allows you to use existing private key and certificate pairs associated with your CloudHSM instance in PingFederate.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/getting_started_with_pingfederate/pf_link_store_cloudhsm_keys.html" class="xref page">Link and store CloudHSM keys</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="correlating-log-events-with-attributes"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#correlating-log-events-with-attributes"></a>Correlating log events with attributes</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-36875</span></p>
</div>
<div class="paragraph">
<p>We’ve added the ability to correlate log events between the <code class="filepath">audit.log</code>, <code class="filepath">request.log</code>, and <code class="filepath">server.log</code> files using shared log attributes.</p>
</div>
<div class="paragraph">
<p>This can make it easier to trace the cause of runtime errors.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_correlating_log_events_attributes.html" class="xref page">Correlating log events using attributes</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="duplicate-rsa-key"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#duplicate-rsa-key"></a>Duplicate RSA key</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-36970</span></p>
</div>
<div class="paragraph">
<p>We’ve added a feature that gives you the option to include a duplicate RSA key with the RS256 algorithm. You can enable this option by setting the <code class="codeph">add-duplicate-rs256-alg-key</code> parameter in the <code class="filepath">&lt;pingfed-install&gt;/pingfederate/server/default/data/config-store/jwks-endpoint-configuration.xml</code> file to <code class="option">true</code>.</p>
</div>
</div>
<div class="sect3">
<h4 id="http-request-logging"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#http-request-logging"></a>HTTP request logging</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-36976</span></p>
</div>
<div class="paragraph">
<p>We’ve updated the logging for HTTP requests to the runtime engine and admin console. These requests are now logged to the <code class="filepath">runtime-request.log</code> and <code class="filepath">admin-request.log</code> files. Like other PingFederate logs, you can configure outputs for these files in <code class="filepath">log4j2.xml</code>.</p>
</div>
<div class="paragraph">
<p>This improves logging efficiency and customization by writing HTTP request logs using the same configurations as other PingFederate log files.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_http_request_loggin.html" class="xref page">HTTP request logging</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="revoke-previous-client-secrets"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#revoke-previous-client-secrets"></a>Revoke previous client secrets</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-37183</span></p>
</div>
<div class="paragraph">
<p>We’ve added a feature that allows you to revoke previous OAuth client secrets.</p>
</div>
<div class="paragraph">
<p>This improves security by allowing you to revoke secrets that are no longer in use. For example, if you move your client to a new secret before the old secret’s grace period ends, you can use this feature to revoke your previous secret.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_configuring_oauth_clients.html" class="xref page">Configuring OAuth clients</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="dynamodb-persistent-grant-storage"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#dynamodb-persistent-grant-storage"></a>DynamoDB persistent grant storage</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-37192</span></p>
</div>
<div class="paragraph">
<p>When storing persistent grants in DynamoDB, DynamoDB relies on the DynamoDB Time to Live (TTL) attribute to remove expired persistent grants from the database. Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_config_external_database_for_grant_storage.html" class="xref page">Configuring external databases for grant storage</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="publish-certificate-for-dynamic-keys"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#publish-certificate-for-dynamic-keys"></a>Publish certificate for dynamic keys</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-37219</span></p>
</div>
<div class="paragraph">
<p>We’ve added a feature that allows dynamic signing keys to publish their public certificates on the JWKS endpoint as an <code class="parmname">x5c</code> parameter. Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_config_dynamic_signing_keys.html" class="xref page">Configuring dynamic signing keys</a></p>
</div>
</div>
<div class="sect3">
<h4 id="scim-2-0-supported-for-inbound-user-provisioning"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#scim-2-0-supported-for-inbound-user-provisioning"></a>SCIM 2.0 supported for inbound user provisioning</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-37230</span></p>
</div>
<div class="paragraph">
<p>PingFederate now supports the SCIM 2.0 protocol for inbound user provisioning. Learn more in <a href="https://docs.pingidentity.com/pingfederate/introduction_to_pingfederate/pf_scim.html" class="xref page">System for Cross-domain Identity Management (SCIM)</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="user-session-quotas"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#user-session-quotas"></a>User session quotas</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-37238</span></p>
</div>
<div class="paragraph">
<p>We’ve added a feature that allows you to limit the number of sessions a user can have active at one time and configure how PingFederate responds when that quota is exceeded.</p>
</div>
<div class="paragraph">
<p>This can improve security by limiting the number of active user sessions that have access to applications and other resources.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_configuring_session_quotas.html" class="xref page">Configuring session quotas</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="client_assertion-attribute-configuration"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#client_assertion-attribute-configuration"></a><code class="codeph">client_assertion</code> attribute configuration</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-37275</span></p>
</div>
<div class="paragraph">
<p>We’ve added a feature that allows you to configure the <code class="codeph">client_assertion</code> for JWT-based authentications by customizing the following attributes:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><code class="codeph">aud</code></p>
</li>
<li>
<p><code class="codeph">lifetime</code></p>
</li>
<li>
<p><code class="codeph">typ</code></p>
</li>
<li>
<p><code class="codeph">nbf</code></p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_idpprotocolsettingstasklet_openidprovidermetadatastate.html" class="xref page">Configuring OpenID Provider information</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="bouncy-castle-fips-2-0-compatibility"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#bouncy-castle-fips-2-0-compatibility"></a>Bouncy Castle FIPS 2.0 compatibility</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_ticket">PF-36846</span></p>
</div>
<div class="paragraph">
<p>We’ve upgraded Bouncy Castle to version 2.0. This versions is certified to operate in Federal Information Processing Standards (FIPS) mode 140-3.</p>
</div>
</div>
<div class="sect3">
<h4 id="java-21-compatibility"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#java-21-compatibility"></a>Java 21 compatibility</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_ticket">PF-36857</span></p>
</div>
<div class="paragraph">
<p>We’ve confirmed that PingFederate is compatible with Java 21.</p>
</div>
</div>
<div class="sect3">
<h4 id="red-hat-enterprise-linux-8-10-compatibility"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#red-hat-enterprise-linux-8-10-compatibility"></a>Red Hat Enterprise Linux 8.10 compatibility</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_ticket">PF-36972</span></p>
</div>
<div class="paragraph">
<p>We’ve confirmed that PingFederate is compatible with Red Hat Enterprise Linux ES 8.10.</p>
</div>
</div>
<div class="sect3">
<h4 id="integration-kit-template-parameters"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#integration-kit-template-parameters"></a>Integration Kit template parameters</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_ticket">PF-37102</span></p>
</div>
<div class="paragraph">
<p>We’ve updated PingFederate to use the same default template parameters for all integration kits.</p>
</div>
<div class="paragraph">
<p>Learn more about template parameters in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_custom_user_facing_pages.html" class="xref page">Customizable user-facing pages</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="authentication-policies-list-readability"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#authentication-policies-list-readability"></a>Authentication policies list readability</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_ticket">PF-37221</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>The Policies UI in the administrative console now collapses long lists of authentication sources by default. Users can easily expand or collapse these lists as needed, making it easier to navigate and manage policies.</p>
</li>
<li>
<p>We’ve added a <strong class="uicontrol">Selectors</strong> column to the Policies overview, providing a list of the selectors used in each policy.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="native_s3_ping-update"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#native_s3_ping-update"></a>NATIVE_S3_PING update</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_ticket">PF-37234</span></p>
</div>
<div class="paragraph">
<p>We’ve updated the behavior of the NATIVE_S3_PING discovery protocol when the <code class="parmname">remove_all_data_on_view_change</code> parameter is active.</p>
</div>
<div class="paragraph">
<p>Previously, the protocol would delete all files in the S3 bucket, which could lead to the creation of an unwanted subcluster.</p>
</div>
<div class="paragraph">
<p>Now the protocol deletes all files except for its own to prevent the S3 bucket from being empty.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/server_clustering_guide/pf_dynamic_cluster_discovery.html" class="xref page">Dynamic cluster discovery</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="java-service-wrapper-update"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#java-service-wrapper-update"></a>Java Service Wrapper update</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_ticket">PF-37236</span></p>
</div>
<div class="paragraph">
<p>We’ve updated the Java Service Wrapper to the latest version, 3.5.60.</p>
</div>
<div class="paragraph">
<p>Learn more in the <a href="https://wrapper.tanukisoftware.com/doc/english/release-notes.html#3.5.60" target="_blank" rel="noopener">Tanuki release notes</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="amazon-aurora-mysql-3-09-compatibility"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#amazon-aurora-mysql-3-09-compatibility"></a>Amazon Aurora MySQL 3.09 compatibility</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_ticket">PF-37277</span></p>
</div>
<div class="paragraph">
<p>We’ve confirmed that PingFederate is compatible with Amazon Aurora MySQL 3.09.</p>
</div>
</div>
<div class="sect3">
<h4 id="pingone-singapore-region"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingone-singapore-region"></a>PingOne Singapore region</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_ticket">PF-37451</span></p>
</div>
<div class="paragraph">
<p>We’ve added support for the new PingOne Singapore region, <code class="codeph">pingone.sg</code>.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="resolved-issues-10"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-10"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="d3-color-library"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#d3-color-library"></a><code class="codeph">d3-color</code> library</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-36745</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a security vulnerability that could allow denial of service attacks using legacy <code class="codeph">d3-color</code> library versions.</p>
</div>
</div>
<div class="sect3">
<h4 id="refresh-token-mysql-deadlocks"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#refresh-token-mysql-deadlocks"></a>Refresh token MySQL deadlocks</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35868</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused multiple refresh token requests in short succession to result in <span class="fr-alt fr-glossentry" title="<div class=&quot;paragraph&quot;>
<p>A Java API that allows Java programs to interact with databases.</p>
</div>">Java database connectivity (JDBC)</span> data source deadlocks and duplicated data entry into the database.</p>
</div>
<div class="paragraph">
<p>This feature can cause significant performance issues if PingFederate or the JDBC data source have insufficient resources.</p>
</div>
</div>
<div class="sect3">
<h4 id="reencrypt-data-archive-failure-with-kms"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#reencrypt-data-archive-failure-with-kms"></a>Reencrypt data archive failure with KMS</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36487</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where importing a valid configuration data archive with <strong class="uicontrol">Reencrypt Data</strong> enabled failed with a <code class="msgph">Could not reencrypt data archive</code> error message when configured to use the Amazon Web Services or Google Cloud Platform Key Management System (KMS).</p>
</div>
</div>
<div class="sect3">
<h4 id="expired-grants-reuse"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#expired-grants-reuse"></a>Expired grants reuse</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36568</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that allowed the use of OAuth grants that have passed idle timeout, but not expired, to be retrieved from persistent grant storage.</p>
</div>
</div>
<div class="sect3">
<h4 id="access-token-manager-admin-api-error"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#access-token-manager-admin-api-error"></a>Access token manager Admin API error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36845</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused a <code class="msgph">500</code> error when creating or updating an access token manager using the Administrative API.</p>
</div>
</div>
<div class="sect3">
<h4 id="refresh-token-error-when-authorization-bypass-enabled"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#refresh-token-error-when-authorization-bypass-enabled"></a>Refresh token error when authorization bypass enabled</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36851</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused PingFederate to return a revoked or expired consent error when both <strong class="uicontrol">Bypass Authorization Approval</strong> and <strong class="uicontrol">Bypass Authorization Approval for Previously Approved Consents</strong> are enabled.</p>
</div>
</div>
<div class="sect3">
<h4 id="this-is-my-device-error-on-html-form-adapter"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#this-is-my-device-error-on-html-form-adapter"></a>This is My Device error on HTML Form Adapter</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36864</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused PingFederate to behave inconsistently when <strong class="uicontrol">This is My Device</strong> is selected and an HTML Form Adapter instance has more than one session configuration in the session overrides.</p>
</div>
</div>
<div class="sect3">
<h4 id="tls-connection-in-bcfips-mode"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#tls-connection-in-bcfips-mode"></a>TLS connection in BCFIPS mode</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36865</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where PingFederate could not accept a TLS 1.2 connection in BCFIPS mode on Java 17.</p>
</div>
</div>
<div class="sect3">
<h4 id="group-membership-loss-during-provisioning"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#group-membership-loss-during-provisioning"></a>Group membership loss during provisioning</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36874</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused PingFederate to lose user group membership information when it lost contact with the datastore during provisioning operations.</p>
</div>
</div>
<div class="sect3">
<h4 id="jetty-upgrade-redirect-errors"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#jetty-upgrade-redirect-errors"></a>Jetty Upgrade redirect errors</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36877</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where upgrading to Jetty library version 9.5.53 caused HTTP header compression errors when redirect URLs included special characters.</p>
</div>
</div>
<div class="sect3">
<h4 id="change-password-failure-with-pingone-protect"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#change-password-failure-with-pingone-protect"></a>Change password failure with PingOne Protect</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37012</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused the HTML Form Adapter Change Password using an authentication policy to fail when PingOne Protect is the risk provider.</p>
</div>
</div>
<div class="sect3">
<h4 id="ognl-expressions-with-sdk-classes"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#ognl-expressions-with-sdk-classes"></a>OGNL expressions with SDK classes</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37021</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused OGNL expressions to fail to load when they contained SDK classes.</p>
</div>
</div>
<div class="sect3">
<h4 id="rp-initiated-logout-error"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#rp-initiated-logout-error"></a>RP-initiated logout error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37173</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused PingFederate to ignore the <code class="parmname">id_token_hint</code> value during <span class="fr-alt fr-glossentry" title="<div class=&quot;paragraph&quot;>
<p>An OAuth 2.0 client that requires end-user’s authenticity and claims (attributes) from an OpenID provider.</p>
</div>">relying party (RP)</span>-initiated logout when the OAuth client logout mode is set to <code class="codeph">None</code>.</p>
</div>
</div>
<div class="sect3">
<h4 id="log-rotation-policy-ignored"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#log-rotation-policy-ignored"></a>Log rotation policy ignored</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37237</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused PingFederate to ignore the log file size limit and rotation configurations set by the <code class="parmname">SizeBasedTriggeringPolicy</code> parameter.</p>
</div>
</div>
<div class="sect3">
<h4 id="secondary-secret-missing-id-token-claim"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#secondary-secret-missing-id-token-claim"></a>Secondary secret missing ID token claim</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37279</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused the ID token claim to be omitted when an OAuth client uses the secondary secret.</p>
</div>
</div>
<div class="sect3">
<h4 id="failed-idp-connection-with-additional-issuer"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#failed-idp-connection-with-additional-issuer"></a>Failed IdP connection with additional issuer</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37404</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where an "IdP connection not found" error occurs when an authorization response includes an <code class="codeph">iss</code> query parameter that doesn’t match the connection’s primary issuer, but is added as an additional issuer.</p>
</div>
</div>
<div class="sect3">
<h4 id="simultaneous-administrative-api-requests"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#simultaneous-administrative-api-requests"></a>Simultaneous Administrative API requests</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37448</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused configuration replication to fail when two or more simultaneous DELETE requests were sent to the Administrative API.</p>
</div>
</div>
<div class="sect3">
<h4 id="unnecessary-id-token-reissued-with-secondary-client-secret"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#unnecessary-id-token-reissued-with-secondary-client-secret"></a>Unnecessary ID token reissued with secondary client secret</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37450</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused the token endpoint to unnecessarily reissue an ID token when using a secondary client secret and an asymmetric algorithm for token signing and encryption.</p>
</div>
</div>
<div class="sect3">
<h4 id="apache-commons-beanutils"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#apache-commons-beanutils"></a>Apache Commons BeanUtils</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37507</span></p>
</div>
<div class="paragraph">
<p>PingFederate now uses the Apache Commons BeanUtils library version 1.11.0.</p>
</div>
</div>
<div class="sect3">
<h4 id="scope-groups-search"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#scope-groups-search"></a>Scope Groups Search</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37514</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where the <strong class="uicontrol">Scopes Selection</strong> modal prevented configurations from saving correctly when added using search.</p>
</div>
</div>
<div class="sect3">
<h4 id="scopes-with-url-characters-not-updating"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#scopes-with-url-characters-not-updating"></a>Scopes with URL characters not updating</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37516</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where OAuth scopes that included URL characters such as <code class="codeph">/</code> couldn’t be updated in the Admin portal.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="known-issues-and-limitations-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#known-issues-and-limitations-3"></a>Known issues and limitations</h3>
<div class="sect3">
<h4 id="pingone-verify-ik-unexpected-error-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingone-verify-ik-unexpected-error-2"></a>PingOne Verify IK unexpected error</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span>
<span class="ping_ticket">PF-36573</span></p>
</div>
<div class="paragraph">
<p>PingFederate returns an unexpected error when you create an instance of the PingOne Verify Integration Kit version 2.2.2 in PingFederate with the Verify feature in PingOne disabled.</p>
</div>
</div>
<div class="sect3">
<h4 id="third-party-cookie-blocking-affecting-single-logout-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#third-party-cookie-blocking-affecting-single-logout-2"></a>Third-party cookie blocking affecting single logout</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span>
<span class="ping_ticket">PF-35772</span></p>
</div>
<div class="paragraph">
<p>Due to multiple vendors' recent browser versions that block third-party cookies, you might experience issues related to single logout with OIDC (via Front-Channel) and WS-Federation.</p>
</div>
<div class="paragraph">
<p>Refer to browsers' documentation regarding third-party cookie management to unblock them, if feasible.</p>
</div>
</div>
<div class="sect3">
<h4 id="passive-admin-console-ui-refresh-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#passive-admin-console-ui-refresh-2"></a>Passive admin console UI refresh</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span>
<span class="ping_ticket">PF-35643</span></p>
</div>
<div class="paragraph">
<p>When you promote a passive admin console to active, the UI doesn’t refresh until you perform an action.</p>
</div>
</div>
<div class="sect3">
<h4 id="multiple-active-admin-consoles-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#multiple-active-admin-consoles-2"></a>Multiple active admin consoles</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span>
<span class="ping_ticket">PF-35439</span></p>
</div>
<div class="paragraph">
<p>When you make configuration changes on the active console (especially large configuration changes like bulk imports or data archive imports), then promote a passive console to active, it can cause multiple consoles to be active at once. This can result in inconsistent configurations.</p>
</div>
<div class="paragraph">
<p>Learn how to resolve this issue in <a href="https://docs.pingidentity.com/pingfederate/server_clustering_guide/pf_resolving_multiple_active_admin_nodes.html" class="xref page">Resolving multiple active administrative nodes</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="administrative-console-and-administrative-api-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#administrative-console-and-administrative-api-2"></a>Administrative console and administrative API</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>Although PingFederate 11.3 and later support DPoP, a known limitation is that the following features don’t support DPoP when PingFederate is the RP:</p>
<div class="ulist">
<ul>
<li>
<p>The administrative console authentication scheme using OIDC</p>
</li>
<li>
<p>The administrative API authentication scheme using OAuth 2.0</p>
</li>
</ul>
</div>
</li>
<li>
<p>/bulk: Only resource types currently supported by the administrative API are included in the exported data. We don’t intend to introduce administrative API support to the following areas:</p>
<div class="ulist">
<ul>
<li>
<p><a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_configuring_standard_idp_discovery.html" class="xref page">SAML 2.0 IdP Discovery</a></p>
</li>
<li>
<p><a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_affiliationstasklet_affiliationmgmtstate.html" class="xref page">SAML 2.0 SP Affiliation</a></p>
</li>
<li>
<p><a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_smsprovidersettingstasklet_smsprovidersettingsstate.html" class="xref page">SMS Provider</a></p>
</li>
</ul>
</div>
</li>
<li>
<p>Previously, the administrative API did not accurately reflect a <strong class="uicontrol">Persistent Grant Max Lifetime</strong> setting of 29 days (or shorter) with the selection of the <strong class="uicontrol">Grants Do Not Timeout Due To Inactivity</strong> option. As a result, if you have configured such OAuth authorization server settings and have generated a bulk export in version 10.0 through 10.0.2, we recommend that you re-generate a new bulk export after upgrading to version 10.0.3 (or a more recent version). The newly exported data does not contain the aforementioned flaw, and you can safely import it to version 10.0.3 (or a more recent version).</p>
</li>
<li>
<p>When enabling mTLS certificate-based authentication, administrators often configure a list of acceptable client certificate issuers. When you use a browser to access the console or the administrative API documentation, PingFederate returns to the browser the list of acceptable issuers as part of the TLS handshake. If the browser’s client certificate store contains multiple client certificates, the browser often presents you only the certificates whose issuer matches one of the acceptable issuers. However, when PingFederate runs in a Java 11 environment, Chrome presents you all its configured client certificates, regardless of whether the issuer matches one of the acceptable issuers or not.</p>
</li>
<li>
<p>When using mTLS authentication to authenticate to an LDAP server for administrative console or administrative API access, PingFederate doesn’t support using a Microsoft Active Directory server.</p>
</li>
<li>
<p>Prior to toggling the status of a connection with the administrative API, you must ensure that any expired certificates or no longer available attributes are replaced with valid certificates or attributes; otherwise, the update request fails.</p>
</li>
<li>
<p>When creating or updating a child instance of a hierarchical plugin, the administrative API retains objects with an <code class="codeph">"inherited": false</code> name/value pair (or without such name/value pair altogether), ignores those with a value of <code class="codeph">true</code>, and returns a 200 HTTP status code. No error messages are returned for the ignored objects.</p>
</li>
<li>
<p>Using the browser’s navigation mechanisms (for example, the <strong class="uicontrol">Back</strong> button) causes inconsistent behavior in the administrative console. Use the navigation buttons provided at the bottom of windows in the PingFederate console.</p>
</li>
<li>
<p>Using the PingFederate console in multiple tabs on one browser might cause inconsistent behavior which could corrupt its configuration.</p>
</li>
<li>
<p>If authenticated to the PingFederate administrative console using certificate authentication, a session that has timed out might not appear to behave as expected. Normally (when using password authentication), when a session has timed out and a user attempts some action in the console, the browser is redirected to the sign-on page, and then back to the administrative console after authentication is complete. Similar behavior applies for certificate authentication, in principle. However, because the browser might automatically resubmit the certificate for authentication, the browser might redirect to the administrative console and not the sign on page.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="tls-cipher-suite-customization-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#tls-cipher-suite-customization-2"></a>TLS cipher suite customization</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>PingFederate’s TLS cipher suites can be customized by modifying <code class="filepath">com.pingidentity.crypto.SunJCEManager.xml</code> (or a similarly-named file if BCFIPS or an HSM is configured). After updating the file and replicating, all cluster nodes must be restarted for the change to take effect.</p>
</div>
</div>
<div class="sect3">
<h4 id="java-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#java-2"></a>Java</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>Updating Java version 8 to version 11 results in an error when PingFederate is already installed and running on Windows. To work around this issue, uninstall and reinstall the PingFederate Windows service by running the <code class="filepath">UninstallPingFederateService.bat</code> and <code class="filepath">InstallPingFederateService.bat</code> files located in <code class="filepath"><em class="varname">&lt;pf_install&gt;</em>/pingfederate/sbin/wrapper</code>.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="hsms-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#hsms-2"></a>HSMs</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>AWS CloudHSM</p>
</div>
<div class="ulist">
<ul>
<li>
<p>It is not possible to use an elliptic curve (EC) certificate as an SSL server certificate.</p>
</li>
<li>
<p>When creating an EC certificate with a <code class="codeph">signatureAlgorithm</code> smaller than the <code class="codeph">keySize</code> value, a <code class="msgph">500 Server error</code> occurs. For example, a <code class="codeph">signatureAlgorithm</code> of <code class="codeph">SHA256withECDSA</code> with a <code class="codeph">keySize</code> of <code class="codeph">384</code> results in an error. Learn more in <a href="https://docs.aws.amazon.com/cloudhsm/latest/userguide/ki-all.html?utm_source=chatgpt.com#ki-all-12" target="_blank" rel="noopener">ECDSA signing fails with "invalid mechanism" error starting with SDK 5.16</a> in the CloudHSM documentation.</p>
</li>
<li>
<p>TLS 1.3 is not currently supported with Oracle JDK 11, 17, or 21.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Thales HSMs</p>
</div>
<div class="ulist">
<ul>
<li>
<p>JWT token decryption using ECDH-ES may fail. This issue only arises if PingFederate is configured with static OAuth and OpenID Connect keys, a static key is stored on the HSM, and PingFederate is consuming a token encrypted with this key.</p>
</li>
<li>
<p>It is not possible to use an EC certificate as an SSL server certificate.</p>
</li>
<li>
<p>TLS 1.3 is not currently supported with Oracle JDK 11, 17, or 21.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Entrust HSMs</p>
</div>
<div class="ulist">
<ul>
<li>
<p>JWT token decryption using ECDH-ES may fail. This issue only arises if PingFederate is configured with static OAuth and OpenID Connect keys, a static key is stored on the HSM, and PingFederate is consuming a token encrypted with this key.</p>
</li>
<li>
<p>It is not possible to import a PKCS12- or PEM-formatted EC certificate.</p>
</li>
<li>
<p>It is not possible to use an EC certificate as an SSL server certificate.</p>
</li>
<li>
<p>TLS 1.3 is not currently supported with Oracle JDK 11, 17, or 21.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="sso-and-slo-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#sso-and-slo-2"></a>SSO and SLO</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>When consuming SAML metadata, PingFederate does not report an error when neither the <code class="parmname">validUntil</code> nor the <code class="parmname">cacheDuration</code> attribute is included in the metadata. Note that PingFederate does reject expired SAML metadata as indicated by the <code class="parmname">validUntil</code> attribute value, if it is provided.</p>
</li>
<li>
<p>The anchored-certificate trust model cannot be used with the single logout (SLO) redirect binding because the certificate cannot be included with the logout request.</p>
</li>
<li>
<p>If an IdP connection is configured for multiple virtual server IDs, PingFederate will always use the default virtual server ID for IdP Discovery during an SP-initiated SSO event.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="composite-adapter-configuration-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#composite-adapter-configuration-2"></a>Composite Adapter configuration</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>SLO is not supported when users are authenticated through a Composite Adapter instance that contains another instance of the Composite Adapter.</p>
</div>
</div>
<div class="sect3">
<h4 id="self-service-password-reset-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#self-service-password-reset-2"></a>Self-service password reset</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>Passwords can be reset for Microsoft Active Directory user accounts without the permission to change password.</p>
</div>
</div>
<div class="sect3">
<h4 id="oauth-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oauth-2"></a>OAuth</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>PingFederate does not support a case-sensitive naming convention for OAuth client ID values when client records are stored in a directory server. For example, after creating a client with an ID value of <code class="codeph">sampleClient</code>, PingFederate does not allow the creation of another client with an ID value of <code class="codeph">SampleClient</code>.</p>
</div>
<div class="paragraph">
<p>Although it’s possible to create clients using the same ID values with different casings when client records are stored in XML files, a database server, or custom storage, we recommend not doing so to avoid potential record migration issues.</p>
</div>
</div>
<div class="sect3">
<h4 id="customer-identity-and-access-management-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#customer-identity-and-access-management-2"></a>Customer identity and access management</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>Some browsers display a date-picker user interface for fields that have been designed for date-specific inputs. Some browsers do not. If one or more date-specific fields are defined on the registration page or the profile management page (or both), end users must enter the dates manually if their browsers do not display a date-picker user interface for those fields.</p>
</div>
</div>
<div class="sect3">
<h4 id="provisioning-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#provisioning-2"></a>Provisioning</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>LDAP referrals return an error and cause provisioning to fail if the <code class="parmname">user</code> or <code class="parmname">group</code> objects are defined at the DC level, and not within an OU or within the Users CN.</p>
</li>
<li>
<p>The <code class="parmname">totalResults</code> value in SCIM responses indicates the number of results returned in the current response, not the total number of estimated results on the LDAP server.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="logging-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#logging-2"></a>Logging</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>If a source attribute has been configured for masking in an IdP adapter or IdP connection and the source attribute is mapped to OAuth’s persistent grant <code class="parmname">USER_KEY</code> attribute, the <code class="parmname">USER_KEY</code> attribute will not be masked in the server logs. Other persistent grant attributes will be masked.</p>
</li>
<li>
<p>Even if a source attribute has been configured for masking in an IdP adapter and the source attribute is mapped as the adapter’s unique user key, the user key attribute is not masked in the server or audit logs.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="database-logging-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#database-logging-2"></a>Database logging</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>If a source attribute has been configured for masking in an IdP adapter or IdP connection and the source attribute is mapped to OAuth’s persistent grant <code class="parmname">USER_KEY</code> attribute, the <code class="parmname">USER_KEY</code> attribute will not be masked in the server logs. Other persistent grant attributes will be masked.</p>
</li>
<li>
<p>Even if a source attribute has been configured for masking in an IdP adapter and the source attribute is mapped as the adapter’s unique user key, the user key attribute is not masked in the server or audit logs.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="radius-nas-ip-address-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#radius-nas-ip-address-2"></a>RADIUS NAS-IP-Address</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>The RADIUS NAS-IP-Address is only included in Access-Request packets when the <code class="codeph">pf.bind.engine.address</code> is set with an IPv4 address. IPv6 is not supported.</p>
</div>
</div>
<div class="sect3">
<h4 id="amazon-sns-notification-publisher-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#amazon-sns-notification-publisher-2"></a>Amazon SNS Notification Publisher</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>When deploying PingFederate with a forward proxy, plugins based on the AWS SDK, such as the Amazon SNS Notification Publisher, will only honor the <code class="codeph">http.proxyHost</code>, <code class="codeph">http.proxyPort</code>, <code class="codeph">http.proxyUser</code>, and <code class="codeph">http.proxyPassword</code> properties in <code class="filepath">run.properties</code>. The plugin will rely on these properties even if the service URL is <code class="codeph">https</code>.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="deprecated-features-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#deprecated-features-2"></a>Deprecated features</h3>
<div class="paragraph">
<p>No features were deprecated for PingFederate 12.3.</p>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 12.2.8 (May 2026)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-2-8-may-2026</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-2-8-may-2026</guid>
            <pubDate>Fri, 08 May 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="new-features-enhancements-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#new-features-enhancements-2"></a>New features &amp; enhancements</h3>
<div class="sect3">
<h4 id="unconnected-cluster-node-startup-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#unconnected-cluster-node-startup-2"></a>Unconnected cluster node startup</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span>
<span class="ping_ticket">PF-38898</span></p>
</div>
<div class="paragraph">
<p>We added the <code class="parmname">force.require.replication.data.on.startup</code> parameter to the <code class="filepath">cluster-config-replication.conf</code> file.</p>
</div>
<div class="paragraph">
<p>This parameter lets you prevent an engine node from starting up without establishing a connection to the cluster.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_cluster_management.html" class="xref page">Cluster management</a>.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="resolved-issues-11"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-11"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="ognl-code-test-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#ognl-code-test-3"></a>OGNL code test</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-38742</span></p>
</div>
<div class="paragraph">
<p>We improved role-based access control (RBAC) for the administrative expression testing endpoint. Access to expression evaluation is now limited to appropriately privileged roles, ensuring alignment with intended administrative permissions.</p>
</div>
</div>
<div class="sect3">
<h4 id="multiple-sign-on-delay-routing-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#multiple-sign-on-delay-routing-2"></a>Multiple Sign-On Delay routing</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38801</span></p>
</div>
<div class="paragraph">
<p>We fixed a defect that caused PingFederate to route users to the base URL for the Multiple Sign-On Delay page when they should’ve been routed to the virtual host URL.</p>
</div>
</div>
<div class="sect3">
<h4 id="custom-authentication-selector-error-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#custom-authentication-selector-error-2"></a>Custom Authentication Selector error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38875</span></p>
</div>
<div class="paragraph">
<p>We fixed a defect that prevented viewing or editing certain custom Authentication Selectors in the admin console.</p>
</div>
</div>
<div class="sect3">
<h4 id="extended-property-authentication-selector-dependency-error-warning"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#extended-property-authentication-selector-dependency-error-warning"></a>Extended Property Authentication Selector dependency error warning</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38901</span></p>
</div>
<div class="paragraph">
<p>We fixed a defect that caused PingFederate to continue displaying a dependency error warning for the Extended Property Authentication Selector after the selector instance is deleted.</p>
</div>
</div>
<div class="sect3">
<h4 id="dynamic-jwks-rotation-timer-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#dynamic-jwks-rotation-timer-2"></a>Dynamic JWKS rotation timer</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38903</span></p>
</div>
<div class="paragraph">
<p>We fixed a defect that prevented dynamic JWKS rotation timing from resetting after a node joined a cluster.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 12.2.7 (February 2026)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-2-7-february-2026</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-2-7-february-2026</guid>
            <pubDate>Fri, 27 Feb 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-12"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-12"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="kerberos-adapter-redirect-url-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#kerberos-adapter-redirect-url-3"></a>Kerberos Adapter redirect URL</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38328</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where the Kerberos Adapter failed to authenticate when a context path is configured.</p>
</div>
</div>
<div class="sect3">
<h4 id="jwt-administrative-api-authentication-misconfiguration"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#jwt-administrative-api-authentication-misconfiguration"></a>JWT Administrative API authentication misconfiguration</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38336</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused PingFederate to crash or shut down when attempting to access the Administrative API with a misconfigured <span class="fr-alt fr-glossentry" title="<div class=&quot;paragraph&quot;>
<p>An IETF standard container format for a JSON object used for the secure exchange of content, such as identity or entitlement information. You can find the industry standard in <a href=&quot;https://datatracker.ietf.org/doc/html/rfc7519&quot;>RFC 7519</a>.</p>
</div>">JWT</span> authentication setup.</p>
</div>
</div>
<div class="sect3">
<h4 id="administrative-api-authentication-fix-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#administrative-api-authentication-fix-3"></a>Administrative API authentication fix</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38393</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that allowed Basic Authentication to access the Administrative API, even when it was disabled in the <code class="codeph">pf.admin.api.authentication</code> property.</p>
</div>
</div>
<div class="sect3">
<h4 id="pi-flow-response_mode-fix-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pi-flow-response_mode-fix-3"></a><code class="codeph">pi.flow</code> <code class="parmname">response_mode</code> fix</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38417</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where setting <code class="parmname">response_mode</code> to <code class="codeph">pi.flow</code> in Pushed Authorization Requests (PAR) or standard request objects resulted in an <code class="msgph">INVALID_REQUEST</code> error.</p>
</div>
</div>
<div class="sect3">
<h4 id="authentication-policy-error-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#authentication-policy-error-3"></a>Authentication policy error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38623</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused an error when authentication policies with a Requested AuthN Context Authentication had <strong class="uicontrol">Add or Update AuthN Context Attribute</strong> enabled.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 12.2.6 (November 2025)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-2-6-november-2025</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-2-6-november-2025</guid>
            <pubDate>Thu, 13 Nov 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-13"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-13"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="pingfailoverappender-race-condition-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfailoverappender-race-condition-3"></a><code class="codeph">PingFailoverAppender</code> race condition</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37816</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where a race condition could cause the <code class="codeph">PingFailoverAppender</code> to get stuck in a failed state without switching back to its primary appender.</p>
</div>
</div>
<div class="sect3">
<h4 id="virtual-hostname-accuracy-in-email-notifications-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#virtual-hostname-accuracy-in-email-notifications-3"></a>Virtual hostname accuracy in email notifications</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37964</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where a template variable incorrectly used the primary PingFederate base URL instead of the virtual hostname in some email notifications.</p>
</div>
</div>
<div class="sect3">
<h4 id="url-validation-for-relaystate-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#url-validation-for-relaystate-3"></a>URL validation for <code class="codeph">RelayState</code></h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38028</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where PingFederate would reject requests with valid, non-encoded relay state values.</p>
</div>
</div>
<div class="sect3">
<h4 id="apache-commons-beanutils-and-commons-compress"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#apache-commons-beanutils-and-commons-compress"></a>Apache Commons BeanUtils and Commons Compress</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38029</span></p>
</div>
<div class="paragraph">
<p>PingFederate now uses the Apache Commons BeanUtils library version 1.11.0 and the Apache Commons Compress library version 1.26.1.</p>
</div>
</div>
<div class="sect3">
<h4 id="html-flow-login-and-authentication-api-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#html-flow-login-and-authentication-api-3"></a>HTML flow login and Authentication API</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38039</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that could potentially allow a user to access an HTML browser sign-on page when the Authentication API redirectless mode is used.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://support.pingidentity.com/s/article/PingFederate-unexpected-template-rendering-in-redirectless-mode" target="_blank" rel="noopener">PingFederate unexpected template rendering in redirectless mode</a> in the Ping Identity Support Knowledge Base.</p>
</div>
</div>
<div class="sect3">
<h4 id="ldap-account-lockout-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#ldap-account-lockout-3"></a>LDAP account lockout</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38043</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where PingFederate could incorrectly lock user accounts during an LDAP connectivity failure with Active Directory. This fix applies to all LDAP datastore types except for Generic LDAP.</p>
</div>
</div>
<div class="sect3">
<h4 id="idp-adapter-duplicate-attribute-sources-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#idp-adapter-duplicate-attribute-sources-3"></a>IdP Adapter duplicate attribute sources</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38060</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused IdP adapters to duplicate attribute sources when an SP connection was updated using the Admin API.</p>
</div>
</div>
<div class="sect3">
<h4 id="corrected-null-saasguid-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#corrected-null-saasguid-3"></a>Corrected null <code class="codeph">SaasGuid</code></h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38244</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a provisioning defect where disabled users weren’t provisioned once their account was enabled and the <strong class="uicontrol">Provision Disabled Users</strong> setting was set to false.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 12.2.5 (August 2025)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-2-5-august-2025</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-2-5-august-2025</guid>
            <pubDate>Tue, 19 Aug 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-14"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-14"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="admin-console-ip-exposure-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#admin-console-ip-exposure-3"></a>Admin console IP exposure</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-33113</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a security vulnerability that could have allowed malicious parties to extract the PingFederate administrative console’s IP address through HTTP Response headers.</p>
</div>
</div>
<div class="sect3">
<h4 id="host-header-redirect-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#host-header-redirect-3"></a>Host header redirect</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-37460</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a security vulnerability that could have allowed malicious parties to redirect PingFederate admin console traffic using a spoofed Host header.</p>
</div>
</div>
<div class="sect3">
<h4 id="pingfederate-error-messaging"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-error-messaging"></a>PingFederate error messaging</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36991</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed an issue by adding a missing property to <code class="filepath">pingfederate-messages.properties</code>.</p>
</div>
</div>
<div class="sect3">
<h4 id="jarm-response-with-error-parameter-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#jarm-response-with-error-parameter-3"></a>JARM response with <code class="parmname">error</code> parameter</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37688</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where JARM responses with an <code class="parmname">error</code> parameter caused PingFederate to return a <code class="codeph">500</code> error. It now returns a <code class="codeph">200</code> response with the appropriate error page.</p>
</div>
</div>
<div class="sect3">
<h4 id="atm-configuration-error-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#atm-configuration-error-3"></a>ATM configuration error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37716</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused an error in PingFederate when configuring an access token manager if the administrative node (ATM) isn’t the coordinator node.</p>
</div>
</div>
<div class="sect3">
<h4 id="sni-extension-error-in-bcfips-mode-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#sni-extension-error-in-bcfips-mode-3"></a>SNI extension error in BCFIPS mode</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37793</span></p>
</div>
<div class="paragraph">
<p>PingFederate now always includes the SNI extension in the ClientHello message during a TLS handshake when running in BCFIPS mode.</p>
</div>
</div>
<div class="sect3">
<h4 id="wildcard-tls-certificate-error-in-bcfips-mode-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#wildcard-tls-certificate-error-in-bcfips-mode-3"></a>Wildcard TLS certificate error in BCFIPS mode</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37794</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where PingFederate was refusing wildcard TLS certificates when running in BCFIPS mode.</p>
</div>
</div>
<div class="sect3">
<h4 id="classnotfoundexception-error-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#classnotfoundexception-error-2"></a><code class="codeph">ClassNotFoundException</code> error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37819</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed an issue that could cause <code class="codeph">ClassNotFoundException</code> on the admin console.</p>
</div>
</div>
<div class="sect3">
<h4 id="jwt-api-authentication-method-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#jwt-api-authentication-method-3"></a>JWT API authentication method</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37841</span></p>
</div>
<div class="paragraph">
<p>We’ve added JWT as an authentication method for the admin API during upgrade utility validation.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 12.2.4 (June 2025)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-2-4-june-2025</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-2-4-june-2025</guid>
            <pubDate>Tue, 24 Jun 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="new-features-and-enhancements-7"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#new-features-and-enhancements-7"></a>New features and enhancements</h3>
<div class="sect3">
<h4 id="pingone-singapore-region-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingone-singapore-region-2"></a>PingOne Singapore region</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_ticket">PF-37451</span></p>
</div>
<div class="paragraph">
<p>We’ve added support for the new PingOne Singapore region, <code class="codeph">pingone.sg</code>.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="resolved-issues-15"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-15"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="refresh-token-mysql-deadlocks-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#refresh-token-mysql-deadlocks-2"></a>Refresh token MySQL deadlocks</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35868</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused multiple refresh token requests in short succession to result in <span class="fr-alt fr-glossentry" title="<div class=&quot;paragraph&quot;>
<p>A Java API that allows Java programs to interact with databases.</p>
</div>">JDBC</span> data source deadlocks and duplicated data entry into the database.</p>
</div>
<div class="paragraph">
<p>This feature can cause significant performance issues if PingFederate or the JDBC data source has insufficient resources.</p>
</div>
</div>
<div class="sect3">
<h4 id="collect-support-data-failure-in-admin-console"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#collect-support-data-failure-in-admin-console"></a>Collect support data failure in admin console</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37398</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused the Collect Support Data tool to fail when executed in the admin console when running PingFederate as a Windows service.</p>
</div>
</div>
<div class="sect3">
<h4 id="unnecessary-id-token-reissued-with-secondary-client-secret-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#unnecessary-id-token-reissued-with-secondary-client-secret-2"></a>Unnecessary ID token reissued with secondary client secret</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37450</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused the token endpoint to unnecessarily reissue an ID token when using a secondary client secret and an asymmetric algorithm for token signing and encryption.</p>
</div>
</div>
<div class="sect3">
<h4 id="firefox-kerberos-negotiation-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#firefox-kerberos-negotiation-2"></a>Firefox Kerberos negotiation</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37559</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused Kerberos negotiations to fail with Firefox after the initial exchange.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 12.2.3 (May 2025)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-2-3-may-2025</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-2-3-may-2025</guid>
            <pubDate>Fri, 02 May 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="new-features-and-enhancements-8"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#new-features-and-enhancements-8"></a>New features and enhancements</h3>
<div class="sect3">
<h4 id="bouncy-castle-fips-2-0-compatibility-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#bouncy-castle-fips-2-0-compatibility-2"></a>Bouncy Castle FIPS 2.0 compatibility</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_ticket">PF-36846</span></p>
</div>
<div class="paragraph">
<p>We’ve upgraded Bouncy Castle to version 2.0. This versions is certified to operate in Federal Information Processing Standards (FIPS) mode 140-3.</p>
</div>
</div>
<div class="sect3">
<h4 id="native_s3_ping-update-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#native_s3_ping-update-2"></a>NATIVE_S3_PING update</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_ticket">PF-37234</span></p>
</div>
<div class="paragraph">
<p>We’ve updated the behavior of the NATIVE_S3_PING discovery protocol when the <code class="parmname">remove_all_data_on_view_change</code> parameter is active.</p>
</div>
<div class="paragraph">
<p>Previously, the protocol would delete all files in the S3 bucket, which could lead to the creation of an unwanted subcluster.</p>
</div>
<div class="paragraph">
<p>Now the protocol deletes all files except for its own to prevent the S3 bucket from being empty.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/server_clustering_guide/pf_dynamic_cluster_discovery.html" class="xref page">Dynamic cluster discovery</a>.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="resolved-issues-16"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-16"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="rp-initiated-logout-error-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#rp-initiated-logout-error-2"></a>RP-initiated logout error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37173</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused PingFederate to ignore the <code class="parmname">id_token_hint</code> value during <span class="fr-alt fr-glossentry" title="<div class=&quot;paragraph&quot;>
<p>An OAuth 2.0 client that requires end-user’s authenticity and claims (attributes) from an OpenID provider.</p>
</div>">RP</span>-initiated logout when the OAuth client logout mode is set to <code class="codeph">None</code>.</p>
</div>
</div>
<div class="sect3">
<h4 id="log-rotation-policy-ignored-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#log-rotation-policy-ignored-2"></a>Log rotation policy ignored</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37237</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused PingFederate to ignore the log file size limit and rotation configurations set by the <code class="parmname">SizeBasedTriggeringPolicy</code> parameter.</p>
</div>
</div>
<div class="sect3">
<h4 id="secondary-secret-missing-id-token-claim-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#secondary-secret-missing-id-token-claim-2"></a>Secondary secret missing ID token claim</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37279</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused the ID token claim to be omitted when an OAuth client uses the secondary secret.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 12.2.2 (March 2025)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-2-2-march-2025</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-2-2-march-2025</guid>
            <pubDate>Tue, 25 Mar 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-17"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-17"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="sp-connection-with-ognl-expression"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#sp-connection-with-ognl-expression"></a>SP connection with OGNL expression</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37046</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where PingFederate failed to create or update <span class="fr-alt fr-glossentry" title="<div class=&quot;paragraph&quot;>
<p>In SAML, an entity that receives and accepts an authentication assertion issued by an IdP, typically for the purpose of allowing access to a protected resource.</p>
</div>">service provider (SP)</span> connections when using additional attributes from a data store in OGNL expressions, affecting both the <code class="codeph">spConnections</code> endpoint in the Administrative API and the <strong class="uicontrol">Import Connection</strong> process in the Admin console.</p>
</div>
</div>
<div class="sect3">
<h4 id="http-connection-pool-tracking"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#http-connection-pool-tracking"></a>HTTP connection pool tracking</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37126</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that could cause PingFederate to generate a large number of metric objects unnecessarily when making HTTP requests, which affected performance.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 12.2.1 (February 2025)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-2-1-february-2025</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-2-1-february-2025</guid>
            <pubDate>Mon, 24 Feb 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="new-features-and-enhancements-9"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#new-features-and-enhancements-9"></a>New features and enhancements</h3>
<div class="sect3">
<h4 id="duplicate-rsa-key-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#duplicate-rsa-key-2"></a>Duplicate RSA key</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-36970</span></p>
</div>
<div class="paragraph">
<p>We’ve added a feature that gives you the option to include a duplicate RSA key with the RS256 algorithm. You can enable this option by setting the <code class="codeph">add-duplicate-rs256-alg-key</code> parameter in the <code class="filepath">&lt;pingfed-install&gt;/pingfederate/server/default/data/config-store/jwks-endpoint-configuration.xml</code> file to <code class="option">true</code>.</p>
</div>
</div>
<div class="sect3">
<h4 id="red-hat-enterprise-linux-8-10-compatibility-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#red-hat-enterprise-linux-8-10-compatibility-2"></a>Red Hat Enterprise Linux 8.10 compatibility</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_ticket">PF-36972</span></p>
</div>
<div class="paragraph">
<p>We’ve confirmed that PingFederate is compatible with Red Hat Enterprise Linux ES 8.10.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="resolved-issues-18"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-18"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="access-token-manager-admin-api-error-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#access-token-manager-admin-api-error-2"></a>Access token manager Admin API error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36845</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused a <code class="msgph">500</code> error when creating or updating an access token manager using the Administrative API.</p>
</div>
</div>
<div class="sect3">
<h4 id="refresh-token-error-when-authorization-bypass-enabled-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#refresh-token-error-when-authorization-bypass-enabled-2"></a>Refresh token error when authorization bypass enabled</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36851</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused PingFederate to return a revoked or expired consent error when both <strong class="uicontrol">Bypass Authorization Approval</strong> and <strong class="uicontrol">Bypass Authorization Approval for Previously Approved Consents</strong> are enabled.</p>
</div>
</div>
<div class="sect3">
<h4 id="this-is-my-device-error-on-html-form-adapter-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#this-is-my-device-error-on-html-form-adapter-2"></a>This is My Device error on HTML Form Adapter</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36864</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused PingFederate to behave inconsistently when <strong class="uicontrol">This is My Device</strong> is selected and an HTML Form Adapter instance has more than one session configuration in the session overrides.</p>
</div>
</div>
<div class="sect3">
<h4 id="tls-connection-in-bcfips-mode-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#tls-connection-in-bcfips-mode-2"></a>TLS connection in BCFIPS mode</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36865</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where PingFederate could not accept a TLS 1.2 connection in BCFIPS mode on Java 17.</p>
</div>
</div>
<div class="sect3">
<h4 id="group-membership-loss-during-provisioning-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#group-membership-loss-during-provisioning-2"></a>Group membership loss during provisioning</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36874</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused PingFederate to lose user group membership information when it lost contact with the datastore during provisioning operations.</p>
</div>
</div>
<div class="sect3">
<h4 id="change-password-failure-with-pingone-protect-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#change-password-failure-with-pingone-protect-2"></a>Change password failure with PingOne Protect</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37012</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused the HTML Form Adapter Change Password using an authentication policy to fail when PingOne Protect is the risk provider.</p>
</div>
</div>
<div class="sect3">
<h4 id="ognl-expressions-with-sdk-classes-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#ognl-expressions-with-sdk-classes-2"></a>OGNL expressions with SDK classes</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37021</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused OGNL expressions to fail to load when they contained SDK classes.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 12.2 (December 2024)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-2-december-2024</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-2-december-2024</guid>
            <pubDate>Tue, 10 Dec 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="paragraph">
<p>New features and improvements in PingFederate 12.2.</p>
</div>
<div class="sect2">
<h3 id="new-features-and-enhancements-10"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#new-features-and-enhancements-10"></a>New features and enhancements</h3>
<div class="sect3">
<h4 id="extended-properties-in-adapter-contract-mapping"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#extended-properties-in-adapter-contract-mapping"></a>Extended properties in adapter contract mapping</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-36314</span></p>
</div>
<div class="paragraph">
<p>We’ve added the ability for PingFederate to read extended properties in adapter contract mappings.</p>
</div>
<div class="paragraph">
<p>This improves flexibility by allowing you to use extended properties as values for attributes fulfilled by your adapter or as lookup values from your datastore.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_configplugincontracttasklet_plugincontractfulfillmentmappingstate.html" class="xref page">Configuring IdP adapter contract fulfillment</a> and <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_configplugincontracttasklet_plugincontractissuancecriteriastate.html" class="xref page">Defining issuance criteria for IdP adapter contract</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="extended-properties-in-token-generator-and-token-exchange-policy-processor-mappings"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#extended-properties-in-token-generator-and-token-exchange-policy-processor-mappings"></a>Extended properties in token generator and token exchange policy processor mappings</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-36315</span></p>
</div>
<div class="paragraph">
<p>We’ve added the ability for PingFederate to read extended properties in token generator mappings and token exchange policy processor mappings.</p>
</div>
<div class="paragraph">
<p>This improves flexibility by allowing you to use extended properties in token generation and exchange operations. You can also use extended properties as lookup values from your data store.</p>
</div>
</div>
<div class="sect3">
<h4 id="extended-properties-in-idp-and-sp-connections"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#extended-properties-in-idp-and-sp-connections"></a>Extended properties in IdP and SP connections</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-36316</span></p>
</div>
<div class="paragraph">
<p>We’ve added the ability for PingFederate to read extended properties in adapter and authentication policy contract (APC) mappings for browser single sign-on (SSO).</p>
</div>
<div class="paragraph">
<p>This improves flexibility by allowing you to use extended properties in identity provider (IdP) and service provider (SP) connections.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_configuring_target_session_fulfillment.html" class="xref page">Configuring target session fulfillment</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="kerberos-token-validation-without-direct-kdc-communication"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#kerberos-token-validation-without-direct-kdc-communication"></a>Kerberos token validation without direct KDC communication</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-35864</span></p>
</div>
<div class="paragraph">
<p>We’ve added support for Kerberos validation when PingFederate is deployed in the cloud without direct Key Distribution Center (KDC) connectivity.</p>
</div>
<div class="paragraph">
<p>This can improve performance by allowing PingFederate to validate Kerberos tickets locally without the need for additional components.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_adding_active_directory_domains_kerberos_realms.html" class="xref page">Adding Active Directory domains and Kerberos realms</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="authentication-policy-logging-improvements"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#authentication-policy-logging-improvements"></a>Authentication policy logging improvements</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-35343</span></p>
</div>
<div class="paragraph">
<p>We’ve improved the logging of authentication policies and fragments used during authentication. The following items are now included in their respective log files:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><code class="filepath">server.log</code></p>
<div class="ulist">
<ul>
<li>
<p>Authentication policies that are skipped (DEBUG level)</p>
</li>
<li>
<p>Authentication policies used in the authentication request (DEBUG level)</p>
</li>
<li>
<p>No match found for rules (DEBUG level)</p>
</li>
</ul>
</div>
</li>
<li>
<p><code class="filepath">audit.log</code></p>
<div class="ulist">
<ul>
<li>
<p>Policies used in authentication request (INFO level)</p>
</li>
</ul>
</div>
</li>
</ul>
</div>
<div class="paragraph">
<p>Learn more about the <code class="filepath">audit.log</code> changes in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_security_audit_logging.html" class="xref page">Security audit logging</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="url-encoded-certificate-headers"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#url-encoded-certificate-headers"></a>URL-encoded certificate headers</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-36649</span></p>
</div>
<div class="paragraph">
<p>We’ve added a feature that allows PingFederate to consume URL-encoded client certificate headers.</p>
</div>
<div class="paragraph">
<p>This improves compatibility with NGINX mTLS-terminating reverse proxy.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_systemoptionstasklet_systemoptionsstate.html" class="xref page">Configuring incoming proxy settings</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="automatic-configuration-data-upgrade"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#automatic-configuration-data-upgrade"></a>Automatic configuration data upgrade</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-34426</span></p>
</div>
<div class="paragraph">
<p>We’ve added a feature that automatically upgrades an imported configuration data archive from an older version of PingFederate to be compatible with the current version.</p>
</div>
<div class="paragraph">
<p>This makes it easier to upgrade to newer versions of PingFederate by allowing you to upgrade your configuration data without using the Upgrade Utility.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/upgrading_pingfederate/pf_upgrading_config_data.html" class="xref page">Upgrading configuration data</a> and <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_configurationarchivetasklet_configurationarchiveimportstate.html" class="xref page">Importing and deploying administrative console configuration data</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="automatic-configuration-data-replication"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#automatic-configuration-data-replication"></a>Automatic configuration data replication</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-36296</span></p>
</div>
<div class="paragraph">
<p>We’ve added a feature that allows PingFederate to automatically replicate configuration data archives to clustered server nodes when they uploaded to the drop-in deployer.</p>
</div>
<div class="paragraph">
<p>This makes it easier to ensure that your clustered nodes have the same configuration data.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/upgrading_pingfederate/pf_upgrading_config_data.html" class="xref page">Upgrading configuration data</a> and <a href="https://docs.pingidentity.com/pingfederate/server_clustering_guide/pf_config_archiv_deploy.html" class="xref page">Configuration-archive deployment</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="token-exchange-processor-policies-in-persistent-grants"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#token-exchange-processor-policies-in-persistent-grants"></a>Token exchange processor policies in persistent grants</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-35857</span></p>
</div>
<div class="paragraph">
<p>We’ve added a feature that allows you to also get a refresh token during OAuth token exchange.</p>
</div>
<div class="paragraph">
<p>This allows you to make extended interactions without using long-lived access tokens received from token exchange.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_managing_processor_policy_grant_mapping.html" class="xref page">Managing processor policy grant mapping</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="token-endpoint-response-customization"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#token-endpoint-response-customization"></a>Token Endpoint response customization</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-35863</span></p>
</div>
<div class="paragraph">
<p>We’ve added a feature that allows you to customize which attributes are returned in the Token Endpoint response based on the scopes that are included in the request.</p>
</div>
<div class="paragraph">
<p>This improves flexibility by giving you more control over where PingFederate can return attributes.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_defining_token_endpoint_management_contract.html" class="xref page">Defining the token endpoint management contract</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="admin-api-error-response"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#admin-api-error-response"></a>Admin API error response</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-36602</span></p>
</div>
<div class="paragraph">
<p>We’ve improved the error output for the Administrative API. When access to the administrative API in configured to use <a href="https://docs.pingidentity.com/pingfederate/developers_reference_guide/pf_enable_oauth20_authoriz.html" class="xref page">OAuth 2.0</a> or <a href="https://docs.pingidentity.com/pingfederate/developers_reference_guide/pf_enabling_jwt_authorization.html" class="xref page">JWT</a> authorization, and the access token is invalid, the error response now includes both <code class="codeph">error</code> and <code class="codeph">error_description</code> in the WWW-Authentication header.</p>
</div>
<div class="paragraph">
<p>This improves troubleshooting by providing an error code and description when authorization fails.</p>
</div>
</div>
<div class="sect3">
<h4 id="cidr-authentication-selector-description-field"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#cidr-authentication-selector-description-field"></a>CIDR Authentication Selector description field</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-36291</span></p>
</div>
<div class="paragraph">
<p>We’ve added an optional description field to the CIDR Authentication Selector.</p>
</div>
<div class="paragraph">
<p>This helps you keep track of your defined network ranges by giving them an easily identifiable name.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_config_cidr_auth_selector.html" class="xref page">Configuring the CIDR Authentication Selector</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="id-token-included-in-token-exchange"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#id-token-included-in-token-exchange"></a>ID token included in token exchange</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-35859</span></p>
</div>
<div class="paragraph">
<p>We’ve added a feature that allows PingFederate to include an ID token along with an access token and refresh token in OAuth token exchanges.</p>
</div>
<div class="paragraph">
<p>This can improve your end-user experience by passing ID token information along with access tokens during SSO and other token exchange operations.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_policymanagementtasklet_policymanagementstate.html" class="xref page">Configuring policy and ID token settings</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="logs-in-json-format"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#logs-in-json-format"></a>Logs in JSON format</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-36317</span></p>
</div>
<div class="paragraph">
<p>We’ve added support for JSON formatted logging for most PingFederate logs through the log4j2 logging library.</p>
</div>
<div class="paragraph">
<p>This improves your ability to monitor PingFederate perfomance by producing logs in an easily parsed standard format.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_logging_json_format.html" class="xref page">Logging in JSON format</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="collect-support-data-in-the-admin-console"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#collect-support-data-in-the-admin-console"></a>Collect support data in the admin console</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-35420</span></p>
</div>
<div class="paragraph">
<p>We’ve added a feature that allows you to collect support data using the administrative console and the administrative API.</p>
</div>
<div class="paragraph">
<p>This will improve your Ping Identity Support experience by allowing you to more easily customize and collect support data.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_collecting_support_data_admin_console.html" class="xref page">Collecting support data in the administrative console</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="oauth-client-name-in-html-form-templates"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oauth-client-name-in-html-form-templates"></a>OAuth client name in HTML form templates</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-29353</span></p>
</div>
<div class="paragraph">
<p>We’ve added the ability to include the name of OAuth clients in HTML form login templates. You can use the <em>$escape</em> utility with the  <em>$clientName</em> variable to include the client name.</p>
</div>
<div class="paragraph">
<p>This allows you to track the name of the client you use when customizing user-facing login pages.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_custom_user_facing_pages.html" class="xref page">Customizable user-facing pages</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="tls-1-3-support-for-hsms"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#tls-1-3-support-for-hsms"></a>TLS 1.3 support for HSMs</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-35854</span></p>
</div>
<div class="paragraph">
<p>We’ve added TLS 1.3 support for Hardware Security Modules (HSMs). New installations of PingFederate will have TLS 1.3 enabled by default when in HSM mode.</p>
</div>
<div class="paragraph">
<p>This improves security by adding TLS by default to your HSM, and streamlines the HSM configuration process by removing a step to manually add TLS.</p>
</div>
</div>
<div class="sect3">
<h4 id="device-authorization-grants-include-server-settings"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#device-authorization-grants-include-server-settings"></a>Device authorization grants include server settings</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-35858</span></p>
</div>
<div class="paragraph">
<p>We’ve added a feature that allows PingFederate to return ID tokens when issuing OpenID device authorization grants.</p>
</div>
<div class="paragraph">
<p>This allows you to personalize response messages during device authorization flows. For example, you can display the user’s name as part of the authorization message.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_authorizationserversettingstasklet_oauthauthorizationserversettingsstate.html" class="xref page">Configuring authorization server settings</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="google-cloud-kms-support"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#google-cloud-kms-support"></a>Google Cloud KMS Support</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-36302</span></p>
</div>
<div class="paragraph">
<p>We’ve added support for Google Cloud Key Management System (KMS).</p>
</div>
<div class="paragraph">
<p>This improves security by allowing you to encrypt the master key file when PingFederate is running in Google Cloud Platform.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_implement_masterkey_encrypt_google_cloud_kms.html" class="xref page">Implementing a MasterKeyEncryptor using Google Cloud KMS</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="disable-maxmaliciousactions-parameter-globally"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#disable-maxmaliciousactions-parameter-globally"></a>Disable <code>MaxMaliciousActions</code> parameter globally</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-36298</span></p>
</div>
<div class="paragraph">
<p>We’ve made it possible to globally disable the <code class="parmname">MaxMaliciousActions</code> parameter in the <code class="filepath">&lt;pf-install&gt;/pingfederate/server/default/data/config-store/com.pingidentity.common.security.AccountLockingService.xml</code> file.</p>
</div>
<div class="paragraph">
<p>This prevents an issue during upgrades where PingFederate unintentionally locks out an OAuth client when it tries to revoke invalid Reference Bearer Access Tokens.</p>
</div>
</div>
<div class="sect3">
<h4 id="override-maxmaliciousactions-parameter-for-oauth-client"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#override-maxmaliciousactions-parameter-for-oauth-client"></a>Override <code>MaxMaliciousActions</code> parameter for OAuth client</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-36299</span></p>
</div>
<div class="paragraph">
<p>We’ve made it possible to override the <code class="parmname">MaxMaliciousActions</code> parameter in the <code class="filepath">&lt;pf-install&gt;/pingfederate/server/default/data/config-store/com.pingidentity.common.security.AccountLockingService.xml</code>  file as it applies to an OAuth client.</p>
</div>
<div class="paragraph">
<p>This prevents an issue during upgrades where PingFederate unintentionally locks out an OAuth client when it tries to revoke Reference Bearer Access Tokens.</p>
</div>
<div class="paragraph">
<p>We’ve also improved the error messaging to clarify when it’s the client, not the account, that’s locked out.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_authorizationserversettingstasklet_oauthauthorizationserversettingsstate.html" class="xref page">Configuring authorization server settings</a> and <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_clientsettingstasklet_oauthdynamicclientregistrationdefaultsstate.html" class="xref page">Managing client configuration defaults</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="admin-api-jwt-authorization"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#admin-api-jwt-authorization"></a>Admin API JWT authorization</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-35855</span></p>
</div>
<div class="paragraph">
<p>We’ve added new feature that allows clients to access the Administrative API using a <span class="fr-alt fr-glossentry" title="<div class=&quot;paragraph&quot;>
<p>An IETF standard container format for a JSON object used for the secure exchange of content, such as identity or entitlement information. You can find the industry standard in <a href=&quot;https://datatracker.ietf.org/doc/html/rfc7519&quot;>RFC 7519</a>.</p>
</div>">JWT</span>.</p>
</div>
<div class="paragraph">
<p>This improves flexibility by adding a new secure method for your applications to access PingFederate administrative functions.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/developers_reference_guide/pf_enabling_jwt_authorization.html" class="xref page">Enabling JWT authorization</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="oauth-admin-api-access-token-scopes-are-optional"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oauth-admin-api-access-token-scopes-are-optional"></a>OAuth Admin API access token scopes are optional</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-36588</span></p>
</div>
<div class="paragraph">
<p>PingFederate can now accept OAuth access tokens without scopes through the Admin API.</p>
</div>
</div>
<div class="sect3">
<h4 id="jgroups-maximum-thread-pool-size"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#jgroups-maximum-thread-pool-size"></a>JGroups maximum thread pool size</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-34715</span></p>
</div>
<div class="paragraph">
<p>We’ve moved the setting for JGroups maximum thread pool size from <code class="filepath">tcp.xml</code> and <code class="filepath">udp.xml</code> to <code class="filepath">run.properties</code>.</p>
</div>
<div class="paragraph">
<p>This new parameter in the <code class="filepath">run.properties</code> file allows you to configure your JGroups thread pool more easily and ensure that changes are carried over during upgrade.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/server_clustering_guide/pf_deploying_cluster_servers.html" class="xref page">Deploying cluster servers</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="customize-jetty-runtime-logs-format"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#customize-jetty-runtime-logs-format"></a>Customize Jetty runtime logs format</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-32832</span></p>
</div>
<div class="paragraph">
<p>We’ve added the <code class="codeph">jetty.runtime.requestlog.format</code> property to the <code class="filepath">run.properties</code> file to allow you to customize the format of the Jetty runtime log request.</p>
</div>
<div class="paragraph">
<p>You can use this property to add milliseconds to your log format, which is helpful for troubleshooting high volumes of requests.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_config_pf_propert.html" class="xref page">Configuring PingFederate properties</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="google-recaptcha-enterprise-support"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#google-recaptcha-enterprise-support"></a>Google reCAPTCHA Enterprise support</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-35861</span></p>
</div>
<div class="paragraph">
<p>We’ve added support for Google reCAPTCHA Enterprise.</p>
</div>
<div class="paragraph">
<p>reCAPTCHA Enterprise can handle higher volumes of assessment transactions and offers more levels of bot score granularity.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_configuring_google_recaptcha_enterprise.html" class="xref page">Configuring Google reCAPTCHA Enterprise</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="userinfo-endpoint-jwt-support"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#userinfo-endpoint-jwt-support"></a>UserInfo endpoint JWT support</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-35862</span></p>
</div>
<div class="paragraph">
<p>We’ve added JSON web token (JWT) support to PingFederate’s UserInfo endpoint when acting as the OpenId provider (OP). As the relying party (RP), PingFederate now supports consuming JWT-based responses from other OPs UserInfo endpoint.</p>
</div>
<div class="paragraph">
<p>This improves security by replacing information sent in JSON form with a signed token, an encrypted token, or both.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_configuring_oauth_clients.html" class="xref page">Configuring OAuth clients</a> and <a href="https://docs.pingidentity.com/pingfederate/developers_reference_guide/pf_oauth_client_manage_service.html" class="xref page">OAuth Client Management Service</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="improved-provisioner-logging"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#improved-provisioner-logging"></a>Improved provisioner logging</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span>
<span class="ping_ticket">PF-28890</span></p>
</div>
<div class="paragraph">
<p>We’ve added a new <code class="filepath">provisioner-channel-summary.log</code> file to capture data about users and groups added, removed, and updated by provisioning cycles. We’ve also added new information at the INFO level to the <code class="filepath">provisioner.log</code> and <code class="filepath">provisioner-audit.log</code> files.</p>
</div>
<div class="paragraph">
<p>These updates give you improved summary information about provisioning operations without the unnecessary detail of DEBUG-level logging.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_log_files.html" class="xref page">PingFederate log files</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="pingone-verify-integration-kit-update"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingone-verify-integration-kit-update"></a>PingOne Verify Integration Kit update</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span>
<span class="ping_ticket">PF-36573</span></p>
</div>
<div class="paragraph">
<p>The PingOne Verify Integration Kit has been updated to version 2.2.2.</p>
</div>
</div>
<div class="sect3">
<h4 id="pingone-mfa-integration-kit-update"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingone-mfa-integration-kit-update"></a>PingOne MFA Integration Kit update</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span>
<span class="ping_ticket">PF-36573</span></p>
</div>
<div class="paragraph">
<p>The PingOne MFA Integration Kit has been updated to version 2.5.</p>
</div>
</div>
<div class="sect3">
<h4 id="microsoft-eam"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#microsoft-eam"></a>Microsoft EAM</h4>
<div class="paragraph">
<p>PingFederate now supports Microsoft External Authentication Method (EAM) to handle <span class="fr-alt fr-glossentry" title="<div class=&quot;paragraph&quot;>
<p>An electronic authentication method where a user is granted access only after presenting two or more verification factors for authentication.</p>
</div>">multi-factor authentication (MFA)</span> flows with PingID or other MFA integrations.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://support.pingidentity.com/s/marketplace-integration/a7iUJ00000010M9YAI/microsoft-eam-integration-kit" target="_blank" rel="noopener">Microsoft EAM Integration Kit</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="active-directory-2022-compatibility"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#active-directory-2022-compatibility"></a>Active Directory 2022 compatibility</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_ticket">PF-35782</span></p>
</div>
<div class="paragraph">
<p>We’ve confirmed that PingFederate 12.2 and 12.1 are compatible with Microsoft Active Directory 2022.</p>
</div>
</div>
<div class="sect3">
<h4 id="postgresql-16-4-and-17-compatibility"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#postgresql-16-4-and-17-compatibility"></a>PostgreSQL 16.4 and 17 compatibility</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_ticket">PF-36312</span>
<span class="ping_ticket">PF-36288</span></p>
</div>
<div class="paragraph">
<p>We’ve confirmed that PingFederate version 12.2 is compatible with PostgreSQL versions 16.4 and 17.</p>
</div>
</div>
<div class="sect3">
<h4 id="amazon-aurora-postgresql-16-4-compatibility"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#amazon-aurora-postgresql-16-4-compatibility"></a>Amazon Aurora PostgreSQL 16.4 compatibility</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_ticket">PF-36289</span></p>
</div>
<div class="paragraph">
<p>We’ve confirmed that PingFederate is compatible with Amazon Aurora PostgreSQL version 16.4.</p>
</div>
</div>
<div class="sect3">
<h4 id="jose4j-library"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#jose4j-library"></a>jose4j library</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_ticket">PF-36445</span></p>
</div>
<div class="paragraph">
<p>PingFederate now uses the jose4j library version 0.9.6.</p>
</div>
</div>
<div class="sect3">
<h4 id="apache-commons-compress"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#apache-commons-compress"></a>Apache Commons Compress</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_ticket">PF-36446</span></p>
</div>
<div class="paragraph">
<p>PingFederate now uses Apache Commons Compress library version 1.27.1.</p>
</div>
</div>
<div class="sect3">
<h4 id="aws-kms-library"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#aws-kms-library"></a>AWS KMS library</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_ticket">PF-36579</span></p>
</div>
<div class="paragraph">
<p>We’ve upgraded the Amazon Web Services (AWS) Key Management Service (KMS) master-key-encryptor library to the latest version as of this release.</p>
</div>
</div>
<div class="sect3">
<h4 id="correlation-id-request-header"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#correlation-id-request-header"></a>Correlation ID request header</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_ticket">PF-36675</span></p>
</div>
<div class="paragraph">
<p>Forward slashes are now valid characters in the request header for correlation ID.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_general_settings.html" class="xref page">General settings</a> and <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_correlat_pf_events_pd_ldap_activities.html" class="xref page">Correlating PingFederate events with PingDirectory LDAP activities</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="provisioning-flag-comparison-value-now-case-insensitive"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#provisioning-flag-comparison-value-now-case-insensitive"></a>Provisioning Flag Comparison Value now case-insensitive</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">info</span>
<span class="ping_ticket">PF-36276</span></p>
</div>
<div class="paragraph">
<p>We’ve updated the provisioning Flag Comparison Value attribute to be case-insensitive.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_modifying_source_settings.html" class="xref page">Modifying source settings</a>.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="resolved-issues-19"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-19"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="auditor-access-to-ldap-credentials"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#auditor-access-to-ldap-credentials"></a>Auditor access to LDAP credentials</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-35092</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a security vulnerability that could have allowed auditors to access LDAP credentials stored in configured datastores.</p>
</div>
</div>
<div class="sect3">
<h4 id="ip-addresses-accessible-using-partner-metadata-url-loader"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#ip-addresses-accessible-using-partner-metadata-url-loader"></a>IP addresses accessible using Partner Metadata URL loader</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-35279</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a security vulnerability that could have allowed malicious actors to use the Partner Metadata URL loader to list the IP addresses of network assets.</p>
</div>
</div>
<div class="sect3">
<h4 id="validaterelaystatelength-parameter"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#validaterelaystatelength-parameter"></a><code class="parmname">ValidateRelayStateLength</code> parameter</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35847</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that cause the <code class="parmname">ValidateRelayStateLength</code> parameter in the <code class="filepath">org.sourceid.saml20.bindings.AbstractAsyncBinding.xml</code> file to be evaluated only on startup. Now, the parameter is always evaluated in runtime flows.</p>
</div>
</div>
<div class="sect3">
<h4 id="unexpected-error-when-replicating-an-active-admin-console"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#unexpected-error-when-replicating-an-active-admin-console"></a>Unexpected error when replicating an active admin console</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35919</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused PingFederate to return an unexpected error when replicating on a newly promoted passive admin node after deleting connections or clients on the previously active admin node.</p>
</div>
</div>
<div class="sect3">
<h4 id="kerberos-and-form-sso-policy-fails-in-ios"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#kerberos-and-form-sso-policy-fails-in-ios"></a>Kerberos and Form SSO policy fails in iOS</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35990</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused Kerberos and Form SSO policies to fail when a user attempted SSO using iOS.</p>
</div>
</div>
<div class="sect3">
<h4 id="provisioning-character-limit"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#provisioning-character-limit"></a>Provisioning character limit</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36035</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused outbound provisioning to fail and cease if a source user object exceeded a 255-character limit. In the new behavior, PingFederate will skip user objects that exceed 255 characters and log a warning.</p>
</div>
</div>
<div class="sect3">
<h4 id="pingdirectory-password-warning"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingdirectory-password-warning"></a>PingDirectory password warning</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36232</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that prevented PingFederate from issuing a password expiration warning when using PingDirectory as a datastore.</p>
</div>
</div>
<div class="sect3">
<h4 id="multiple-application-requests-within-a-browser"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#multiple-application-requests-within-a-browser"></a>Multiple application requests within a browser</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36239</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that could cause inconsistent sessions or authentication errors when starting multiple applications in different browser tabs at the same time.</p>
</div>
</div>
<div class="sect3">
<h4 id="unsupported-data-archive-using-drop-in-deployer"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#unsupported-data-archive-using-drop-in-deployer"></a>Unsupported data archive using drop-in deployer</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36478</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused PingFederate to fail to restart when forcing an import of an unsupported configuration data archive using the drop-in deployer.</p>
</div>
</div>
<div class="sect3">
<h4 id="replication-warning-banner"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#replication-warning-banner"></a>Replication warning banner</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36546</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused the banner message warning that a configuration is out of date to persist after a configuration had been replicated. This defect occurred when running PingFederate as a Windows service.</p>
</div>
</div>
<div class="sect3">
<h4 id="missing-log-details"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#missing-log-details"></a>Missing log details</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36550</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused PingFederate to log errors excluding details of what error occurred. The fix now includes missing details.</p>
</div>
</div>
<div class="sect3">
<h4 id="email-verification-failure-after-registration-workflow"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#email-verification-failure-after-registration-workflow"></a>Email verification failure after registration workflow</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36574</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused the email verification screen to fail to appear when a user registered through an authentication source.</p>
</div>
</div>
<div class="sect3">
<h4 id="multi-part-refresh-token-revocation-failure"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#multi-part-refresh-token-revocation-failure"></a>Multi-part refresh token revocation failure</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36600</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed an issue that caused PingFederate to fail to revoke multi-part refresh tokens through the <code class="codeph">revoke_token.oauth2</code> endpoint.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="known-issues-and-limitations-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#known-issues-and-limitations-4"></a>Known issues and limitations</h3>
<div class="sect3">
<h4 id="pingone-verify-ik-unexpected-error-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingone-verify-ik-unexpected-error-3"></a>PingOne Verify IK unexpected error</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span>
<span class="ping_ticket">PF-36573</span></p>
</div>
<div class="paragraph">
<p>PingFederate returns an unexpected error when you create an instance of the PingOne Verify Integration Kit version 2.2.2 in PingFederate with the Verify feature in PingOne disabled.</p>
</div>
</div>
<div class="sect3">
<h4 id="reencrypt-data-archive-failure-with-google-cloud-kms"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#reencrypt-data-archive-failure-with-google-cloud-kms"></a>Reencrypt data archive failure with Google Cloud KMS</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span>
<span class="ping_ticket">PF-36487</span></p>
</div>
<div class="paragraph">
<p>When PingFederate is configured to use the Amazon Web Services or Google Cloud Platform Key Management System (KMS), importing a valid configuration data archive with <strong class="uicontrol">Reencrypt Data</strong> enabled fails with a <code class="msgph">Could not reencrypt data archive</code> error message. This failure causes PingFederate to fail to restart.</p>
</div>
</div>
<div class="sect3">
<h4 id="third-party-cookie-blocking-affecting-single-logout-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#third-party-cookie-blocking-affecting-single-logout-3"></a>Third-party cookie blocking affecting single logout</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span>
<span class="ping_ticket">PF-35772</span></p>
</div>
<div class="paragraph">
<p>Due to multiple vendors' recent browser versions that block third-party cookies, you might experience issues related to single logout with OIDC (via Front-Channel) and WS-Federation.</p>
</div>
<div class="paragraph">
<p>Refer to browsers' documentation regarding third-party cookie management to unblock them, if feasible.</p>
</div>
</div>
<div class="sect3">
<h4 id="passive-admin-console-ui-refresh-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#passive-admin-console-ui-refresh-3"></a>Passive admin console UI refresh</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span>
<span class="ping_ticket">PF-35643</span></p>
</div>
<div class="paragraph">
<p>When you promote a passive admin console to active, the UI doesn’t refresh until you perform an action.</p>
</div>
</div>
<div class="sect3">
<h4 id="multiple-active-admin-consoles-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#multiple-active-admin-consoles-3"></a>Multiple active admin consoles</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span>
<span class="ping_ticket">PF-35439</span></p>
</div>
<div class="paragraph">
<p>When you make configuration changes on the active console (especially large configuration changes like bulk imports or data archive imports), then promote a passive console to active, it can cause multiple consoles to be active at once. This can result in inconsistent configurations.</p>
</div>
<div class="paragraph">
<p>Learn how to resolve this issue in <a href="https://docs.pingidentity.com/pingfederate/server_clustering_guide/pf_resolving_multiple_active_admin_nodes.html" class="xref page">Resolving multiple active administrative nodes</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="administrative-console-and-administrative-api-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#administrative-console-and-administrative-api-3"></a>Administrative console and administrative API</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>Although PingFederate 11.3 and later support DPoP, a known limitation is that the following features don’t support DPoP when PingFederate is the RP:</p>
<div class="ulist">
<ul>
<li>
<p>The administrative console authentication scheme using OIDC</p>
</li>
<li>
<p>The administrative API authentication scheme using OAuth 2.0</p>
</li>
</ul>
</div>
</li>
<li>
<p>/bulk: Only resource types currently supported by the administrative API are included in the exported data. We don’t intend to introduce administrative API support to the following areas:</p>
<div class="ulist">
<ul>
<li>
<p><a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_configuring_standard_idp_discovery.html" class="xref page">SAML 2.0 IdP Discovery</a></p>
</li>
<li>
<p><a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_affiliationstasklet_affiliationmgmtstate.html" class="xref page">SAML 2.0 SP Affiliation</a></p>
</li>
<li>
<p><a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_smsprovidersettingstasklet_smsprovidersettingsstate.html" class="xref page">SMS Provider</a></p>
</li>
</ul>
</div>
</li>
<li>
<p>Previously, the administrative API did not accurately reflect a <strong class="uicontrol">Persistent Grant Max Lifetime</strong> setting of 29 days (or shorter) with the selection of the <strong class="uicontrol">Grants Do Not Timeout Due To Inactivity</strong> option. As a result, if you have configured such OAuth authorization server settings and have generated a bulk export in version 10.0 through 10.0.2, we recommend that you re-generate a new bulk export after upgrading to version 10.0.3 (or a more recent version). The newly exported data does not contain the aforementioned flaw, and you can safely import it to version 10.0.3 (or a more recent version).</p>
</li>
<li>
<p>When enabling mTLS certificate-based authentication, administrators often configure a list of acceptable client certificate issuers. When you use a browser to access the console or the administrative API documentation, PingFederate returns to the browser the list of acceptable issuers as part of the TLS handshake. If the browser’s client certificate store contains multiple client certificates, the browser often presents you only the certificates whose issuer matches one of the acceptable issuers. However, when PingFederate runs in a Java 11 environment, Chrome presents you all its configured client certificates, regardless of whether the issuer matches one of the acceptable issuers or not.</p>
</li>
<li>
<p>When using mTLS authentication to authenticate to an LDAP server for administrative console or administrative API access, PingFederate doesn’t support using a Microsoft Active Directory server.</p>
</li>
<li>
<p>Prior to toggling the status of a connection with the administrative API, you must ensure that any expired certificates or no longer available attributes are replaced with valid certificates or attributes; otherwise, the update request fails.</p>
</li>
<li>
<p>When creating or updating a child instance of a hierarchical plugin, the administrative API retains objects with an <code class="codeph">"inherited": false</code> name/value pair (or without such name/value pair altogether), ignores those with a value of <code class="codeph">true</code>, and returns a 200 HTTP status code. No error messages are returned for the ignored objects.</p>
</li>
<li>
<p>Using the browser’s navigation mechanisms (for example, the <strong class="uicontrol">Back</strong> button) causes inconsistent behavior in the administrative console. Use the navigation buttons provided at the bottom of windows in the PingFederate console.</p>
</li>
<li>
<p>Using the PingFederate console in multiple tabs on one browser might cause inconsistent behavior which could corrupt its configuration.</p>
</li>
<li>
<p>If authenticated to the PingFederate administrative console using certificate authentication, a session that has timed out might not appear to behave as expected. Normally (when using password authentication), when a session has timed out and a user attempts some action in the console, the browser is redirected to the sign-on page, and then back to the administrative console after authentication is complete. Similar behavior applies for certificate authentication, in principle. However, because the browser might automatically resubmit the certificate for authentication, the browser might redirect to the administrative console and not the sign on page.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="tls-cipher-suite-customization-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#tls-cipher-suite-customization-3"></a>TLS cipher suite customization</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>PingFederate’s TLS cipher suites can be customized by modifying <code class="filepath">com.pingidentity.crypto.SunJCEManager.xml</code> (or a similarly-named file if BCFIPS or an HSM is configured). After updating the file and replicating, all cluster nodes must be restarted for the change to take effect.</p>
</div>
</div>
<div class="sect3">
<h4 id="java-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#java-3"></a>Java</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>Updating Java version 8 to version 11 results in an error when PingFederate is already installed and running on Windows. To work around this issue, uninstall and reinstall the PingFederate Windows service by running the <code class="filepath">UninstallPingFederateService.bat</code> and <code class="filepath">InstallPingFederateService.bat</code> files located in <code class="filepath"><em class="varname">&lt;pf_install&gt;</em>/pingfederate/sbin/wrapper</code>.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="hsms-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#hsms-3"></a>HSMs</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>AWS CloudHSM</p>
</div>
<div class="ulist">
<ul>
<li>
<p>It is not possible to use an elliptic curve (EC) certificate as an SSL server certificate.</p>
</li>
<li>
<p>TLS 1.3 is not currently supported with Oracle JDK 11 and 17.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Thales HSMs</p>
</div>
<div class="ulist">
<ul>
<li>
<p>JWT token decryption using ECDH-ES may fail. This issue only arises if PingFederate is configured with static OAuth and OpenID Connect keys, a static key is stored on the HSM, and PingFederate is consuming a token encrypted with this key.</p>
</li>
<li>
<p>It is not possible to use an EC certificate as an SSL server certificate.</p>
</li>
<li>
<p>TLS 1.3 is not currently supported with Oracle JDK 11 and 17.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Entrust HSMs</p>
</div>
<div class="ulist">
<ul>
<li>
<p>JWT token decryption using ECDH-ES may fail. This issue only arises if PingFederate is configured with static OAuth and OpenID Connect keys, a static key is stored on the HSM, and PingFederate is consuming a token encrypted with this key.</p>
</li>
<li>
<p>It is not possible to import a PKCS12- or PEM-formatted EC certificate.</p>
</li>
<li>
<p>It is not possible to use an EC certificate as an SSL server certificate.</p>
</li>
<li>
<p>TLS 1.3 is not currently supported with Oracle JDK 11 and 17.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="sso-and-slo-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#sso-and-slo-3"></a>SSO and SLO</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>When consuming SAML metadata, PingFederate does not report an error when neither the <code class="parmname">validUntil</code> nor the <code class="parmname">cacheDuration</code> attribute is included in the metadata. Note that PingFederate does reject expired SAML metadata as indicated by the <code class="parmname">validUntil</code> attribute value, if it is provided.</p>
</li>
<li>
<p>The anchored-certificate trust model cannot be used with the single logout (SLO) redirect binding because the certificate cannot be included with the logout request.</p>
</li>
<li>
<p>If an IdP connection is configured for multiple virtual server IDs, PingFederate will always use the default virtual server ID for IdP Discovery during an SP-initiated SSO event.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="composite-adapter-configuration-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#composite-adapter-configuration-3"></a>Composite Adapter configuration</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>SLO is not supported when users are authenticated through a Composite Adapter instance that contains another instance of the Composite Adapter.</p>
</div>
</div>
<div class="sect3">
<h4 id="self-service-password-reset-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#self-service-password-reset-3"></a>Self-service password reset</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>Passwords can be reset for Microsoft Active Directory user accounts without the permission to change password.</p>
</div>
</div>
<div class="sect3">
<h4 id="oauth-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oauth-3"></a>OAuth</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>PingFederate does not support a case-sensitive naming convention for OAuth client ID values when client records are stored in a directory server. For example, after creating a client with an ID value of <code class="codeph">sampleClient</code>, PingFederate does not allow the creation of another client with an ID value of <code class="codeph">SampleClient</code>.</p>
</div>
<div class="paragraph">
<p>Although it’s possible to create clients using the same ID values with different casings when client records are stored in XML files, a database server, or custom storage, we recommend not doing so to avoid potential record migration issues.</p>
</div>
</div>
<div class="sect3">
<h4 id="customer-identity-and-access-management-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#customer-identity-and-access-management-3"></a>Customer identity and access management</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>Some browsers display a date-picker user interface for fields that have been designed for date-specific inputs. Some browsers do not. If one or more date-specific fields are defined on the registration page or the profile management page (or both), end users must enter the dates manually if their browsers do not display a date-picker user interface for those fields.</p>
</div>
</div>
<div class="sect3">
<h4 id="provisioning-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#provisioning-3"></a>Provisioning</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>LDAP referrals return an error and cause provisioning to fail if the <code class="parmname">user</code> or <code class="parmname">group</code> objects are defined at the DC level, and not within an OU or within the Users CN.</p>
</li>
<li>
<p>The <code class="parmname">totalResults</code> value in SCIM responses indicates the number of results returned in the current response, not the total number of estimated results on the LDAP server.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="logging-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#logging-3"></a>Logging</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>If a source attribute has been configured for masking in an IdP adapter or IdP connection and the source attribute is mapped to OAuth’s persistent grant <code class="parmname">USER_KEY</code> attribute, the <code class="parmname">USER_KEY</code> attribute will not be masked in the server logs. Other persistent grant attributes will be masked.</p>
</li>
<li>
<p>Even if a source attribute has been configured for masking in an IdP adapter and the source attribute is mapped as the adapter’s unique user key, the user key attribute is not masked in the server or audit logs.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="database-logging-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#database-logging-3"></a>Database logging</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>If a source attribute has been configured for masking in an IdP adapter or IdP connection and the source attribute is mapped to OAuth’s persistent grant <code class="parmname">USER_KEY</code> attribute, the <code class="parmname">USER_KEY</code> attribute will not be masked in the server logs. Other persistent grant attributes will be masked.</p>
</li>
<li>
<p>Even if a source attribute has been configured for masking in an IdP adapter and the source attribute is mapped as the adapter’s unique user key, the user key attribute is not masked in the server or audit logs.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="radius-nas-ip-address-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#radius-nas-ip-address-3"></a>RADIUS NAS-IP-Address</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>The RADIUS NAS-IP-Address is only included in Access-Request packets when the <code class="codeph">pf.bind.engine.address</code> is set with an IPv4 address. IPv6 is not supported.</p>
</div>
</div>
<div class="sect3">
<h4 id="amazon-sns-notification-publisher-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#amazon-sns-notification-publisher-3"></a>Amazon SNS Notification Publisher</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>When deploying PingFederate with a forward proxy, plugins based on the AWS SDK, such as the Amazon SNS Notification Publisher, will only honor the <code class="codeph">http.proxyHost</code>, <code class="codeph">http.proxyPort</code>, <code class="codeph">http.proxyUser</code>, and <code class="codeph">http.proxyPassword</code> properties in <code class="filepath">run.properties</code>. The plugin will rely on these properties even if the service URL is <code class="codeph">https</code>.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="deprecated-features-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#deprecated-features-3"></a>Deprecated features</h3>
<div class="paragraph">
<p>No features were deprecated for PingFederate 12.2.</p>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 12.1.11 (May 2026)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-1-11-may-2026</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-1-11-may-2026</guid>
            <pubDate>Thu, 07 May 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="new-features-and-enhancements-11"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#new-features-and-enhancements-11"></a>New features and enhancements</h3>
<div class="sect3">
<h4 id="unconnected-cluster-node-startup-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#unconnected-cluster-node-startup-3"></a><em>Unconnected cluster node startup</em></h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span>
<span class="ping_ticket">PF-38898</span></p>
</div>
<div class="paragraph">
<p>PingFederate now supports the <code>force.require.replication.data.on.startup</code> parameter in the <code>cluster-config-replication.conf</code> file. This parameter allows you to prevent an engine node from starting up without establishing a connection to the cluster and retrieving replication data.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/12.1/administrators_reference_guide/pf_cluster_management.html" target="_blank" rel="noopener">Cluster management</a>.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="resolved-issues-20"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-20"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="ognl-code-test-access-control"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#ognl-code-test-access-control"></a><em>OGNL code test access control</em></h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-38742</span></p>
</div>
<div class="paragraph">
<p>We improved role-based access control (RBAC) for the administrative expression-testing endpoint. Access to expression evaluation is now limited to appropriately privileged roles, ensuring it aligns with intended administrative permissions.</p>
</div>
</div>
<div class="sect3">
<h4 id="url-validation-for-relaystate-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#url-validation-for-relaystate-4"></a><em>URL validation for RelayState</em></h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38028</span></p>
</div>
<div class="paragraph">
<p>We fixed a defect where PingFederate would reject requests with valid, non-encoded <code>RelayState</code> values.</p>
</div>
</div>
<div class="sect3">
<h4 id="administrative-api-authentication"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#administrative-api-authentication"></a><em>Administrative API authentication</em></h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38393</span></p>
</div>
<div class="paragraph">
<p>We fixed a defect that allowed Basic Authentication to access the Administrative API even when Basic Authentication was disabled in the <code>pf.admin.api.authentication</code> property.</p>
</div>
</div>
<div class="sect3">
<h4 id="authentication-policy-error-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#authentication-policy-error-4"></a><em>Authentication policy error</em></h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38623</span></p>
</div>
<div class="paragraph">
<p>We fixed a defect that caused an error when authentication policies with a Requested AuthN Context authentication had <strong>Add or Update AuthN Context Attribute</strong> enabled.</p>
</div>
</div>
<div class="sect3">
<h4 id="dynamic-jwks-rotation-timer-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#dynamic-jwks-rotation-timer-3"></a><em>Dynamic JWKS rotation timer</em></h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38903</span></p>
</div>
<div class="paragraph">
<p>We fixed a defect that prevented the dynamic JWKS rotation timer from resetting after a node joined a cluster.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 12.1.10 (October 2025)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-1-10-october-2025</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-1-10-october-2025</guid>
            <pubDate>Thu, 30 Oct 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-21"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-21"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="apache-commons-beanutils-and-commons-compress-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#apache-commons-beanutils-and-commons-compress-2"></a>Apache Commons BeanUtils and Commons Compress</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38029</span></p>
</div>
<div class="paragraph">
<p>PingFederate now uses the Apache Commons BeanUtils library version 1.11.0 and the Apache Commons Compress library version 1.26.1.</p>
</div>
</div>
<div class="sect3">
<h4 id="ldap-account-lockout-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#ldap-account-lockout-4"></a>LDAP account lockout</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38043</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where PingFederate could incorrectly lock user accounts during an LDAP connectivity failure with Active Directory. This fix applies to all LDAP datastore types except for Generic LDAP.</p>
</div>
</div>
<div class="sect3">
<h4 id="idp-adapter-duplicate-attribute-sources-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#idp-adapter-duplicate-attribute-sources-4"></a>IdP Adapter duplicate attribute sources</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38060</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused IdP adapters to duplicate attribute sources when an SP connection was updated using the Admin API.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 12.1.9 (September 2025)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-1-9-september-2025</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-1-9-september-2025</guid>
            <pubDate>Sat, 20 Sep 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-22"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-22"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="admin-console-ip-exposure-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#admin-console-ip-exposure-4"></a>Admin console IP exposure</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-33113</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a security vulnerability that could have allowed malicious parties to extract PingFederate administrative console IP addresses using HTTP Response headers.</p>
</div>
</div>
<div class="sect3">
<h4 id="host-header-redirect-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#host-header-redirect-4"></a>Host header redirect</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-37460</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a security vulnerability that could have allowed malicious parties to redirect PingFederate admin console traffic using a spoofed Host header.</p>
</div>
</div>
<div class="sect3">
<h4 id="refresh-token-mysql-deadlocks-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#refresh-token-mysql-deadlocks-3"></a>Refresh token MySQL deadlocks</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35868</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused multiple refresh token requests in short succession to result in <span class="fr-alt fr-glossentry" title="<div class=&quot;paragraph&quot;>
<p>A Java API that allows Java programs to interact with databases.</p>
</div>">JDBC</span> data source deadlocks and duplicated data entry into the database.</p>
</div>
<div class="paragraph">
<p>This change can cause significant performance issues if PingFederate or the JDBC data source has insufficient resources.</p>
</div>
</div>
<div class="sect3">
<h4 id="unnecessary-id-token-reissued-with-secondary-client-secret-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#unnecessary-id-token-reissued-with-secondary-client-secret-3"></a>Unnecessary ID token reissued with secondary client secret</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37450</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused the token endpoint to unnecessarily reissue an ID token when using a secondary client secret and an asymmetric algorithm for token signing and encryption.</p>
</div>
</div>
<div class="sect3">
<h4 id="virtual-hostname-accuracy-in-email-notifications-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#virtual-hostname-accuracy-in-email-notifications-4"></a>Virtual hostname accuracy in email notifications</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37964</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where a template variable incorrectly used the primary PingFederate base URL instead of the virtual hostname in some email notifications.</p>
</div>
</div>
<div class="sect3">
<h4 id="html-flow-login-and-authentication-api-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#html-flow-login-and-authentication-api-4"></a>HTML flow login and Authentication API</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38039</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that could potentially allow a user to access an HTML browser login page when the Authentication API redirectless mode is used.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://support.pingidentity.com/s/article/PingFederate-unexpected-template-rendering-in-redirectless-mode">PingFederate unexpected template rendering in redirectless mode</a> in the Support Knowledge Base.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 12.1.8 (May 2025)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-1-8-may-2025</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-1-8-may-2025</guid>
            <pubDate>Fri, 16 May 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="new-features-and-enhancements-12"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#new-features-and-enhancements-12"></a>New features and enhancements</h3>
<div class="sect3">
<h4 id="native_s3_ping-update-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#native_s3_ping-update-3"></a>NATIVE_S3_PING update</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_ticket">PF-37234</span></p>
</div>
<div class="paragraph">
<p>We’ve updated the behavior of the NATIVE_S3_PING discovery protocol when the <code class="parmname">remove_all_data_on_view_change</code> parameter is active.</p>
</div>
<div class="paragraph">
<p>Previously, the protocol would delete all files in the S3 bucket, which could lead to the creation of an unwanted subcluster.</p>
</div>
<div class="paragraph">
<p>Now the protocol deletes all files except for its own to prevent the S3 bucket from being empty.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/server_clustering_guide/pf_dynamic_cluster_discovery.html" class="xref page">Dynamic cluster discovery</a>.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="resolved-issues-23"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-23"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="secondary-secret-missing-id-token-claim-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#secondary-secret-missing-id-token-claim-3"></a>Secondary secret missing ID token claim</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37279</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused the ID token claim to be omitted when an OAuth client uses the secondary secret.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 12.1.7 (March 2025)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-1-7-march-2025</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-1-7-march-2025</guid>
            <pubDate>Tue, 25 Mar 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-24"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-24"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="http-connection-pool-tracking-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#http-connection-pool-tracking-2"></a>HTTP connection pool tracking</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37126</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that could cause PingFederate to generate a large number of metric objects unnecessarily when making HTTP requests, which affected performance.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 12.1.6 (February 2025)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-1-6-february-2025</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-1-6-february-2025</guid>
            <pubDate>Tue, 11 Feb 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="new-features-and-enhancements-13"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#new-features-and-enhancements-13"></a>New features and enhancements</h3>
<div class="sect3">
<h4 id="duplicate-rsa-key-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#duplicate-rsa-key-3"></a>Duplicate RSA key</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-36970</span></p>
</div>
<div class="paragraph">
<p>We’ve added a feature that gives you the option to include a duplicate RSA key with the RS256 algorithm. You can enable this option by setting the <code class="codeph">add-duplicate-rs256-alg-key</code> parameter in the <code class="filepath">&lt;pingfed-install&gt;/pingfederate/server/default/data/config-store/jwks-endpoint-configuration.xml</code> file to <code class="option">true</code>.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="resolved-issues-25"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-25"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="group-membership-loss-during-provisioning-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#group-membership-loss-during-provisioning-3"></a>Group membership loss during provisioning</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36874</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused PingFederate to lose user group membership information when it lost contact with the datastore during provisioning operations.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 12.1.5 (January 2025)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-1-5-january-2025</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-1-5-january-2025</guid>
            <pubDate>Fri, 10 Jan 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-26"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-26"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="cross-site-scripting"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#cross-site-scripting"></a>Cross-site scripting</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-36304</span>
<span class="ping_ticket">PF-36311</span>
<span class="ping_ticket">PF-36313</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a security vulnerability where PingFederate accepted cross-site scripting inputs.</p>
</div>
</div>
<div class="sect3">
<h4 id="email-verification-failure-after-registration-workflow-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#email-verification-failure-after-registration-workflow-2"></a>Email verification failure after registration workflow</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36574</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused the email verification screen to fail to appear when a user registered through an authentication source.</p>
</div>
</div>
<div class="sect3">
<h4 id="multi-part-refresh-token-revocation-failure-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#multi-part-refresh-token-revocation-failure-2"></a>Multi-part refresh token revocation failure</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36600</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed an issue that caused PingFederate to fail to revoke multi-part refresh tokens through the <code class="codeph">revoke_token.oauth2</code> endpoint.</p>
</div>
</div>
<div class="sect3">
<h4 id="oauth-client-set-authentication-selector-with-dynamodb"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oauth-client-set-authentication-selector-with-dynamodb"></a>OAuth Client Set Authentication Selector with DynamoDB</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36662</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused an error in searching for OAuth Client for OAuth Client Set Authentication Selector when DynamoDB is the client storage.</p>
</div>
</div>
<div class="sect3">
<h4 id="admin-api-provisioning-connection-attributes"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#admin-api-provisioning-connection-attributes"></a>Admin API provisioning connection attributes</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36816</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect when using the PingFederate Administrative API <code class="codeph">sp/idpConnections</code> endpoint to create or update inbound provisioning connections. The API returned errors about <code class="codeph">coreAttributes</code> values missing from the JSON payload even though the attributes were not required.</p>
</div>
</div>
<div class="sect3">
<h4 id="refresh-token-error-when-authorization-bypass-enabled-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#refresh-token-error-when-authorization-bypass-enabled-3"></a>Refresh token error when authorization bypass enabled</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36851</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused PingFederate to return a revoked or expired consent error when both <strong class="uicontrol">Bypass Authorization Approval</strong> and <strong class="uicontrol">Bypass Authorization Approval for Previously Approved Consents</strong> are enabled.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 12.1.4 (November 2024)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-1-4-november-2024</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-1-4-november-2024</guid>
            <pubDate>Tue, 05 Nov 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-27"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-27"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="disable-maxmaliciousactions-parameter"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#disable-maxmaliciousactions-parameter"></a>Disable <code>MaxMaliciousActions</code> parameter</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-36298</span></p>
</div>
<div class="paragraph">
<p>We’ve made it possible to globally disable the <code class="parmname">MaxMaliciousActions</code> parameter in the <code class="filepath">com.pingidentity.common.security.AccountLockingService</code> file.</p>
</div>
<div class="paragraph">
<p>This will prevent an issue during upgrades where PingFederate unintentionally locks out an OAuth client when it tries to revoke Reference Bearer Access Tokens.</p>
</div>
</div>
<div class="sect3">
<h4 id="unexpected-error-when-replicating-an-active-admin-console-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#unexpected-error-when-replicating-an-active-admin-console-2"></a>Unexpected error when replicating an active admin console</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35919</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused PingFederate to return an unexpected error when replicating on a newly promoted passive admin node after deleting connections or clients on the previously active admin node.</p>
</div>
</div>
<div class="sect3">
<h4 id="provisioning-character-limit-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#provisioning-character-limit-2"></a>Provisioning character limit</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36035</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused outbound provisioning to fail and cease if a source user object exceeded a 255-character limit. In the new behavior, PingFederate will skip user objects that exceed 255 characters and log a warning.</p>
</div>
</div>
<div class="sect3">
<h4 id="api-datastore-sends-content-type-for-get-requests"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#api-datastore-sends-content-type-for-get-requests"></a>API Datastore sends Content-Type for GET requests</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36194</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused the PingFederate REST API Datastore to unnecessarily include a Content-Type value when sending GET requests.</p>
</div>
</div>
<div class="sect3">
<h4 id="pingdirectory-password-warning-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingdirectory-password-warning-2"></a>PingDirectory password warning</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36232</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that prevented PingFederate from issuing a password expiration warning when using PingDirectory as a datastore.</p>
</div>
</div>
<div class="sect3">
<h4 id="multiple-application-requests-within-a-browser-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#multiple-application-requests-within-a-browser-2"></a>Multiple application requests within a browser</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36239</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that could cause inconsistent sessions or authentication errors when starting multiple applications in different browser tabs at the same time.</p>
</div>
</div>
<div class="sect3">
<h4 id="incorrect-swagger-docs-base-path"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#incorrect-swagger-docs-base-path"></a>Incorrect Swagger docs base path</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36241</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused PingFederate to set the wrong base path for Swagger docs when the <code class="parmname">pf.admin.baseurl</code> parameter includes a file path.</p>
</div>
</div>
<div class="sect3">
<h4 id="ognl-expression-variables-in-datastore-attributes"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#ognl-expression-variables-in-datastore-attributes"></a>OGNL expression variables in datastore attributes</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36257</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused PingFederate to ignore defined OGNL expression variables in datastore attributes.</p>
</div>
</div>
<div class="sect3">
<h4 id="notification-publisher-validation-error"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#notification-publisher-validation-error"></a>Notification publisher validation error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36260</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused PingFederate to return a validation error when using the <code class="codeph">/serverSettings</code> endpoint to update the notification settings to <code class="option">LOGGING_ONLY</code> in an environment with no previously-defined notification publisher.</p>
</div>
</div>
<div class="sect3">
<h4 id="device-authorization-grant-time-zone-error"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#device-authorization-grant-time-zone-error"></a>Device authorization grant time zone error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36261</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused device authorization grant flow errors when clustered server nodes are in different time zones.</p>
</div>
</div>
<div class="sect3">
<h4 id="bulkhead-notification-validation-error"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#bulkhead-notification-validation-error"></a>Bulkhead notification validation error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36269</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused a validation error when sending a valid PUT request to the <code class="codeph">/serverSettings</code> or <code class="codeph">/serverSettings/notifications</code> endpoints when the bulkhead notification is active on the default notification publisher.</p>
</div>
</div>
<div class="sect3">
<h4 id="replication-warning-banner-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#replication-warning-banner-2"></a>Replication warning banner</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36546</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused the banner message warning that a configuration is out of date to persist after a configuration had been replicated. This defect occurred when running PingFederate as a Windows service.</p>
</div>
</div>
<div class="sect3">
<h4 id="provisioning-flag-comparison-value-now-case-insensitive-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#provisioning-flag-comparison-value-now-case-insensitive-2"></a>Provisioning Flag Comparison Value now case-insensitive</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">info</span>
<span class="ping_ticket">PF-36276</span></p>
</div>
<div class="paragraph">
<p>We’ve updated the provisioning Flag Comparison Value attribute to be case-insensitive.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_modifying_source_settings.html" class="xref page">Modifying source settings</a>.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 12.1.3 (September 2024)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-1-3-september-2024</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-1-3-september-2024</guid>
            <pubDate>Tue, 10 Sep 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="new-features-and-enhancements-14"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#new-features-and-enhancements-14"></a>New features and enhancements</h3>
<div class="sect3">
<h4 id="process-pkce-parameters-outside-signed-request-object"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#process-pkce-parameters-outside-signed-request-object"></a>Process PKCE parameters outside signed request object</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Improved</span>
<span class="ping_ticket">PF-36180</span></p>
</div>
<div class="paragraph">
<p>We’ve added an option to process PKCE parameters from outside the signed request object when the parameters are not included in the request object.</p>
</div>
<div class="admonitionblock note">
<table>
<tbody><tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
This is an opt-in function, and not recommended for continued use.
</td>
</tr>
</tbody></table>
</div>
</div>
</div>
<div class="sect2">
<h3 id="resolved-issues-28"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-28"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="custom-error-message-not-displaying"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#custom-error-message-not-displaying"></a>Custom error message not displaying</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Fixed</span>
<span class="ping_ticket">PF-36086</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused PingFederate to not display a custom error message when using a custom authorization adapter without an authorization API application.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 12.1.2 (August 2024)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-1-2-august-2024</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-1-2-august-2024</guid>
            <pubDate>Mon, 19 Aug 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-29"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-29"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="relative-path-symbolic-links-retrieve-wrong-file"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#relative-path-symbolic-links-retrieve-wrong-file"></a>Relative path symbolic links retrieve wrong file</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-35678</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused PingFederate to retrieve the wrong file when using relative paths in symbolic links.</p>
</div>
</div>
<div class="sect3">
<h4 id="heartbeat-endpoint-500-error"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#heartbeat-endpoint-500-error"></a>Heartbeat endpoint 500 error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35842</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused the heartbeat endpoint to return a <code class="msgph">500</code> error after upgrading to PingFederate 12.1.</p>
</div>
</div>
<div class="sect3">
<h4 id="refresh-token-time-zone-discrepancies"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#refresh-token-time-zone-discrepancies"></a>Refresh token time zone discrepancies</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35867</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused refresh tokens to roll prematurely when making authorization requests to servers in different time zones.</p>
</div>
</div>
<div class="sect3">
<h4 id="maintenance-upgrade-includes-entire-sdk-directory"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#maintenance-upgrade-includes-entire-sdk-directory"></a>Maintenance upgrade includes entire SDK directory</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35920</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused the incremental update package for PingFederate versions 12.0 and 12.1 to unnecessarily install the entire SDK directory.</p>
</div>
</div>
<div class="sect3">
<h4 id="local-error-handling-error"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#local-error-handling-error"></a>Local error handling error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35952</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused PingFederate to redirect failed IdP sign on attempts rather than handling the error locally.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 12.1.1 (July 2024)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-1-1-july-2024</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-1-1-july-2024</guid>
            <pubDate>Thu, 11 Jul 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-30"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-30"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="axis1-patch"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#axis1-patch"></a>Axis1 patch</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-35631</span></p>
</div>
<div class="paragraph">
<p>Included a patch to address multiple vulnerabilities related to Apache Axis1.</p>
</div>
</div>
<div class="sect3">
<h4 id="refresh-token-rolls-when-configured-not-to-roll"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#refresh-token-rolls-when-configured-not-to-roll"></a>Refresh token rolls when configured not to roll</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35166</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused PingFederate to roll refresh tokens when <strong class="uicontrol">Refresh Token Rolling Policy</strong> is disabled but <strong class="uicontrol">Refresh Token Rolling Interval</strong> has a value.</p>
</div>
</div>
<div class="sect3">
<h4 id="provisioning-group-changes-continue-after-user-changes-failure"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#provisioning-group-changes-continue-after-user-changes-failure"></a>Provisioning group changes continue after user changes failure</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35304</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused the provisioner to propagate group updates even if user updates didn’t finish.</p>
</div>
</div>
<div class="sect3">
<h4 id="oauth-client-only-validates-one-access-token-manager-when-aud-parameter-included"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oauth-client-only-validates-one-access-token-manager-when-aud-parameter-included"></a>OAuth client only validates one access token manager when <code class="parmname">aud</code> parameter included</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35737</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused PingFederate to validate only the first OAuth client access token manager it found when <strong class="uicontrol">Validate Against All Eligible Access Token Managers</strong> was checked, and the <code class="parmname">aud</code> parameter was included in the request.</p>
</div>
</div>
<div class="sect3">
<h4 id="custom-adapter-not-returning-ipv4-addresses"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#custom-adapter-not-returning-ipv4-addresses"></a>Custom adapter not returning IPv4 addresses</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35783</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect where PingFederate failed to return IPv4 addresses in a custom adapter request using the <code class="codeph">request.getRemoteAddr()</code> method.</p>
</div>
</div>
<div class="sect3">
<h4 id="context-sri-attribute-mapping-failure"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#context-sri-attribute-mapping-failure"></a>Context SRI attribute mapping failure</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35800</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused PingFederate to fail to map new attributes added to an existing access token manager to the Context SRI.</p>
</div>
</div>
<div class="sect3">
<h4 id="error-message-after-user-session-expires"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#error-message-after-user-session-expires"></a>Error message after user session expires</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35815</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused PingFederate to present an error message when user tries to sign on again after a session expires due to inactivity.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 12.1 (June 2024)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-1-june-2024</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-1-june-2024</guid>
            <pubDate>Wed, 31 Jul 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="paragraph">
<p>New features and improvements in PingFederate 12.1.</p>
</div>
<div class="sect2">
<h3 id="new-features-and-enhancements-15"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#new-features-and-enhancements-15"></a>New features and enhancements</h3>
<div class="sect3">
<h4 id="active-and-passive-administrative-consoles"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#active-and-passive-administrative-consoles"></a>Active and passive administrative consoles</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-34962</span></p>
</div>
<div class="paragraph">
<p>We’ve added a feature that allows you to create an active admin console and one or more passive backup admin consoles in a clustered environment.</p>
</div>
<div class="paragraph">
<p>Even though only one node can be active, the passive nodes are always kept in sync, so you can easily promote them to the active console. This reduces downtime in the event of an outage on the node with the active admin console.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/server_clustering_guide/pf_active_passive_admin_nodes.html" class="xref page">Active and passive administrative nodes</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="runtime-threads-bulkheads"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#runtime-threads-bulkheads"></a>Runtime threads bulkheads</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-35345</span></p>
</div>
<div class="paragraph">
<p>We’ve added the ability to implement runtime thread bulkheads that limit the percentage of threads that can be waiting on external data sources. After the limit is reached, further requests are rejected.</p>
</div>
<div class="paragraph">
<p>This improves resilience, reliability, and availability by minimizing the impact of a broken data source connection on other connections.</p>
</div>
<div class="paragraph">
<p>You can configure bulkheads in the <code class="filepath">com.pingidentity.common.util.resiliency.BulkheadManagerImpl.xml</code> file. You can also configure runtime notifications for bulkhead threshold events.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_configuring_runtime_thread_bulkheads.html" class="xref page">Configuring runtime thread bulkheads</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="decrypting-saml-attribute-values"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#decrypting-saml-attribute-values"></a>Decrypting SAML attribute values</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-34887</span></p>
</div>
<div class="paragraph">
<p>We’ve added a new special attribute, <code class="codeph">SAML_AUTHN_RESPONSE_ASSERTION</code>, to access the <code class="codeph">Assertion</code> element of the SAML 2.0 response messages during attribute mapping.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_special_attr_names_contracts.html" class="xref page">Special attribute names in contracts</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="custom-key-identifier"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#custom-key-identifier"></a>Custom key identifier</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-34883</span></p>
</div>
<div class="paragraph">
<p>We’ve added the ability to define a custom key identifier (KID) for OIDC and OAuth signing and decryption keys for each RSA-based signing algorithm.</p>
</div>
<div class="paragraph">
<p>Custom KID values help with special environments and custom requirements for RSA-based JSON Web Keys (JWK) published in the <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_jwks_endpoint.html" class="xref page">JSON Web Keys endpoint</a>.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_jwksendpointtasklet_jwksendpointkeysstate.html" class="xref page">Keys for OAuth and OpenID Connect</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="cookieless-authentication-api"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#cookieless-authentication-api"></a>Cookieless authentication API</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-34889</span></p>
</div>
<div class="paragraph">
<p>We’ve added the ability to enable a redirectless authentication API OAuth flow through the authorization endpoint without cookies.</p>
</div>
<div class="paragraph">
<p>You can now use the authentication API without having to manage and process cookies. Instead of cookies, the API includes details within the JSON response that need to be included as a simple HTTP header value in responses to PingFederate.</p>
</div>
<div class="paragraph">
<p>This improvement is especially useful for native app developers and reduces the implications of third-party cookie issues.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_configuring_oauth_clients.html" class="xref page">Configuring OAuth clients</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="resource-indicators-for-oauth-2-0"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resource-indicators-for-oauth-2-0"></a>Resource indicators for OAuth 2.0</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-35341</span></p>
</div>
<div class="paragraph">
<p>We’ve added support for the <code class="parmname">resource</code> parameter to allow clients to indicate the protected resources to which it is requesting access.</p>
</div>
<div class="paragraph">
<p>The <code class="parmname">resource</code> parameter is available for use during access token mapping.</p>
</div>
<div class="paragraph">
<p>Learn more in the <a href="https://datatracker.ietf.org/doc/html/rfc8707" target="_blank" rel="noopener">RFC 8707 specification</a> and <a href="https://docs.pingidentity.com/pingfederate/developers_reference_guide/pf_token_endpoint.html" class="xref page">Token endpoint</a>.</p>
</div>
<div class="admonitionblock important">
<table>
<tbody><tr>
<td class="icon">
<i class="fa icon-important" title="Important"></i>
</td>
<td class="content">
Reusing a previous version’s OAuth authentication calls that contain <strong class="uicontrol">Resource URIs</strong> will fail if the required <strong class="uicontrol">Resource URIs</strong> aren’t defined in the <strong class="uicontrol">Access Token Manager</strong>. Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_beareraccesstokenmgmtplugintasklet_atmselectionsettingsstate.html" class="xref page">Managing resource URIs</a>.
</td>
</tr>
</tbody></table>
</div>
</div>
<div class="sect3">
<h4 id="pingone-australia-region-support"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingone-australia-region-support"></a>PingOne Australia region support</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-31859</span></p>
</div>
<div class="paragraph">
<p>We’ve added support for the Australia region in the PingOne unified admin feature. You can now configure the <code class="codeph">pf.pingone.admin.url.region</code> property for Australia (.com.au).</p>
</div>
<div class="paragraph">
<p>The Asia region is deprecated. We recommend using the Australia region instead.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_config_pf_propert.html" class="xref page">Configuring PingFederate properties</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="publish-signing-keys-to-jwks-endpoint"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#publish-signing-keys-to-jwks-endpoint"></a>Publish signing keys to JWKS endpoint</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-34886</span></p>
</div>
<div class="paragraph">
<p>We’ve added the ability to optionally publish asymmetric signing keys configured in a JWT Access Token Management Plugin instance to the PingFederate JWKS endpoint.</p>
</div>
<div class="paragraph">
<p>Publishing JWKs to the JWKS endpoint reduces the number of required JWKS endpoints, and allows you to use more standard client libraries and fewer custom clients.</p>
</div>
<div class="paragraph">
<p>Published keys are discoverable using the <a href="https://docs.pingidentity.com/pingfederate/developers_reference_guide/pf_openid_provider_config_endpoint.html" class="xref page">OpenID Provider configuration endpoint</a>.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_configuring_access_token_management_instance.html" class="xref page">Configuring an access token management instance</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="publish-x5t-thumbprint-to-jwks-endpoint"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#publish-x5t-thumbprint-to-jwks-endpoint"></a>Publish x5t thumbprint to JWKS endpoint</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-35342</span></p>
</div>
<div class="paragraph">
<p>PingFederate now publishes the <code class="parmname">x5t</code> x.509 certificate SHA-1 thumbprint parameter from the JWKS endpoint by default.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_jwks_endpoint.html" class="xref page">JSON Web Keys endpoint</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="custom-uri-schemes-for-redirect-validation"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#custom-uri-schemes-for-redirect-validation"></a>Custom URI schemes for redirect validation</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-34891</span></p>
</div>
<div class="paragraph">
<p>We’ve added support for custom URI schemes in redirect validation for OAuth and OIDC clients.</p>
</div>
<div class="paragraph">
<p>You can now allow redirects to URIs such as native applications or APIs outside of the HTTP/HTTPS scheme. Because application URIs are often company or brand-specific, this feature reduces the potential for naming collisions with other apps on the same device.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_redirectvalidationtasklet_redirectvalidationstate.html" class="xref page">Configuring redirect validation</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="jarm-support-for-idp-connections"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#jarm-support-for-idp-connections"></a>JARM support for IdP connections</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-34884</span></p>
</div>
<div class="paragraph">
<p>We’ve added support for JWT Authorization Response Mode (JARM) to identity provider (IdP) connections.</p>
</div>
<div class="paragraph">
<p>PingFederate already supports JARM in its role as a relying party (RP), and now supports it in its role as an OpenID provider (OP). Instead of having to receive an issued <code class="codeph">authorization_code</code> and <code class="codeph">state</code> parameter as a query component, your connection can process a JWT instead.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_creating_oidc_idp_connection.html" class="xref page">Creating an OpenID Connect IdP connection</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="configure-refresh-rolling-token-interval-in-hours-minutes-or-seconds"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#configure-refresh-rolling-token-interval-in-hours-minutes-or-seconds"></a>Configure Refresh Rolling Token Interval in hours, minutes, or seconds</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-34885</span></p>
</div>
<div class="paragraph">
<p>We’ve added a feature allowing you to configure the interval of rolling OAuth tokens in hours, minutes, or seconds.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_configuring_oauth_clients.html" class="xref page">Configuring OAuth clients</a>, <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_authorizationserversettingstasklet_oauthauthorizationserversettingsstate.html" class="xref page">Configuring authorization server settings</a>, and <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_clientsettingstasklet_oauthdynamicclientregistrationdefaultsstate.html" class="xref page">Managing client configuration defaults</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="magic-link-integration-kit"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#magic-link-integration-kit"></a>Magic link integration kit</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-34422</span></p>
</div>
<div class="paragraph">
<p>We’ve added support for the PingFederate Magic Link Integration Kit.</p>
</div>
<div class="paragraph">
<p>Learn more in the <a href="https://docs.pingidentity.com/integrations/pingone/magic_link_integration_kit/pf_magic_link_ik.html" target="_blank" rel="noopener">Magic Link Integration Kit</a> documentation.</p>
</div>
</div>
<div class="sect3">
<h4 id="configurable-ldap-health-check-timeout"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#configurable-ldap-health-check-timeout"></a>Configurable LDAP health check timeout</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-35012</span></p>
</div>
<div class="paragraph">
<p>We’ve added the ability to configure the timeout duration for LDAP health checks.</p>
</div>
<div class="paragraph">
<p>You can configure this option in the <code class="filepath">~/server/default/data/config-store/com.pingidentity.common.util.ldap.LDAPUtil.xml</code> file using the <code class="parmname">HealthCheckResponseTimeoutMillis</code> parameter.</p>
</div>
<div class="paragraph">
<p>The default value is <code class="option">2000</code>.</p>
</div>
</div>
<div class="sect3">
<h4 id="ldapv3-with-starttls-command"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#ldapv3-with-starttls-command"></a>LDAPv3 with StartTLS command</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-35349</span></p>
</div>
<div class="paragraph">
<p>PingFederate now supports LDAPv3 with the StartTLS command to secure LDAP connections to a directory server.</p>
</div>
<div class="paragraph">
<p>This feature allows LDAP connections to be initiated on a non-SSL port (such as 389), and then be upgraded to SSL on the same port. This reduces the number of ports that potentially have to be opened within a firewall.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_datasourcetasklet_ldapconfigstate.html" class="xref page">Configuring an LDAP connection</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="openid-connect-offline_access-scope"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#openid-connect-offline_access-scope"></a>OpenID Connect <code class="codeph">offline_access</code> scope</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-35346</span></p>
</div>
<div class="paragraph">
<p>PingFederate now supports the OpenID Connect (OIDC) <code class="codeph">offline_access</code> scope.</p>
</div>
<div class="paragraph">
<p>You can now configure OAuth and OIDC clients to receive only a <code class="codeph">refresh_token</code> when this scope is requested. You can also optionally configure a resource owner consent as required.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_authorizationserversettingstasklet_oauthauthorizationserversettingsstate.html" class="xref page">Configuring authorization server settings</a> and <a href="https://docs.pingidentity.com/pingfederate/developers_reference_guide/pf_oauth_client_manage_service.html" class="xref page">OAuth Client Management Service</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="openid-connect-user-registration"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#openid-connect-user-registration"></a>OpenID Connect user registration</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-35347</span></p>
</div>
<div class="paragraph">
<p>PingFederate now supports user registration through OIDC 1.0 using the <code class="codeph">prompt=create</code> command.</p>
</div>
<div class="paragraph">
<p>Including this parameter initiates a user registration flow within the context of OIDC, which reduces developer efforts by eliminating the need for a separate customer registration flow.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_config_request_parameter_sso_url.html" class="xref page">Configuring request parameters and SSO URLs</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="exposed-pi-sri-to-sdk-and-attribute-mapping"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#exposed-pi-sri-to-sdk-and-attribute-mapping"></a>Exposed <code class="codeph">pi.sri</code> to SDK and attribute mapping</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-35453</span></p>
</div>
<div class="paragraph">
<p>We’ve added the <code class="parmname">IN_PARAMETER_NAME_SRI</code> parameter to the SDK, which contains the current <code class="codeph">pi.sri</code>.</p>
</div>
<div class="paragraph">
<p>We’ve also exposed the <code class="codeph">pi.sri</code> value in the <strong class="uicontrol">Context</strong> type for most attribute mappings.</p>
</div>
</div>
<div class="sect3">
<h4 id="sdk-capability-for-adapters-to-terminate-sessions"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#sdk-capability-for-adapters-to-terminate-sessions"></a>SDK capability for adapters to terminate sessions</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-34464</span></p>
</div>
<div class="paragraph">
<p>We’ve added a new <code class="codeph">SessionManager</code> class in the SDK to allow for revoking all sessions or all but the current session.</p>
</div>
<div class="paragraph">
<p>This works similarly to the <strong class="uicontrol">Revoke sessions after password change or reset</strong> option in the <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_config_html_form_adapt_instance.html" class="xref page">HTML Form Adapter</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="pingdirectory-log-tracking-id"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingdirectory-log-tracking-id"></a>PingDirectory log tracking ID</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-34338</span></p>
</div>
<div class="paragraph">
<p>We’ve added support for the log tracking ID feature in PingDirectory 10.0. PingFederate can use this tracking ID as a <code class="codeph">transactionId</code> value.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_security_audit_logging.html" class="xref page">Security audit logging</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="improved-logging-for-adapters-manager"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#improved-logging-for-adapters-manager"></a>Improved logging for adapters manager</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span>
<span class="ping_ticket">PF-35079</span></p>
</div>
<div class="paragraph">
<p>We’ve improved logging capabilities to associate an adapter ID with adapters that fail to load. This makes misconfigured adapters easier to trace.</p>
</div>
</div>
<div class="sect3">
<h4 id="oauth-scope-reference-ui-improvements"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oauth-scope-reference-ui-improvements"></a>OAuth scope reference UI improvements</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span>
<span class="ping_ticket">PF-34952</span></p>
</div>
<div class="paragraph">
<p>We’ve added a pop-up modal to several OAuth scope reference pages to improve the scope management user interface.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_clientsettingstasklet_oauthdynamicclientregistrationscopeconstraintsstate.html" class="xref page">Configuring scope constraints</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="scope-management-user-interface-enhancement"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#scope-management-user-interface-enhancement"></a>Scope management user interface enhancement</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span>
<span class="ping_ticket">PF-34890</span></p>
</div>
<div class="paragraph">
<p>We’ve improved the user interface for the <strong class="wintitle">Scope Management</strong> page, including pagination, a search feature, and new tabs for managing common and exclusive scope groups.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_defining_scopes.html" class="xref page">Defining scopes</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="new-connection-pool-metrics-in-heartbeat-endpoint"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#new-connection-pool-metrics-in-heartbeat-endpoint"></a>New connection pool metrics in heartbeat endpoint</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span>
<span class="ping_ticket">PF-34892</span></p>
</div>
<div class="paragraph">
<p>We’ve added new connection pool metrics to the heartbeat endpoint and JMX MBeans for Java Database Connectivity (JDBC) and LDAP connections.</p>
</div>
<div class="paragraph">
<p>New metrics include maximum connection pool size, minimum connection pool size, number of active connections, and number of idle connections.</p>
</div>
<div class="admonitionblock note">
<table>
<tbody><tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
<div class="paragraph">
<p>There is no active connections metric for LDAP connectors, because <code class="codeph">LDAPConnectionPool</code> does not track the number of connections that are established and currently in use.</p>
</div>
</td>
</tr>
</tbody></table>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_customize_heartbeat_message.html" class="xref page">Customizing the heartbeat message</a> and <a href="https://docs.pingidentity.com/pingfederate/pingfederate_monitoring_guide/pf_liveliness_responsiveness.html" class="xref page">Liveliness and responsiveness</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="refresh-grants-revocation-and-issuance"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#refresh-grants-revocation-and-issuance"></a>Refresh grants revocation and issuance</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span>
<span class="ping_ticket">PF-35527</span></p>
</div>
<div class="paragraph">
<p>Refresh grants are no longer revoked when issuance criteria fail.</p>
</div>
<div class="paragraph">
<p>Also, new grants or access tokens are not issued due to the failure of issuance criteria.</p>
</div>
<div class="paragraph">
<p>This is the new default behavior for refresh grants.</p>
</div>
</div>
<div class="sect3">
<h4 id="pingone-mfa-integration-kit"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingone-mfa-integration-kit"></a>PingOne MFA Integration Kit</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span>
<span class="ping_ticket">PF-35325</span></p>
</div>
<div class="paragraph">
<p>The PingOne MFA Integration Kit has been updated to version 2.3.1.</p>
</div>
</div>
<div class="sect3">
<h4 id="aurora-postgresql"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#aurora-postgresql"></a>Aurora PostgreSQL</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span>
<span class="ping_ticket">PF-35383</span></p>
</div>
<div class="paragraph">
<p>PingFederate now supports Aurora PostgreSQL version 16.2.</p>
</div>
</div>
<div class="sect3">
<h4 id="postgresql-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#postgresql-2"></a>PostgreSQL</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span>
<span class="ping_ticket">PF-35384</span></p>
</div>
<div class="paragraph">
<p>PingFederate now supports PostgreSQL version 16.2.</p>
</div>
</div>
<div class="sect3">
<h4 id="pingds-support"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingds-support"></a>PingDS support</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_ticket">PF-34434</span></p>
</div>
<div class="paragraph">
<p>We’ve added support for PingDS (formerly ForgeRock DS) datastore.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/installing_and_uninstalling_pingfederate/pf_system_requirements.html" class="xref page">System requirements</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="jetty-library-upgrade"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#jetty-library-upgrade"></a>Jetty library upgrade</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span>
<span class="ping_ticket">PF-34039</span></p>
</div>
<div class="paragraph">
<p>We’ve upgraded Jetty to version 10.</p>
</div>
</div>
<div class="sect3">
<h4 id="fapi-and-fapi-ciba-certification"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#fapi-and-fapi-ciba-certification"></a>FAPI and FAPI CIBA certification</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_ticket">PF-34897</span></p>
</div>
<div class="paragraph">
<p>PingFederate 12.1 is certified for FAPI OpenID Providers (OP) and Profiles, and FAPI CIBA OpenID Providers and Profiles.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="resolved-issues-31"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-31"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="admin-console-oidc-login-failure"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#admin-console-oidc-login-failure"></a>Admin console OIDC login failure</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34523</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed an issue that caused PingFederate’s OIDC admin console login to fail when the <code class="parmname">node.group.id</code> value didn’t match an existing node id.</p>
</div>
</div>
<div class="sect3">
<h4 id="pingdirectory-user-attribute-queries"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingdirectory-user-attribute-queries"></a>PingDirectory user attribute queries</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34333</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed an issue that caused PingFederate to query all attributes for PingDirectory users, rather than just the required attributes.</p>
</div>
</div>
<div class="sect3">
<h4 id="dpop-token-rejection"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#dpop-token-rejection"></a>DPoP token rejection</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35082</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused access token requests to fail due to OAuth 2.0 Demonstrating Proof of Possession (DPoP) proof validation failure when reusing existing persistent access grant is enabled for confidential claims.</p>
</div>
</div>
<div class="sect3">
<h4 id="license-expiration-date-discrepancy"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#license-expiration-date-discrepancy"></a>License expiration date discrepancy</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35114</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed an issue that caused PingFederate to display the expiration date of a PingFederate license in terms of the browser time zone rather than the server time zone.</p>
</div>
</div>
<div class="sect3">
<h4 id="web-token-processing-slowdown"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#web-token-processing-slowdown"></a>Web token processing slowdown</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35272</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed an issue that caused significant slowdown when PingFederate processed an unencrypted JSON web token (JWT) using JSON web encryption (JWE) deobfuscation.</p>
</div>
</div>
<div class="sect3">
<h4 id="rest-api-datastore-unable-to-handle-malformed-cookies"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#rest-api-datastore-unable-to-handle-malformed-cookies"></a>REST API datastore unable to handle malformed cookies</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35352</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused the PingFederate REST API datastore to pass malformed cookies into datastore request headers.</p>
</div>
</div>
<div class="sect3">
<h4 id="oauth-client-in-use-detection"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oauth-client-in-use-detection"></a>OAuth client in-use detection</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35744</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where client in-use detection caused an IndexOutOfBoundsException when a custom solution is used for client storage.</p>
</div>
</div>
<div class="sect3">
<h4 id="clientmanagerdynamodbimpl-changes-not-implemented"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#clientmanagerdynamodbimpl-changes-not-implemented"></a>ClientManagerDynamoDBImpl changes not implemented</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35753</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused changes in <code class="codeph">ClientManagerDynamoDBImpl</code> not to apply when performing a bulk import or using the configuration store API unless you restarted PingFederate.</p>
</div>
</div>
<div class="sect3">
<h4 id="license-issue-dates"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#license-issue-dates"></a>License issue dates</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35075</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused PingFederate to ignore valid license files if they were issued prior to the current license file.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="known-issues-and-limitations-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#known-issues-and-limitations-5"></a>Known issues and limitations</h3>
<div class="sect3">
<h4 id="third-party-cookie-blocking-affecting-single-logout-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#third-party-cookie-blocking-affecting-single-logout-4"></a>Third-party cookie blocking affecting single logout</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span>
<span class="ping_ticket">PF-35772</span></p>
</div>
<div class="paragraph">
<p>Due to multiple vendors' recent browser versions that block third-party cookies, you might experience issues related to single logout with OIDC (via Front-Channel) and WS-Federation.</p>
</div>
<div class="paragraph">
<p>Refer to browsers' documentation regarding third-party cookie management to unblock them, if feasible.</p>
</div>
</div>
<div class="sect3">
<h4 id="replication-notification-when-switching-passive-admin-console-to-active"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#replication-notification-when-switching-passive-admin-console-to-active"></a>Replication notification when switching passive admin console to active</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span>
<span class="ping_ticket">PF-35642</span></p>
</div>
<div class="paragraph">
<p>When you switch a passive console to active, PingFederate might display a notification that the configuration has not been replicated, even though the configuration is up-to-date.</p>
</div>
</div>
<div class="sect3">
<h4 id="passive-admin-console-ui-refresh-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#passive-admin-console-ui-refresh-4"></a>Passive admin console UI refresh</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span>
<span class="ping_ticket">PF-35643</span></p>
</div>
<div class="paragraph">
<p>When you promote a passive admin console to active, the UI doesn’t refresh until you perform an action.</p>
</div>
</div>
<div class="sect3">
<h4 id="multiple-active-admin-consoles-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#multiple-active-admin-consoles-4"></a>Multiple active admin consoles</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span>
<span class="ping_ticket">PF-35439</span></p>
</div>
<div class="paragraph">
<p>When you make configuration changes on the active console (especially large configuration changes like bulk imports or data archive imports), then promote a passive console to active, it can cause multiple consoles to be active at once. This can result in inconsistent configurations.</p>
</div>
<div class="paragraph">
<p>Learn how to resolve this issue in <a href="https://docs.pingidentity.com/pingfederate/server_clustering_guide/pf_resolving_multiple_active_admin_nodes.html" class="xref page">Resolving multiple active administrative nodes</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="administrative-console-and-administrative-api-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#administrative-console-and-administrative-api-4"></a>Administrative console and administrative API</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>Although PingFederate 11.3 and later support DPoP, a known limitation is that the following features don’t support DPoP when PingFederate is the RP:</p>
<div class="ulist">
<ul>
<li>
<p>The administrative console authentication scheme using OIDC</p>
</li>
<li>
<p>The administrative API authentication scheme using OAuth 2.0</p>
</li>
</ul>
</div>
</li>
<li>
<p>/bulk: Only resource types currently supported by the administrative API are included in the exported data. We don’t intend to introduce administrative API support to the following areas:</p>
<div class="ulist">
<ul>
<li>
<p><a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_configuring_standard_idp_discovery.html" class="xref page">SAML 2.0 IdP Discovery</a></p>
</li>
<li>
<p><a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_affiliationstasklet_affiliationmgmtstate.html" class="xref page">SAML 2.0 SP Affiliation</a></p>
</li>
<li>
<p><a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_smsprovidersettingstasklet_smsprovidersettingsstate.html" class="xref page">SMS Provider</a></p>
</li>
</ul>
</div>
</li>
<li>
<p>Previously, the administrative API did not accurately reflect a <strong class="uicontrol">Persistent Grant Max Lifetime</strong> setting of 29 days (or shorter) with the selection of the <strong class="uicontrol">Grants Do Not Timeout Due To Inactivity</strong> option. As a result, if you have configured such OAuth authorization server settings and have generated a bulk export in version 10.0 through 10.0.2, we recommend that you re-generate a new bulk export after upgrading to version 10.0.3 (or a more recent version). The newly exported data does not contain the aforementioned flaw, and you can safely import it to version 10.0.3 (or a more recent version).</p>
</li>
<li>
<p>When enabling mTLS certificate-based authentication, administrators often configure a list of acceptable client certificate issuers. When you use a browser to access the console or the administrative API documentation, PingFederate returns to the browser the list of acceptable issuers as part of the TLS handshake. If the browser’s client certificate store contains multiple client certificates, the browser often presents you only the certificates whose issuer matches one of the acceptable issuers. However, when PingFederate runs in a Java 11 environment, Chrome presents you all its configured client certificates, regardless of whether the issuer matches one of the acceptable issuers or not.</p>
</li>
<li>
<p>When using mTLS authentication to authenticate to an LDAP server for administrative console or administrative API access, PingFederate doesn’t support using a Microsoft Active Directory server.</p>
</li>
<li>
<p>Prior to toggling the status of a connection with the administrative API, you must ensure that any expired certificates or no longer available attributes are replaced with valid certificates or attributes; otherwise, the update request fails.</p>
</li>
<li>
<p>When creating or updating a child instance of a hierarchical plugin, the administrative API retains objects with an <code class="codeph">"inherited": false</code> name/value pair (or without such name/value pair altogether), ignores those with a value of <code class="codeph">true</code>, and returns a 200 HTTP status code. No error messages are returned for the ignored objects.</p>
</li>
<li>
<p>Using the browser’s navigation mechanisms (for example, the <strong class="uicontrol">Back</strong> button) causes inconsistent behavior in the administrative console. Use the navigation buttons provided at the bottom of windows in the PingFederate console.</p>
</li>
<li>
<p>Using the PingFederate console in multiple tabs on one browser might cause inconsistent behavior which could corrupt its configuration.</p>
</li>
<li>
<p>If authenticated to the PingFederate administrative console using certificate authentication, a session that has timed out might not appear to behave as expected. Normally (when using password authentication), when a session has timed out and a user attempts some action in the console, the browser is redirected to the sign-on page, and then back to the administrative console after authentication is complete. Similar behavior applies for certificate authentication, in principle. However, because the browser might automatically resubmit the certificate for authentication, the browser might redirect to the administrative console and not the sign on page.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="tls-cipher-suite-customization-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#tls-cipher-suite-customization-4"></a>TLS cipher suite customization</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>PingFederate’s TLS cipher suites can be customized by modifying <code class="filepath">com.pingidentity.crypto.SunJCEManager.xml</code> (or a similarly-named file if BCFIPS or an HSM is configured). After updating the file and replicating, all cluster nodes must be restarted for the change to take effect.</p>
</div>
</div>
<div class="sect3">
<h4 id="java-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#java-4"></a>Java</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>CloudHSM is not supported when using Java 17.</p>
</li>
<li>
<p>Updating Java version 8 to version 11 results in an error when PingFederate is already installed and running on Windows. To work around this issue, uninstall and reinstall the PingFederate Windows service by running the <code class="filepath">UninstallPingFederateService.bat</code> and <code class="filepath">InstallPingFederateService.bat</code> files located in <code class="filepath"><em class="varname">&lt;pf_install&gt;</em>/pingfederate/sbin/wrapper</code>.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="hsms-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#hsms-4"></a>HSMs</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>AWS CloudHSM</p>
</div>
<div class="ulist">
<ul>
<li>
<p>It is not possible to use an elliptic curve (EC) certificate as an SSL server certificate.</p>
</li>
<li>
<p>TLS 1.3 is not currently supported.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Thales HSMs</p>
</div>
<div class="ulist">
<ul>
<li>
<p>JWT token decryption using ECDH-ES may fail. This issue only arises if PingFederate is configured with static OAuth and OpenID Connect keys, a static key is stored on the HSM, and PingFederate is consuming a token encrypted with this key.</p>
</li>
<li>
<p>It is not possible to use an EC certificate as an SSL server certificate.</p>
</li>
<li>
<p>TLS 1.3 is not currently supported.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Entrust HSMs</p>
</div>
<div class="ulist">
<ul>
<li>
<p>JWT token decryption using ECDH-ES may fail. This issue only arises if PingFederate is configured with static OAuth and OpenID Connect keys, a static key is stored on the HSM, and PingFederate is consuming a token encrypted with this key.</p>
</li>
<li>
<p>It is not possible to import a PKCS12- or PEM-formatted EC certificate.</p>
</li>
<li>
<p>It is not possible to use an EC certificate as an SSL server certificate.</p>
</li>
<li>
<p>TLS 1.3 is not currently supported.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="sso-and-slo-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#sso-and-slo-4"></a>SSO and SLO</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>When consuming SAML metadata, PingFederate does not report an error when neither the <code class="parmname">validUntil</code> nor the <code class="parmname">cacheDuration</code> attribute is included in the metadata. Note that PingFederate does reject expired SAML metadata as indicated by the <code class="parmname">validUntil</code> attribute value, if it is provided.</p>
</li>
<li>
<p>The anchored-certificate trust model cannot be used with the single logout (SLO) redirect binding because the certificate cannot be included with the logout request.</p>
</li>
<li>
<p>If an IdP connection is configured for multiple virtual server IDs, PingFederate will always use the default virtual server ID for IdP Discovery during an SP-initiated SSO event.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="composite-adapter-configuration-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#composite-adapter-configuration-4"></a>Composite Adapter configuration</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>SLO is not supported when users are authenticated through a Composite Adapter instance that contains another instance of the Composite Adapter.</p>
</div>
</div>
<div class="sect3">
<h4 id="self-service-password-reset-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#self-service-password-reset-4"></a>Self-service password reset</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>Passwords can be reset for Microsoft Active Directory user accounts without the permission to change password.</p>
</div>
</div>
<div class="sect3">
<h4 id="oauth-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oauth-4"></a>OAuth</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>PingFederate does not support a case-sensitive naming convention for OAuth client ID values when client records are stored in a directory server. For example, after creating a client with an ID value of <code class="codeph">sampleClient</code>, PingFederate does not allow the creation of another client with an ID value of <code class="codeph">SampleClient</code>.</p>
</div>
<div class="paragraph">
<p>Although it’s possible to create clients using the same ID values with different casings when client records are stored in XML files, a database server, or custom storage, we recommend not doing so to avoid potential record migration issues.</p>
</div>
</div>
<div class="sect3">
<h4 id="customer-identity-and-access-management-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#customer-identity-and-access-management-4"></a>Customer identity and access management</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>Some browsers display a date-picker user interface for fields that have been designed for date-specific inputs. Some browsers do not. If one or more date-specific fields are defined on the registration page or the profile management page (or both), end users must enter the dates manually if their browsers do not display a date-picker user interface for those fields.</p>
</div>
</div>
<div class="sect3">
<h4 id="provisioning-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#provisioning-4"></a>Provisioning</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>LDAP referrals return an error and cause provisioning to fail if the <code class="parmname">user</code> or <code class="parmname">group</code> objects are defined at the DC level, and not within an OU or within the Users CN.</p>
</li>
<li>
<p>The <code class="parmname">totalResults</code> value in SCIM responses indicates the number of results returned in the current response, not the total number of estimated results on the LDAP server.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="logging-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#logging-4"></a>Logging</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>If a source attribute has been configured for masking in an IdP adapter or IdP connection and the source attribute is mapped to OAuth’s persistent grant <code class="parmname">USER_KEY</code> attribute, the <code class="parmname">USER_KEY</code> attribute will not be masked in the server logs. Other persistent grant attributes will be masked.</p>
</li>
<li>
<p>Even if a source attribute has been configured for masking in an IdP adapter and the source attribute is mapped as the adapter’s unique user key, the user key attribute is not masked in the server or audit logs.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="database-logging-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#database-logging-4"></a>Database logging</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>If a source attribute has been configured for masking in an IdP adapter or IdP connection and the source attribute is mapped to OAuth’s persistent grant <code class="parmname">USER_KEY</code> attribute, the <code class="parmname">USER_KEY</code> attribute will not be masked in the server logs. Other persistent grant attributes will be masked.</p>
</li>
<li>
<p>Even if a source attribute has been configured for masking in an IdP adapter and the source attribute is mapped as the adapter’s unique user key, the user key attribute is not masked in the server or audit logs.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="radius-nas-ip-address-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#radius-nas-ip-address-4"></a>RADIUS NAS-IP-Address</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>The RADIUS NAS-IP-Address is only included in Access-Request packets when the <code class="codeph">pf.bind.engine.address</code> is set with an IPv4 address. IPv6 is not supported.</p>
</div>
</div>
<div class="sect3">
<h4 id="amazon-sns-notification-publisher-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#amazon-sns-notification-publisher-4"></a>Amazon SNS Notification Publisher</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>When deploying PingFederate with a forward proxy, plugins based on the AWS SDK, such as the Amazon SNS Notification Publisher, will only honor the <code class="codeph">http.proxyHost</code>, <code class="codeph">http.proxyPort</code>, <code class="codeph">http.proxyUser</code>, and <code class="codeph">http.proxyPassword</code> properties in <code class="filepath">run.properties</code>. The plugin will rely on these properties even if the service URL is <code class="codeph">https</code>.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="deprecated-features-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#deprecated-features-4"></a>Deprecated features</h3>
<div class="sect3">
<h4 id="authorizationdetails-field-deprecation"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#authorizationdetails-field-deprecation"></a><code class="msgph">authorizationDetails</code> field deprecation</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_ticket">PF-34682</span></p>
</div>
<div class="paragraph">
<p>The <code class="msgph">authorizationDetails</code> JSON field returned by the OAuth consent management endpoint has been deprecated in favor of the new <code class="msgph">authorizationDetail</code> and <code class="msgph">authorizationDetailDescription</code> fields.</p>
</div>
<div class="paragraph">
<p>Learn more about the consent management endpoint in <a href="https://docs.pingidentity.com/pingfederate/developers_reference_guide/pf_oauth_consent_management_service.html" class="xref page">OAuth Consent Management Service</a>.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 12.0.11 (April 2026)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-0-11-april-2026</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-0-11-april-2026</guid>
            <pubDate>Fri, 17 Apr 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="new-features-and-enhancements-16"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#new-features-and-enhancements-16"></a>New features and enhancements</h3>
<div class="sect3">
<h4 id="unconnected-cluster-node-startup-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#unconnected-cluster-node-startup-4"></a>Unconnected cluster node startup</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span>
<span class="ping_ticket">PF-38898</span></p>
</div>
<div class="paragraph">
<p>We added the <code class="parmname">force.require.replication.data.on.startup</code> parameter to the <code class="filepath">cluster-config-replication.conf</code> file.</p>
</div>
<div class="paragraph">
<p>This parameter allows you to prevent an engine node from starting up without establishing a connection to the cluster.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_cluster_management.html" class="xref page">Cluster management</a>.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="resolved-issues-32"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-32"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="ognl-code-test-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#ognl-code-test-4"></a>OGNL code test</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-38742</span></p>
</div>
<div class="paragraph">
<p>We improved role-based access control (RBAC) for the administrative expression testing endpoint. Access to expression evaluation is now limited to appropriately privileged roles, ensuring alignment with intended administrative permissions.</p>
</div>
</div>
<div class="sect3">
<h4 id="slo-failure"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#slo-failure"></a>SLO failure</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38442</span></p>
</div>
<div class="paragraph">
<p>We fixed a defect where front-channel logouts requests to <code class="filepath">/idp/startSLO.ping</code> failed to send logout requests to relying party URIs.</p>
</div>
</div>
<div class="sect3">
<h4 id="dyanmic-jwks-rotation-timer"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#dyanmic-jwks-rotation-timer"></a>Dyanmic JWKS rotation timer</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38903</span></p>
</div>
<div class="paragraph">
<p>We fixed a defect that prevented dynamic JWKS rotation timing from resetting after a node joined a cluster.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 12.0.10 (October 2025)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-0-10-october-2025</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-0-10-october-2025</guid>
            <pubDate>Thu, 16 Oct 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-33"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-33"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="host-header-redirect-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#host-header-redirect-5"></a>Host header redirect</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-37460</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a security vulnerability that could have allowed malicious parties to redirect PingFederate admin console traffic using a spoofed Host header.</p>
</div>
</div>
<div class="sect3">
<h4 id="virtual-hostname-accuracy-in-email-notifications-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#virtual-hostname-accuracy-in-email-notifications-5"></a>Virtual hostname accuracy in email notifications</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37964</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where a template variable incorrectly used the primary PingFederate base URL instead of the virtual host name in some email notifications.</p>
</div>
</div>
<div class="sect3">
<h4 id="html-flow-login-and-authentication-api-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#html-flow-login-and-authentication-api-5"></a>HTML flow login and Authentication API</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38039</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that could potentially allow a user to access an HTML browser sign-on page when the Authentication API redirectless mode is used.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://support.pingidentity.com/s/article/PingFederate-unexpected-template-rendering-in-redirectless-mode" target="_blank" rel="noopener">PingFederate unexpected template rendering in redirectless mode</a> in the Ping Identity Support Knowledge Base.</p>
</div>
</div>
<div class="sect3">
<h4 id="ldap-account-lockout-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#ldap-account-lockout-5"></a>LDAP account lockout</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38043</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where PingFederate could incorrectly lock user accounts during an LDAP connectivity failure with Active Directory. This fix applies to all LDAP datastore types except for Generic LDAP.</p>
</div>
</div>
<div class="sect3">
<h4 id="idp-adapter-duplicate-attribute-sources-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#idp-adapter-duplicate-attribute-sources-5"></a>IdP Adapter duplicate attribute sources</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38060</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused IdP adapters to duplicate attribute sources when an SP connection was updated using the Admin API.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 12.0.9 (July 2025)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-0-9-july-2025</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-0-9-july-2025</guid>
            <pubDate>Thu, 10 Jul 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-34"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-34"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="admin-console-ip-exposure-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#admin-console-ip-exposure-5"></a>Admin console IP exposure</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-33113</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a security vulnerability that could have allowed malicious parties to extract the PingFederate administrative console’s IP address through HTTP Response headers.</p>
</div>
</div>
<div class="sect3">
<h4 id="refresh-token-mysql-deadlocks-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#refresh-token-mysql-deadlocks-4"></a>Refresh token MySQL deadlocks</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35868</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused multiple refresh token requests in short succession to result in <span class="fr-alt fr-glossentry" title="<div class=&quot;paragraph&quot;>
<p>A Java API that allows Java programs to interact with databases.</p>
</div>">JDBC</span> data source deadlocks and duplicated data entry into the database.</p>
</div>
<div class="paragraph">
<p>This fix can cause significant performance issues if PingFederate or the JDBC data source has insufficient resources.</p>
</div>
</div>
<div class="sect3">
<h4 id="unnecessary-id-token-reissued-with-secondary-client-secret-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#unnecessary-id-token-reissued-with-secondary-client-secret-4"></a>Unnecessary ID token reissued with secondary client secret</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37450</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused the token endpoint to unnecessarily reissue an ID token when using a secondary client secret and an asymmetric algorithm for token signing and encryption.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 12.0.8 (May 2025)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-0-8-may-2025</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-0-8-may-2025</guid>
            <pubDate>Fri, 16 May 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="new-features-and-enhancements-17"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#new-features-and-enhancements-17"></a>New features and enhancements</h3>
<div class="sect3">
<h4 id="native_s3_ping-update-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#native_s3_ping-update-4"></a>NATIVE_S3_PING update</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_ticket">PF-37234</span></p>
</div>
<div class="paragraph">
<p>We’ve updated the behavior of the NATIVE_S3_PING discovery protocol when the <code class="parmname">remove_all_data_on_view_change</code> parameter is active.</p>
</div>
<div class="paragraph">
<p>Previously, the protocol would delete all files in the S3 bucket, which could lead to the creation of an unwanted subcluster.</p>
</div>
<div class="paragraph">
<p>Now the protocol deletes all files except for its own to prevent the S3 bucket from being empty.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/server_clustering_guide/pf_dynamic_cluster_discovery.html" class="xref page">Dynamic cluster discovery</a>.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="resolved-issues-35"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-35"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="group-membership-loss-during-provisioning-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#group-membership-loss-during-provisioning-4"></a>Group membership loss during provisioning</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36874</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where temporary connection loss to the source datastore during provisioning could lead to unintended membership information loss on the target SaaS application.</p>
</div>
</div>
<div class="sect3">
<h4 id="secondary-secret-missing-id-token-claim-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#secondary-secret-missing-id-token-claim-4"></a>Secondary secret missing ID token claim</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37279</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused the ID token claim to be omitted when an OAuth client uses the secondary secret.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 12.0.7 (January 2025)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-0-7-january-2025</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-0-7-january-2025</guid>
            <pubDate>Tue, 14 Jan 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-36"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-36"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="cross-site-scripting-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#cross-site-scripting-2"></a>Cross-site scripting</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-36304</span>
<span class="ping_ticket">PF-36311</span>
<span class="ping_ticket">PF-36313</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a security vulnerability where PingFederate accepted cross-site scripting inputs.</p>
</div>
</div>
<div class="sect3">
<h4 id="email-verification-failure-after-registration-workflow-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#email-verification-failure-after-registration-workflow-3"></a>Email verification failure after registration workflow</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36574</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused the email verification screen to fail to appear when a user registered through an authentication source.</p>
</div>
</div>
<div class="sect3">
<h4 id="oauth-client-set-authentication-selector-with-dynamodb-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oauth-client-set-authentication-selector-with-dynamodb-2"></a>OAuth Client Set Authentication Selector with DynamoDB</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36662</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused an error in searching for OAuth Client for OAuth Client Set Authentication Selector when DynamoDB is the client storage.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 12.0.6 (November 2024)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-0-6-november-2024</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-0-6-november-2024</guid>
            <pubDate>Tue, 05 Nov 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-37"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-37"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="provisioning-character-limit-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#provisioning-character-limit-3"></a>Provisioning character limit</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36035</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused outbound provisioning to fail and cease if a source user object exceeded a 255-character limit. In the new behavior, PingFederate will skip user objects that exceed 255 characters and log a warning.</p>
</div>
</div>
<div class="sect3">
<h4 id="pingdirectory-password-warning-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingdirectory-password-warning-3"></a>PingDirectory password warning</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36232</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that prevented PingFederate from issuing a password expiration warning when using PingDirectory as a datastore.</p>
</div>
</div>
<div class="sect3">
<h4 id="multiple-application-requests-within-a-browser-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#multiple-application-requests-within-a-browser-3"></a>Multiple application requests within a browser</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36239</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that could cause inconsistent sessions or authentication errors when starting multiple applications in different browser tabs at the same time.</p>
</div>
</div>
<div class="sect3">
<h4 id="device-authorization-grant-time-zone-error-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#device-authorization-grant-time-zone-error-2"></a>Device authorization grant time zone error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36261</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused device authorization grant flow errors when clustered server nodes are in different time zones.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 12.0.5 (August 2024)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-0-5-august-2024</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-0-5-august-2024</guid>
            <pubDate>Mon, 19 Aug 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-38"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-38"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="relative-path-symbolic-links-retrieve-wrong-file-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#relative-path-symbolic-links-retrieve-wrong-file-2"></a>Relative path symbolic links retrieve wrong file</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-35678</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused PingFederate to retrieve the wrong file when using relative paths in symbolic links.</p>
</div>
</div>
<div class="sect3">
<h4 id="refresh-token-time-zone-discrepancies-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#refresh-token-time-zone-discrepancies-2"></a>Refresh token time zone discrepancies</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35867</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused refresh tokens to roll prematurely when making authorization requests to servers in different time zones.</p>
</div>
</div>
<div class="sect3">
<h4 id="maintenance-upgrade-includes-entire-sdk-directory-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#maintenance-upgrade-includes-entire-sdk-directory-2"></a>Maintenance upgrade includes entire SDK directory</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35867</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused the incremental update package for PingFederate versions 12.0 and 12.1 to unnecessarily install the entire SDK directory.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 12.0.4 (July 2024)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-0-4-july-2024</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-0-4-july-2024</guid>
            <pubDate>Fri, 19 Jul 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-39"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-39"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="refresh-token-rolls-when-configured-not-to-roll-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#refresh-token-rolls-when-configured-not-to-roll-2"></a>Refresh token rolls when configured not to roll</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35166</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused PingFederate to roll refresh tokens when <strong class="uicontrol">Refresh Token Rolling Policy</strong> is disabled but <strong class="uicontrol">Refresh Token Rolling Interval</strong> has a value.</p>
</div>
</div>
<div class="sect3">
<h4 id="oauth-client-only-validates-one-access-token-manager-when-aud-parameter-included-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oauth-client-only-validates-one-access-token-manager-when-aud-parameter-included-2"></a>OAuth client only validates one access token manager when <code class="parmname">aud</code> parameter included</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35737</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused PingFederate to validate only the first OAuth client access token manager it found when <strong class="uicontrol">Validate Against All Eligible Access Token Managers</strong> was checked, and the <code class="parmname">aud</code> parameter was included in the request.</p>
</div>
</div>
<div class="sect3">
<h4 id="custom-adapter-not-returning-ipv4-addresses-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#custom-adapter-not-returning-ipv4-addresses-2"></a>Custom adapter not returning IPv4 addresses</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35783</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where PingFederate failed to return IPv4 addresses in a custom adapter request using the <code class="codeph">request.getRemoteAddr()</code> method.</p>
</div>
</div>
<div class="sect3">
<h4 id="error-message-after-user-session-expires-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#error-message-after-user-session-expires-2"></a>Error message after user session expires</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35815</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused PingFederate to present an error message when user tries to sign on again after a session expires due to inactivity.</p>
</div>
</div>
<div class="sect3">
<h4 id="oidc-admin-login-failure"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oidc-admin-login-failure"></a>OIDC admin login failure</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34523</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused the OIDC administrative console login to fail when the <code class="parmname">node.group.id</code> didn’t match a server’s node id.</p>
</div>
</div>
<div class="sect3">
<h4 id="oauth-client-in-use-detection-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oauth-client-in-use-detection-2"></a>OAuth client in-use detection</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35744</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where client in-use detection caused an IndexOutOfBoundsException when a custom solution is used for client storage.</p>
</div>
</div>
<div class="sect3">
<h4 id="clientmanagerdynamodbimpl-changes-not-implemented-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#clientmanagerdynamodbimpl-changes-not-implemented-2"></a>ClientManagerDynamoDBImpl changes not implemented</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35753</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused changes in <code class="codeph">ClientManagerDynamoDBImpl</code> not to apply when performing a bulk import or using the configuration store API unless you restarted PingFederate.</p>
</div>
</div>
<div class="sect3">
<h4 id="davinci-integration-kit"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#davinci-integration-kit"></a>Davinci integration kit</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_ticket">PF-35838</span></p>
</div>
<div class="paragraph">
<p>The Davinci integration kit has been updated to version 1.2.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 12.0.3 (May 2024)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-0-3-may-2024</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-0-3-may-2024</guid>
            <pubDate>Wed, 22 May 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="new-features-and-enhancements-18"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#new-features-and-enhancements-18"></a>New features and enhancements</h3>
<div class="sect3">
<h4 id="pingone-admin-url-property"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingone-admin-url-property"></a>PingOne admin URL property</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-31859</span></p>
</div>
<div class="paragraph">
<p>Added support for the Australia region to the <code class="codeph">pf.pingone.admin.url.region</code> property.</p>
</div>
<div class="paragraph">
<p>The Asia region is deprecated. We recommend using the Australia region instead.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_config_pf_propert.html" class="xref page">Configuring PingFederate properties</a>.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="resolved-issues-40"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-40"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="authentication-api-allows-different-user-for-change-password-flow"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#authentication-api-allows-different-user-for-change-password-flow"></a>Authentication API allows different user for change password flow</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35609</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused the authentication API to allow a different user to proceed with the <code class="codeph">MUST_CHANGE_PASSWORD</code> function than the user who initiated the flow.</p>
</div>
<div class="admonitionblock note">
<table>
<tbody><tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
<div class="paragraph">
<p>In all cases, the target user’s password was required to complete the change password operation.</p>
</div>
</td>
</tr>
</tbody></table>
</div>
</div>
<div class="sect3">
<h4 id="memory-heap-increase-when-using-admin-api-on-policy-tree"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#memory-heap-increase-when-using-admin-api-on-policy-tree"></a>Memory heap increase when using admin API on policy tree</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35423</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused PingFederate not to release memory when using the admin API on the policy tree.</p>
</div>
</div>
<div class="sect3">
<h4 id="authentication-api-password-change-flow-ignores-credentials"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#authentication-api-password-change-flow-ignores-credentials"></a>Authentication API password change flow ignores credentials</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35618</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused the authentication API to ignore credentials for password changes provided after user authentication.</p>
</div>
</div>
<div class="sect3">
<h4 id="authentication-api-validation-error"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#authentication-api-validation-error"></a>Authentication API validation error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35430</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused a validation error in the authentication API when including the <code class="parmname">ui_locales</code> parameter.</p>
</div>
</div>
<div class="sect3">
<h4 id="provisioner-uses-wrong-time-zone-when-data-source-and-pingfederate-are-in-different-time-zones"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#provisioner-uses-wrong-time-zone-when-data-source-and-pingfederate-are-in-different-time-zones"></a>Provisioner uses wrong time zone when data source and PingFederate are in different time zones</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35286</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused redundant user provisioner updates when the data source and PingFederate were in different time zones.</p>
</div>
</div>
<div class="sect3">
<h4 id="bypass-authorization-approval"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#bypass-authorization-approval"></a>Bypass authorization approval</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35395</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused PingFederate to ignore the <strong class="uicontrol">Bypass Authorization Approval</strong> setting when <strong class="uicontrol">Bypass Authorization For Previously Approved Consents</strong> is enabled.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 12.0.2 (April 2024)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-0-2-april-2024</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-0-2-april-2024</guid>
            <pubDate>Thu, 04 Apr 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-41"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-41"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="java-thread-exhaustion-in-pingone-advanced-services"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#java-thread-exhaustion-in-pingone-advanced-services"></a>Java thread exhaustion in PingOne Advanced Services</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35411</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused repeated looping in authentication policy involving a local Identity profile.</p>
</div>
</div>
<div class="sect3">
<h4 id="oauth-clients-in-use-detection"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oauth-clients-in-use-detection"></a>OAuth clients In Use detection</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35407</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect with In Use detection when DynamoDB is used for OAuth client storage.</p>
</div>
</div>
<div class="sect3">
<h4 id="oidc-policy-delete-request-timeout"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oidc-policy-delete-request-timeout"></a>OIDC policy DELETE request timeout</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35357</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect where deleting an OIDC policy fails when using DynamoDB storage for a large number of OAuth clients.</p>
</div>
</div>
<div class="sect3">
<h4 id="authentication-policy-extended-properties-using-ognl"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#authentication-policy-extended-properties-using-ognl"></a>Authentication policy extended properties using OGNL</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35111</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect where extended properties retrieved by OGNL are not populated.</p>
</div>
</div>
<div class="sect3">
<h4 id="policy-fragment-rules-processing"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#policy-fragment-rules-processing"></a>Policy fragment rules processing</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35134</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused PingFederate to not process authentication policy rules for fragment nodes that do not contain an output contract.</p>
</div>
</div>
<div class="sect3">
<h4 id="active-directory-binary-attribute-caused-thread-proliferation"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#active-directory-binary-attribute-caused-thread-proliferation"></a>Active Directory binary attribute caused thread proliferation</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35142</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused LDAP data source connection pools to close when still in use after the LDAP data source is modified and replicating under heavy load.</p>
</div>
</div>
<div class="sect3">
<h4 id="mixed-maintenance-release-cluster-caused-jwks-errors"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#mixed-maintenance-release-cluster-caused-jwks-errors"></a>Mixed maintenance release cluster caused JWKS errors</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35195</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused errors in synchronization and accessing dynamic JSON Web Key Set (JWKS) keys when running a cluster that was a mix of PingFederate versions 12.0 and 12.0.1.</p>
</div>
</div>
<div class="sect3">
<h4 id="jwks-algorithm-parameter-not-populated-after-processing-shared-keys-from-cluster"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#jwks-algorithm-parameter-not-populated-after-processing-shared-keys-from-cluster"></a>JWKS algorithm parameter not populated after processing shared keys from cluster</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35309</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused the <code class="parmname">alg</code> parameter to fail to populate when EC dynamic keys are rotated on a lead cluster node and shared to the cluster.</p>
</div>
</div>
<div class="sect3">
<h4 id="pingone-mfa-integration-kit-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingone-mfa-integration-kit-2"></a>PingOne MFA Integration Kit</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span>
<span class="ping_ticket">PF-35325</span></p>
</div>
<div class="paragraph">
<p>Upgraded the PingOne MFA Integration Kit to version 2.3.1.</p>
</div>
</div>
<div class="sect3">
<h4 id="lightning-ldap-library"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#lightning-ldap-library"></a>Lightning LDAP library</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span>
<span class="ping_ticket">PF-35310</span></p>
</div>
<div class="paragraph">
<p>Upgraded the lightning LDAP library to version 1.5.22.</p>
</div>
</div>
<div class="sect3">
<h4 id="upgraded-jetty-library"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#upgraded-jetty-library"></a>Upgraded Jetty Library</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span>
<span class="ping_ticket">PF-35184</span></p>
</div>
<div class="paragraph">
<p>Upgraded the Jetty library to version 9.4.54.v20240208.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 12.0.1 (February 2024)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-0-1-february-2024</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-0-1-february-2024</guid>
            <pubDate>Wed, 07 Feb 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="new-features-and-enhancements-19"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#new-features-and-enhancements-19"></a>New features and enhancements</h3>
<div class="sect3">
<h4 id="runtime-notification-when-thread-dumps-are-enabled-but-log4j2-xml-is-not-configured"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#runtime-notification-when-thread-dumps-are-enabled-but-log4j2-xml-is-not-configured"></a>Runtime notification when thread dumps are enabled but <code class="filepath">log4j2.xml</code> is not configured</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span>
<span class="ping_ticket">PF-34832</span></p>
</div>
<div class="paragraph">
<p>Added a feature to generate a warning message on the <strong class="uicontrol">Runtime Notifications</strong> tab if you have enabled thread dumps, but you have not configured the <code class="codeph">ThreadDumpAppender</code> and <code class="codeph">ThreadDumpLogger</code> properties in the <code class="filepath">log4j2.xml</code> file.</p>
</div>
<div class="paragraph">
<p>To learn more about configuring thread pool exhaustion events, see <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_configuring_runtime_notifications.html" class="xref page">Configuring runtime notifications</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="randomly-generated-provisioner-node-ids"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#randomly-generated-provisioner-node-ids"></a>Randomly-generated provisioner node ids</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span>
<span class="ping_ticket">PF-30913</span></p>
</div>
<div class="paragraph">
<p>Added a feature allowing you to generate random <code class="parmname">provisioner.node.id</code> values.</p>
</div>
<div class="paragraph">
<p>To learn more about configuring provisioners, see <a href="https://docs.pingidentity.com/pingfederate/server_clustering_guide/pf_deploy_provis_failover.html" class="xref page">Deploying provisioning failover</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="custom-keyid"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#custom-keyid"></a>Custom KeyID</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span>
<span class="ping_ticket">PF-34883</span></p>
</div>
<div class="paragraph">
<p>Added a feature allowing administrators to define custom KeyID values for static OAuth and OIDC keys and token signing keys.</p>
</div>
<div class="paragraph">
<p>Fixed an defect that caused PingFederate to not publish the <code class="parmname">alg</code> parameter on the JWKS endpoint. This issue occurred for dynamically-generated EC signing keys on engine nodes.</p>
</div>
<div class="paragraph">
<p>To learn more about keys, see <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_jwksendpointtasklet_jwksendpointkeysstate.html" class="xref page">Keys for OAuth and OpenID Connect</a>.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="resolved-issues-42"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-42"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="rest-datastore-security-vulnerability"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#rest-datastore-security-vulnerability"></a>Rest datastore security vulnerability</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-34720</span></p>
</div>
<div class="paragraph">
<p>Fixed a JSON injection vulnerability in REST datastores described in security advisory <a href="https://support.pingidentity.com/s/article/SECADV044-PingFederate-Security-Rollup" target="_blank" rel="noopener">SECADV044</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="runtime-nodes-security-vulnerability"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#runtime-nodes-security-vulnerability"></a>Runtime nodes security vulnerability</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-34896</span></p>
</div>
<div class="paragraph">
<p>Fixed a path traversal vulnerability in Runtime nodes described in security advisory <a href="https://support.pingidentity.com/s/article/SECADV044-PingFederate-Security-Rollup" target="_blank" rel="noopener">SECADV044</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="openid-connect-policy-management-editor-security-vulnerability"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#openid-connect-policy-management-editor-security-vulnerability"></a>OpenID Connect policy management editor security vulnerability</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-35081</span></p>
</div>
<div class="paragraph">
<p>Fixed a Cross-Site Scripting vulnerability in the OpenID Connect Policy Management Editor described in security advisory <a href="https://support.pingidentity.com/s/article/SECADV044-PingFederate-Security-Rollup" target="_blank" rel="noopener">SECADV044</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="get-saml-request-signature-processing-error"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#get-saml-request-signature-processing-error"></a>GET SAML request signature processing error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34641</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect where SAML requests using HTTP GET method with multiple signature-related parameters encoded in the <em class="varname">RelayState</em> parameter were causing errors in processing signature validation.</p>
</div>
</div>
<div class="sect3">
<h4 id="npe-notification-error"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#npe-notification-error"></a>NPE notification error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34813</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused PingFederate to issue null pointer exception (NPE) errors when querying the token endpoint.</p>
</div>
</div>
<div class="sect3">
<h4 id="certificate-expiry-notification-error"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#certificate-expiry-notification-error"></a>Certificate expiry notification error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34854</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused the certificate expiry warning notification icon to remain when there were no notifications to display.</p>
</div>
</div>
<div class="sect3">
<h4 id="reencyption-causes-connection-or-client-to-fail-on-engine"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#reencyption-causes-connection-or-client-to-fail-on-engine"></a>Reencyption causes connection or client to fail on engine</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34409</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect where changes made on the administrative console were not replicated to the engine during reencryption.</p>
</div>
</div>
<div class="sect3">
<h4 id="jmx-registration-failure-for-imported-archives"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#jmx-registration-failure-for-imported-archives"></a>JMX registration failure for imported archives</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34796</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused the JMX monitoring to fail to register archive files that are imported to PingFederate.</p>
</div>
</div>
<div class="sect3">
<h4 id="content-type-changes-if-well_known-endpoint-response-is-too-large"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#content-type-changes-if-well_known-endpoint-response-is-too-large"></a>Content type changes if <code class="codeph">well_known</code> endpoint response is too large</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34865</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused the <code class="parmname">content-type</code> of a response from the <code class="codeph">well_known</code> endpoint to change from JSON to HTML if a response is too large.</p>
</div>
</div>
<div class="sect3">
<h4 id="pingfederate-displays-unlock-your-account-page-for-unlocked-users"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-displays-unlock-your-account-page-for-unlocked-users"></a>PingFederate displays unlock your account page for unlocked users</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34701</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused PingFederate to display an <strong class="wintitle">unlock your account</strong> page during self-service password reset to accounts that are not locked.</p>
</div>
</div>
<div class="sect3">
<h4 id="rhel-8-using-os-level-fips-causes-pingfederate-failure"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#rhel-8-using-os-level-fips-causes-pingfederate-failure"></a>RHEL 8 using OS-level FIPS causes PingFederate failure</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34879</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused PingFederate to fail on startup when installed on a Red Hat Enterprise Linux (RHEL) server with OS-levels FIPS enabled.</p>
</div>
</div>
<div class="sect3">
<h4 id="error-message-for-authentication-policy-fragment-with-invalid-localidentityref"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#error-message-for-authentication-policy-fragment-with-invalid-localidentityref"></a>Error message for authentication policy fragment with invalid <code class="codeph">localIdentityRef</code></h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34882</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that returned a <code class="msgph">500</code> error with no details when an authentication policy fragment had a <code class="codeph">LOCAL_IDENTITY_MAPPING</code> action with an invalid <code class="codeph">localIdentityRef</code> ID.</p>
</div>
</div>
<div class="sect3">
<h4 id="unable-to-deobfuscate-grant-attributes"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#unable-to-deobfuscate-grant-attributes"></a>Unable to deobfuscate grant attributes</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34839</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect where PingFederate was unable to deobfuscate grant attributes of a certain length.</p>
</div>
</div>
<div class="sect3">
<h4 id="valid-authorization-policy-generates-configuration-error-message"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#valid-authorization-policy-generates-configuration-error-message"></a>Valid Authorization policy generates "Configuration Error" message</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34853</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused PingFederate to incorrectly return an <code class="msgph">Invalid Configuration</code> error for a valid authentication policy.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 12.0 (December 2023)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-0-december-2023</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-12-0-december-2023</guid>
            <pubDate>Tue, 12 Dec 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="paragraph">
<p>New features and improvements in PingFederate 12.0.</p>
</div>
<div class="sect2">
<h3 id="new-features-and-enhancements-20"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#new-features-and-enhancements-20"></a>New features and enhancements</h3>
<div class="sect3">
<h4 id="support-for-rp-initiated-logout"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#support-for-rp-initiated-logout"></a>Support for RP-initiated logout</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-34418</span></p>
</div>
<div class="paragraph">
<p>OpenID Connect (OIDC) relying party (RP) initiated logout allows OAuth clients to request that the OpenID Provider (OP) perform a federated logout. PingFederate now supports this standard, both when PingFederate acts as the OP as well as when it acts as the RP via an OIDC IdP connection.</p>
</div>
<div class="paragraph">
<p>For more information, see <a href="https://docs.pingidentity.com/pingfederate/developers_reference_guide/pf_oauth_client_manage_service.html" class="xref page">OAuth Client Management Service</a>, <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_idpprotocolsettingstasklet_openidprovidermetadatastate.html" class="xref page">Configuring OpenID Provider information</a>, and <a href="https://docs.pingidentity.com/pingfederate/developers_reference_guide/pf_openid_connect_rp_logout_endpoint.html" class="xref page">OpenID Connect RP-initiated logout endpoint</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="add-risk-provider-to-identifier-first-adapter"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#add-risk-provider-to-identifier-first-adapter"></a>Add risk provider to Identifier First Adapter</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-34415</span></p>
</div>
<div class="paragraph">
<p>You can now add risk provider such as CAPTCHA to Identifier First adapters.</p>
</div>
<div class="paragraph">
<p>For more information, see <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_config_identif_first_adapt_instance.html" class="xref page">Configuring an Identifier First Adapter instance</a></p>
</div>
</div>
<div class="sect3">
<h4 id="skip-redirect-to-authentication-application-if-no-action-is-required"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#skip-redirect-to-authentication-application-if-no-action-is-required"></a>Skip redirect to authentication application if no action is required</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-34413</span></p>
</div>
<div class="paragraph">
<p>API-capable IdP adapters can now prevent a redirect to the authentication application if no user interaction is required.</p>
</div>
<div class="paragraph">
<p>For more information, see <a href="https://docs.pingidentity.com/pingfederate/upgrading_pingfederate/pf_upgrade_considerations_12x.html" class="xref page">Upgrade considerations introduced in PingFederate 12.x</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="alert-and-report-when-approaching-maxthreads"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#alert-and-report-when-approaching-maxthreads"></a>Alert and report when approaching <code class="codeph">maxThreads</code></h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-34437</span></p>
</div>
<div class="paragraph">
<p>You can now configure runtime notifications to alert you when the number of threads in use exceeds a set threshold. You can also use this feature to initiate and log a thread dump event.</p>
</div>
<div class="paragraph">
<p>For more information, see <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_configuring_runtime_notifications.html" class="xref page">Configuring runtime notifications</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="persist-consent-decision-when-revoking-refresh_token"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#persist-consent-decision-when-revoking-refresh_token"></a>Persist consent decision when revoking <code class="codeph">refresh_token</code></h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-33318</span></p>
</div>
<div class="paragraph">
<p>You can now configure your authorization server settings for OAuth and OIDC users so that their decisions to grant access can be persisted after a <code class="codeph">refresh_token</code> is revoked.</p>
</div>
<div class="paragraph">
<p>For more information, see <strong class="uicontrol">Authorization Consent</strong> in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_authorizationserversettingstasklet_oauthauthorizationserversettingsstate.html" class="xref page">Configuring authorization server settings</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="admin-console-notification-of-expiring-certificates"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#admin-console-notification-of-expiring-certificates"></a>Admin console notification of expiring certificates</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-34428</span></p>
</div>
<div class="paragraph">
<p>PingFederate will now issue a notification in the admin console before a certificate expires. You can configure the duration of the notification before and after expiry in the <strong class="uicontrol">Runtime Notifications</strong> menu.</p>
</div>
<div class="paragraph">
<p>Deleted certificates are removed from the notifications menu.</p>
</div>
<div class="paragraph">
<p>For more information, see <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_configuring_runtime_notifications.html" class="xref page">Configuring runtime notifications</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="selective-replication-for-connections-and-oauth-clients"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#selective-replication-for-connections-and-oauth-clients"></a>Selective replication for connections and OAuth clients</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-33989</span></p>
</div>
<div class="paragraph">
<p>We further improved support for self-service and application on-boarding use cases. OAuth applications and SAML connections can now be replicated to PingFederate engine nodes without affecting any dependencies. This enhancement lets development teams manage their applications without the help of PingFederate administrators. For more information, see <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_cluster_management.html" class="xref page">Cluster management</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="openid-connect-front-channel-logout-support"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#openid-connect-front-channel-logout-support"></a>OpenID Connect Front-Channel Logout support</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-33986</span></p>
</div>
<div class="paragraph">
<p>Continuing the PingFederate tradition of recognizing open identity standards, it now supports the OpenID Connect Front-Channel Logout specification. This feature enables global sign-off user journeys. It’s available in addition to PingFederate’s proprietary front-channel logout protocol. For more information, see <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_configuring_oauth_clients.html" class="xref page">Configuring OAuth clients</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="log-category-to-capture-details-of-protocol-requests-and-responses"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#log-category-to-capture-details-of-protocol-requests-and-responses"></a>Log category to capture details of protocol requests and responses</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-33987</span></p>
</div>
<div class="paragraph">
<p>For OpenID Connect IDP connections, log files now include more details so that you can analyze and resolve connection problems easier. You can enable this feature just by selecting a checkbox in the <strong class="wintitle">Log Settings</strong>. For more information, see <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_logsettingstasklet_logsettingsstate.html" class="xref page">Log settings</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="creating-short-lived-or-non-persistent-sessions-when-this-is-my-device-isnt-selected"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#creating-short-lived-or-non-persistent-sessions-when-this-is-my-device-isnt-selected"></a>Creating short-lived or non-persistent sessions when <strong class="uicontrol">This is my device</strong> isn’t selected</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-33982</span></p>
</div>
<div class="paragraph">
<p>Now you can configure PingFederate to enable sessions on shared devices. Devices can be configured as private or public (unspecified) and maintain persistent sessions. This feature is available through the HTML Form Adapter. For more information, see <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_config_auth_sessions.html" class="xref page">Configuring authentication sessions</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="the-cyberark-secret-manager-can-pull-different-username-values-from-cyberark"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#the-cyberark-secret-manager-can-pull-different-username-values-from-cyberark"></a>The CyberArk Secret Manager can pull different username values from CyberArk</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-33985</span></p>
</div>
<div class="paragraph">
<p>The integration with the CyberArk Secret Manager now allows access to all values available through the CyberArk interface. This gives you more freedom when building user journeys. For more information, see <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/config_instanc_secret_manager_plgin_for_cyberark_credent_provid.html" class="xref page">Configuring instances of the secret manager plugin for the CyberArk Credential Provider</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="password-reset-email-otl-returns-users-to-authentication-api-applications-when-using-redirectless-mode"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#password-reset-email-otl-returns-users-to-authentication-api-applications-when-using-redirectless-mode"></a>Password reset email OTL returns users to authentication API applications when using redirectless mode</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-33983</span></p>
</div>
<div class="paragraph">
<p>When you use OAuth and OpenID Connect flows with <code class="codeph">response_mode=pi.flow</code>, users are redirected back to the associated authentication application rather than to PingFederate. This is enables more consistent user journeys. For more information, see <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_config_self_servic_account_recovery.html" class="xref page">Configuring self-service account recovery</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="amazon-dynamodb-account-linking"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#amazon-dynamodb-account-linking"></a>Amazon DynamoDB account linking</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-33988</span></p>
</div>
<div class="paragraph">
<p>To further support Amazon DynamoDB use cases, now you can also use account linking with this NoSQL database. For more information, see <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_configuring_amazon_dynamodb_for_account_link_storage.html" class="xref page">Configuring an Amazon DynamoDB for account-link storage</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="optional-input-and-output-contracts-for-policy-fragments"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#optional-input-and-output-contracts-for-policy-fragments"></a>Optional input and output contracts for policy fragments</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-33332</span></p>
</div>
<div class="paragraph">
<p>This feature simplifies the use of PingFederate policies because it no longer requires input or output contracts for certain fragments. This improves the readability, maintainability, and performance of these policies. For more information, see <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_defining_policy_fragment.html" class="xref page">Defining policy fragments</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="openbanking-plugin-support-for-the-dpop_bound_access_tokens-parameter"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#openbanking-plugin-support-for-the-dpop_bound_access_tokens-parameter"></a>OpenBanking plugin support for the <code class="codeph">dpop_bound_access_tokens</code> parameter</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-33631</span></p>
</div>
<div class="paragraph">
<p>Enhancing PingFederate’s support for OAuth DPoP, this release includes support for this type of access token. It lets developers learn more about the use and importance of the <code class="codeph">dpop_bound_access_tokens</code> parameter. For more information about the parameter, see the <a href="https://github.com/pingidentity/pf-open-banking-plugin" target="_blank" rel="noopener">PingFederate Open Banking Software Assertion Validator plug-in</a> on GitHub.</p>
</div>
</div>
<div class="sect3">
<h4 id="toggle-plugin-creationinitialization-during-startup"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#toggle-plugin-creationinitialization-during-startup"></a>Toggle plugin creation/initialization during startup</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-34640</span></p>
</div>
<div class="paragraph">
<p>In rare cases where plugin creation and initialization significantly slows down PingFederate startup, you can now turn off plugin creation and initialization. Plugins will then only be initialized on first use.</p>
</div>
<div class="paragraph">
<p>The default startup behavior is recommended for most customers. For more information about this option and the tradeoffs involved in enabling it, open a support case.</p>
</div>
</div>
<div class="sect3">
<h4 id="pingone-protect-integration-kit"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingone-protect-integration-kit"></a>PingOne Protect Integration Kit</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-34147</span></p>
</div>
<div class="paragraph">
<p>The PingOne Protect Integration Kit is now bundled with PingFederate.</p>
</div>
</div>
<div class="sect3">
<h4 id="pingid-integration-kit"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingid-integration-kit"></a>PingID Integration Kit</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span>
<span class="ping_ticket">PF-34369</span></p>
</div>
<div class="paragraph">
<p>The PingID Integration Kit has been updated to version 2.26.</p>
</div>
</div>
<div class="sect3">
<h4 id="pingone-mfa-integration-kit-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingone-mfa-integration-kit-3"></a>PingOne MFA Integration Kit</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span>
<span class="ping_ticket">PF-34368</span></p>
</div>
<div class="paragraph">
<p>The PingOne MFA Integration Kit has been updated to version 2.2.1.</p>
</div>
</div>
<div class="sect3">
<h4 id="java-17-support-for-thales-luna-network-hsm-integration"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#java-17-support-for-thales-luna-network-hsm-integration"></a>Java 17 support for Thales Luna Network HSM integration</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span>
<span class="ping_ticket">PF-34168</span></p>
</div>
<div class="paragraph">
<p>When integrating with Thales Luna Network hardware security modules (HSMs), you can now use Java 17.</p>
</div>
<div class="paragraph">
<p>For more information, see <a href="https://docs.pingidentity.com/pingfederate/getting_started_with_pingfederate/pf_integrating_thales_luna_network_hsm.html" class="xref page">Integrating with Thales Luna Network HSM</a></p>
</div>
</div>
<div class="sect3">
<h4 id="improved-ognl-expression-logging"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#improved-ognl-expression-logging"></a>Improved OGNL expression logging</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span>
<span class="ping_ticket">PF-34050</span></p>
</div>
<div class="paragraph">
<p>The administrator audit log file (<code class="filepath">admin.log</code>) now logs any OGNL expression tests performed and the expression variables used with an event type of <code class="codeph">TEST_EXPRESSION</code>. For more information, see <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_admin_audit_loggin.html" class="xref page">Administrator audit logging</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="improved-csd"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#improved-csd"></a>Improved CSD</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span>
<span class="ping_ticket">PF-33095</span></p>
</div>
<div class="paragraph">
<p>The Collect Support Data (CSD) script has been improved to capture more details.</p>
</div>
</div>
<div class="sect3">
<h4 id="authenticating-to-azure-sql-managed-instance-through-azure-active-directory"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#authenticating-to-azure-sql-managed-instance-through-azure-active-directory"></a>Authenticating to Azure SQL Managed Instance through Azure Active Directory</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span>
<span class="ping_ticket">PF-33621</span></p>
</div>
<div class="paragraph">
<p>Now PingFederate supports authentication to Azure SQL Managed Instance through Azure Active Directory without a username and password. For more information, see <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_configuring_jdbc_connection.html" class="xref page">Configuring a JDBC connection</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="upgraded-bcfips-library"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#upgraded-bcfips-library"></a>Upgraded BCFIPS library</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span>
<span class="ping_ticket">PF-32747</span></p>
</div>
<div class="paragraph">
<p>Upgraded the BCFIPS library to 1.0.2.4, which now supports enabling BCFIPS mode with Java 17.</p>
</div>
<div class="paragraph">
<p>For more information, see <a href="https://docs.pingidentity.com/pingfederate/getting_started_with_pingfederate/pf_bouncy_castle_fips_provider.html" class="xref page">Bouncy Castle FIPS provider</a> and <a href="https://docs.pingidentity.com/pingfederate/getting_started_with_pingfederate/pf_integrating_bouncy_castle_fips.html" class="xref page">Integrating Bouncy Castle FIPS providers</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="upgraded-third-party-libraries"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#upgraded-third-party-libraries"></a>Upgraded third-party libraries</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>Upgraded Jetty to version 9.4.53.v20231009.</p>
</li>
<li>
<p>Upgraded JGroups to version 4.2.24.Final.</p>
</li>
</ul>
</div>
</div>
</div>
<div class="sect2">
<h3 id="resolved-issues-43"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-43"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="improved-client-authentication-security"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#improved-client-authentication-security"></a>Improved client authentication security</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-34645</span></p>
</div>
<div class="paragraph">
<p>Fixed a potential security vulnerability described in <a href="https://support.pingidentity.com/s/article/SECADV040-PingFederate-OAuth-Client-Authentication-Bypass" target="_blank" rel="noopener">SECADV040</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="resolved-a-vulnerability-in-the-initial-setup-wizard"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-a-vulnerability-in-the-initial-setup-wizard"></a>Resolved a vulnerability in the Initial Setup Wizard</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-34646</span></p>
</div>
<div class="paragraph">
<p>Fixed a Server-Side Request Forgery vulnerability in the Initial Setup Wizard described in security advisory <a href="https://support.pingidentity.com/s/article/SECADV041-PingFederate-Server-Side-Request-Forgery" target="_blank" rel="noopener">SECADV041</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="prevent-jgroups-thread-pool-exhaustion-in-large-clusters"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#prevent-jgroups-thread-pool-exhaustion-in-large-clusters"></a>Prevent JGroups thread pool exhaustion in large clusters</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34718</span></p>
</div>
<div class="paragraph">
<p>For fresh installs, we changed the default value of <code class="cmdname"><strong>pf.cluster.TCPPING.return_entire_cache</strong></code> in <code class="filepath">jgroups.properties</code> from <code class="option">true</code> to <code class="option">false</code>.</p>
</div>
<div class="paragraph">
<p>This prevents an issue where remote procedure calls (RPCs) can be dropped in large clusters that use TCPPING.</p>
</div>
<div class="paragraph">
<p>For more information, see <a href="https://docs.pingidentity.com/pingfederate/upgrading_pingfederate/pf_upgrade_considerations_12x.html" class="xref page">Upgrade considerations introduced in PingFederate 12.x</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="swagger-response-for-oauthaccesstokenmappings"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#swagger-response-for-oauthaccesstokenmappings"></a>Swagger response for oauth/accessTokenMappings</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34500</span></p>
</div>
<div class="paragraph">
<p>Fixed an issue with the administrative API doc on the <code class="codeph">/oauth/accessTokenMappings</code> endpoint not matching the actual endpoint response.</p>
</div>
</div>
<div class="sect3">
<h4 id="multi-value-contains-dn-in-policy-rule-check-no-longer-case-sensitive"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#multi-value-contains-dn-in-policy-rule-check-no-longer-case-sensitive"></a><code class="codeph">multi-value contains DN</code> in policy rule check no longer case-sensitive</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33560</span></p>
</div>
<div class="paragraph">
<p>Policy Rules conditions that use <code class="codeph">multi-value contains DN</code> now ignore case while comparing the DN value.</p>
</div>
</div>
<div class="sect3">
<h4 id="log-messages-about-illegal-characters-in-api-calls"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#log-messages-about-illegal-characters-in-api-calls"></a>Log messages about illegal characters in API calls</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33305</span></p>
</div>
<div class="paragraph">
<p>Now log messages about illegal characters in API calls are logged at the DEBUG level rather than the WARN level.</p>
</div>
</div>
<div class="sect3">
<h4 id="support-for-none-as-a-valid-token-endpoint-value"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#support-for-none-as-a-valid-token-endpoint-value"></a>Support for <code class="codeph">none</code> as a valid token endpoint value</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34115</span></p>
</div>
<div class="paragraph">
<p>Added the value <code class="codeph">none</code> to <code class="codeph">/.well-known/openid-configuration/token_endpoint_auth_methods_supported</code></p>
</div>
</div>
<div class="sect3">
<h4 id="the-id_token_jti-property-in-token-endpoint-responses"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#the-id_token_jti-property-in-token-endpoint-responses"></a>The <code class="codeph">id_token_jti</code> property in token endpoint responses</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34210</span></p>
</div>
<div class="paragraph">
<p>The <code class="codeph">id_token_jti</code> property is no longer included in token endpoint responses.</p>
</div>
</div>
<div class="sect3">
<h4 id="administrative-api-defect-when-fragment-rules-have-default-to-success-disabled"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#administrative-api-defect-when-fragment-rules-have-default-to-success-disabled"></a>Administrative API defect when fragment rules have <strong class="uicontrol">Default to Success</strong> disabled</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34216</span></p>
</div>
<div class="paragraph">
<p>Fixed an administrative API defect when a fragment rule had <strong class="uicontrol">Default to Success</strong> disabled</p>
</div>
</div>
<div class="sect3">
<h4 id="fixed-idpstartslo-ping-404-caused-by-virtual-issuer-configuration"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#fixed-idpstartslo-ping-404-caused-by-virtual-issuer-configuration"></a>Fixed <code class="codeph">/idp/startSLO.ping</code> <code class="systemoutput">404</code> caused by virtual issuer configuration</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34322</span></p>
</div>
<div class="paragraph">
<p>Fixed an issue that was returning a <code class="systemoutput">404</code> error if the <code class="codeph">/idp/startSLO.ping</code> endpoint was hit while a virtual issuer was configured. You can now configure virtual issuers with a context path.</p>
</div>
</div>
<div class="sect3">
<h4 id="client-jwks-now-sets-properly-when-using-dynamodb-storage"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#client-jwks-now-sets-properly-when-using-dynamodb-storage"></a>Client JWKS now sets properly when using DynamoDB storage</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34504</span></p>
</div>
<div class="paragraph">
<p>Clients that maintain a JWKS endpoint can now use private key JWT based authentication when requesting an access token.</p>
</div>
</div>
<div class="sect3">
<h4 id="fixed-npe-when-checking-an-existing-persistent-grant-that-is-expired-with-dynamodb"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#fixed-npe-when-checking-an-existing-persistent-grant-that-is-expired-with-dynamodb"></a>Fixed NPE when checking an existing persistent grant that is expired with DynamoDB</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34606</span></p>
</div>
<div class="paragraph">
<p>Checking for existing but expired grants with DynamoDB no longer causes a null pointer exception error (NPE).</p>
</div>
</div>
<div class="sect3">
<h4 id="connections-close-after-getting-a-401-or-403-from-pingone-api"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#connections-close-after-getting-a-401-or-403-from-pingone-api"></a>Connections close after getting a <code class="systemoutput">401</code> or <code class="systemoutput">403</code> from PingOne API</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34545</span></p>
</div>
<div class="paragraph">
<p>Fixed an issue preventing PingFederate from closing connections after receiving a <code class="systemoutput">401</code> or <code class="systemoutput">403</code> response from PingOne MFA.</p>
</div>
</div>
<div class="sect3">
<h4 id="pingfederate-systematically-adds-server-side-sort-control"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-systematically-adds-server-side-sort-control"></a>PingFederate systematically adds server-side sort control</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33466</span></p>
</div>
<div class="paragraph">
<p>You can now turn off server-side sorting via a configuration option.</p>
</div>
</div>
<div class="sect3">
<h4 id="unable-to-copy-and-paste-policy-contract-in-specific-situations"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#unable-to-copy-and-paste-policy-contract-in-specific-situations"></a>Unable to copy and paste policy contract in specific situations</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34433</span></p>
</div>
<div class="paragraph">
<p>You can now copy and paste a policy contract below a selector node.</p>
</div>
</div>
<div class="sect3">
<h4 id="xml-decryption-failing-with-keyname-element"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#xml-decryption-failing-with-keyname-element"></a>XML decryption failing with <code class="codeph">KeyName</code> element</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34536</span></p>
</div>
<div class="paragraph">
<p>Fixed an issue where decryption of an encrypted SAML element could fail if a <code class="codeph">KeyName</code> was specified.</p>
</div>
</div>
<div class="sect3">
<h4 id="one-time-link-in-password-reset-email-messages"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#one-time-link-in-password-reset-email-messages"></a>One-time link in password-reset email messages</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33983</span></p>
</div>
<div class="paragraph">
<p>When using redirectless mode, now the one-time link (OTL) in password-reset email messages returns users to the authentication API application configured for the policy, rather than to PingFederate.</p>
</div>
</div>
<div class="sect3">
<h4 id="incorrect-error-template-when-using-service-provider-authentication-policies"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#incorrect-error-template-when-using-service-provider-authentication-policies"></a>Incorrect error template when using service provider authentication policies</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34111</span></p>
</div>
<div class="paragraph">
<p>When a service provider (SP) authentication policy fails, PingFederate now renders the <code class="codeph">sp.sso.error.page.template.html</code> page instead of the <code class="codeph">idp.sso.error.page.template.html</code> page.</p>
</div>
</div>
<div class="sect3">
<h4 id="updating-oauth-clients-with-dynamic-client-registration"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#updating-oauth-clients-with-dynamic-client-registration"></a>Updating OAuth clients with dynamic client registration</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34146</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect where an OAuth client created with dynamic client registration (DCR) couldn’t be updated with DCR after it was modified with the administrative console.</p>
</div>
</div>
<div class="sect3">
<h4 id="idle-jdbc-datastore-connections"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#idle-jdbc-datastore-connections"></a>Idle JDBC datastore connections</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34163</span></p>
</div>
<div class="paragraph">
<p>Now PingFederate closes idle JDBC datastore connections until the minimum pool size is reached instead of closing and recreating all of them.</p>
</div>
</div>
<div class="sect3">
<h4 id="the-id_token_jti-property-in-token-endpoint-responses-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#the-id_token_jti-property-in-token-endpoint-responses-2"></a>The <code class="codeph">id_token_jti</code> property in token endpoint responses</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34210</span></p>
</div>
<div class="paragraph">
<p>The <code class="codeph">id_token_jti</code> property is no longer included in token endpoint responses.</p>
</div>
</div>
<div class="sect3">
<h4 id="administrative-api-defect-when-fragment-rules-have-default-to-success-disabled-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#administrative-api-defect-when-fragment-rules-have-default-to-success-disabled-2"></a>Administrative API defect when fragment rules have <strong class="uicontrol">Default to Success</strong> disabled</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34216</span></p>
</div>
<div class="paragraph">
<p>Fixed an administrative API defect when a fragment rule had <strong class="uicontrol">Default to Success</strong> disabled</p>
</div>
</div>
<div class="sect3">
<h4 id="email-notifications-for-licensing-events-even-when-disabled"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#email-notifications-for-licensing-events-even-when-disabled"></a>Email notifications for licensing events even when disabled</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34225</span></p>
</div>
<div class="paragraph">
<p>Resolved an issue that caused PingFederate to send email notifications for licensing events even though they were disabled in the <strong class="wintitle">Runtime Notifications</strong> configuration.</p>
</div>
</div>
<div class="sect3">
<h4 id="jetty-library-upgrade-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#jetty-library-upgrade-2"></a>Jetty library upgrade</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-31865</span></p>
</div>
<div class="paragraph">
<p>We upgraded the Jetty library, resolving CVE-2022-2047 and CVE-2022-2048.</p>
</div>
</div>
<div class="sect3">
<h4 id="oauth-scope-names"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oauth-scope-names"></a>OAuth scope names</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33056</span></p>
</div>
<div class="paragraph">
<p>Using <code class="codeph">submit</code> and <code class="codeph">onSubmit</code> as OAuth scope names in the administrative UI drop-down no longer causes front-end JavaScript errors.</p>
</div>
</div>
<div class="sect3">
<h4 id="empty-authorization_details-omitted"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#empty-authorization_details-omitted"></a>Empty <code class="codeph">authorization_details</code> omitted</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33174</span></p>
</div>
<div class="paragraph">
<p>The <code class="codeph">authorization_details</code> claim in a <span class="fr-alt fr-glossentry" title="<div class=&quot;paragraph&quot;>
<p>An IETF standard container format for a JSON object used for the secure exchange of content, such as identity or entitlement information. You can find the industry standard in <a href=&quot;https://datatracker.ietf.org/doc/html/rfc7519&quot;>RFC 7519</a>.</p>
</div>">JWT</span> access token manager configuration is no longer sent if it’s empty.</p>
</div>
</div>
<div class="sect3">
<h4 id="policy-fragment-validation-error"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#policy-fragment-validation-error"></a>Policy fragment validation error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33156</span></p>
</div>
<div class="paragraph">
<p>Policy fragments with valid authentication sources no longer fail with an Invalid Configuration error during runtime.</p>
</div>
</div>
<div class="sect3">
<h4 id="eliminating-redundant-group-updates"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#eliminating-redundant-group-updates"></a>Eliminating redundant group updates</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33441</span></p>
</div>
<div class="paragraph">
<p>PingFederate, when configured with PingDirectory as an outbound provisioning data source, no longer sends redundant group updates in each provisioning cycle when the entry remains unchanged.</p>
</div>
</div>
<div class="sect3">
<h4 id="potential-security-vulnerability"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#potential-security-vulnerability"></a>Potential security vulnerability</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33449</span></p>
</div>
<div class="paragraph">
<p>We’ve resolved a potential security vulnerability that is described in security advisory <a href="https://support.pingidentity.com/s/article/SECADV037-PingFederate-Security-Rollup-Denial-of-Service-Information-Disclosure-Authentication-Bypass-Vulnerabilities" target="_blank" rel="noopener">SECADV037</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="pingfederate-as-a-windows-service"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-as-a-windows-service"></a>PingFederate as a Windows service</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33450</span></p>
</div>
<div class="paragraph">
<p>We fixed an issue so that PingFederate as a Windows service now runs on Java 17. When updating to the latest maintenance release using an in-place update method (for example, from 11.3.0 to 11.3.x), in addition to the steps in <a href="https://docs.pingidentity.com/pingfederate/upgrading_pingfederate/pf_updating_latest_maintenance_release.html" class="xref page">Updating to the latest maintenance release</a>, you must remove the existing PingFederate Windows service. After removal, re-install the PingFederate Windows Service to apply this fix.</p>
</div>
</div>
<div class="sect3">
<h4 id="authentication-policy-fail-path"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#authentication-policy-fail-path"></a>Authentication policy fail path</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33519</span></p>
</div>
<div class="paragraph">
<p>When an OIDC identity provider (IdP) connection fails in an authentication policy, PingFederate now continues on to the fail path of the authentication policy.</p>
</div>
</div>
<div class="sect3">
<h4 id="fragment-mapping-validation-error"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#fragment-mapping-validation-error"></a>Fragment mapping validation error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33722</span></p>
</div>
<div class="paragraph">
<p>We resolved an issue that incorrectly produced an administrative API validation error when the fragment mapping references <code class="codeph">context.RequestedUser</code> as the mapping source.</p>
</div>
</div>
<div class="sect3">
<h4 id="authorization-details-within-a-rar"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#authorization-details-within-a-rar"></a>Authorization details within a RAR</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33863</span></p>
</div>
<div class="paragraph">
<p>PingFederate now processes authorization details within a rich authorization request (RAR) as a JSON Array in a JWT request. Additionally, PingFederate no longer supports authorization details sent as stringified JSON arrays.</p>
</div>
</div>
<div class="sect3">
<h4 id="cluster-engine-nodes-starting-without-replication-data"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#cluster-engine-nodes-starting-without-replication-data"></a>Cluster engine nodes starting without replication data</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33881</span></p>
</div>
<div class="paragraph">
<p>Resolved a replication issue that, in rare cases, caused an engine node in a cluster to start without replication data from other nodes.</p>
</div>
</div>
<div class="sect3">
<h4 id="server-error-when-revoking-user-sessions"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#server-error-when-revoking-user-sessions"></a>Server error when revoking user sessions</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33920</span></p>
</div>
<div class="paragraph">
<p>Resolved an issue that prevented user sessions from being revoked through the session management API when using persistent sessions.</p>
</div>
</div>
<div class="sect3">
<h4 id="potential-security-vulnerability-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#potential-security-vulnerability-2"></a>Potential security vulnerability</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33935</span></p>
</div>
<div class="paragraph">
<p>We’ve resolved a potential security vulnerability that is described in security advisory <a href="https://support.pingidentity.com/s/article/SECADV037-PingFederate-Security-Rollup-Denial-of-Service-Information-Disclosure-Authentication-Bypass-Vulnerabilities" target="_blank" rel="noopener">SECADV037</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="fragment-mapping-validation-errors"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#fragment-mapping-validation-errors"></a>Fragment mapping validation errors</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33957</span></p>
</div>
<div class="paragraph">
<p>When utilizing the PingFederate administrative API to create or update a fragment that includes another fragment, the API will no longer produce a validation error when fragment mapping involves an input source type.</p>
</div>
</div>
<div class="sect3">
<h4 id="updated-template-variable"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#updated-template-variable"></a>Updated template variable</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34016</span></p>
</div>
<div class="paragraph">
<p>The <code class="filepath">message-template-end-user-password-change.html</code> template now contains the <em class="varname">USERNAME</em> variable.</p>
</div>
</div>
<div class="sect3">
<h4 id="potential-security-vulnerability-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#potential-security-vulnerability-3"></a>Potential security vulnerability</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34017</span></p>
</div>
<div class="paragraph">
<p>We’ve resolved a potential security vulnerability that is described in security advisory <a href="https://support.pingidentity.com/s/article/SECADV037-PingFederate-Security-Rollup-Denial-of-Service-Information-Disclosure-Authentication-Bypass-Vulnerabilities" target="_blank" rel="noopener">SECADV037</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="policy-evaluation-issue"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#policy-evaluation-issue"></a>Policy evaluation issue</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34051</span></p>
</div>
<div class="paragraph">
<p>We fixed a policy evaluation issue that occurred when <code class="codeph">ui_locales</code> was present in an authentication request.</p>
</div>
</div>
<div class="sect3">
<h4 id="certificate-import-improvements"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#certificate-import-improvements"></a>Certificate import improvements</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34074</span></p>
</div>
<div class="paragraph">
<p>We updated the administrative UI to include certification serial number in the drop-down, thus preventing import errors for certifications sharing the same Subject DN and expiration date combination.</p>
</div>
</div>
<div class="sect3">
<h4 id="dynamodb-attribute-lookup-error"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#dynamodb-attribute-lookup-error"></a>DynamoDB attribute lookup error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34099</span></p>
</div>
<div class="paragraph">
<p>We fixed an attribute lookup error that occurred when different DynamoDB attributes shared an overlapping path.</p>
</div>
</div>
<div class="sect3">
<h4 id="certificate-in-use-detection-slowdown"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#certificate-in-use-detection-slowdown"></a>Certificate in-use detection slowdown</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34077</span></p>
</div>
<div class="paragraph">
<p>We fixed a defect that caused PingFederate to check every certificate when loading certificate-related pages in the administrative interface, which slowed down performance.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="known-issues-and-limitations-6"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#known-issues-and-limitations-6"></a>Known issues and limitations</h3>
<div class="sect3">
<h4 id="pingid-password-credential-validator-with-integrated-radius-server"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingid-password-credential-validator-with-integrated-radius-server"></a>PingID password credential validator with integrated RADIUS server</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>PingFederate versions 11.1.4, 11.1.5, 11.2.1, and 11.2.2 contain version 3.0.2 of the PingID password credential validator (PCV). That version of the PCV has known issues that you should review before upgrading. For more information, see <a href="https://support.pingidentity.com/s/article/Known-issues-in-PingID-RADIUS-PCV-3-0-2" target="_blank" rel="noopener">Known issues in PingID RADIUS PCV 3.0.2</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="administrative-console-and-administrative-api-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#administrative-console-and-administrative-api-5"></a>Administrative console and administrative API</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>Although PingFederate 11.3 and later support DPoP, a known limitation is that the following features don’t support DPoP when PingFederate is the RP:</p>
<div class="ulist">
<ul>
<li>
<p>The administrative console authentication scheme using OIDC</p>
</li>
<li>
<p>The administrative API authentication scheme using OAuth 2.0</p>
</li>
</ul>
</div>
</li>
<li>
<p>/bulk: Only resource types currently supported by the administrative API are included in the exported data. We don’t intend to introduce administrative API support to the following areas:</p>
<div class="ulist">
<ul>
<li>
<p><a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_configuring_standard_idp_discovery.html" class="xref page">SAML 2.0 IdP Discovery</a></p>
</li>
<li>
<p><a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_affiliationstasklet_affiliationmgmtstate.html" class="xref page">SAML 2.0 SP Affiliation</a></p>
</li>
<li>
<p><a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_smsprovidersettingstasklet_smsprovidersettingsstate.html" class="xref page">SMS Provider</a></p>
</li>
</ul>
</div>
</li>
<li>
<p>Previously, the administrative API did not accurately reflect a <strong class="uicontrol">Persistent Grant Max Lifetime</strong> setting of 29 days (or shorter) with the selection of the <strong class="uicontrol">Grants Do Not Timeout Due To Inactivity</strong> option. As a result, if you have configured such OAuth authorization server settings and have generated a bulk export in version 10.0 through 10.0.2, we recommend that you re-generate a new bulk export after upgrading to version 10.0.3 (or a more recent version). The newly exported data does not contain the aforementioned flaw, and you can safely import it to version 10.0.3 (or a more recent version).</p>
</li>
<li>
<p>When enabling mTLS certificate-based authentication, administrators often configure a list of acceptable client certificate issuers. When you use a browser to access the console or the administrative API documentation, PingFederate returns to the browser the list of acceptable issuers as part of the TLS handshake. If the browser’s client certificate store contains multiple client certificates, the browser often presents you only the certificates whose issuer matches one of the acceptable issuers. However, when PingFederate runs in a Java 11 environment, Chrome presents you all its configured client certificates, regardless of whether the issuer matches one of the acceptable issuers or not.</p>
</li>
<li>
<p>When using mTLS authentication to authenticate to an LDAP server for administrative console or administrative API access, PingFederate doesn’t support using a Microsoft Active Directory server.</p>
</li>
<li>
<p>Prior to toggling the status of a connection with the administrative API, you must ensure that any expired certificates or no longer available attributes are replaced with valid certificates or attributes; otherwise, the update request fails.</p>
</li>
<li>
<p>When creating or updating a child instance of a hierarchical plugin, the administrative API retains objects with an <code class="codeph">"inherited": false</code> name/value pair (or without such name/value pair altogether), ignores those with a value of <code class="codeph">true</code>, and returns a 200 HTTP status code. No error messages are returned for the ignored objects.</p>
</li>
<li>
<p>Using the browser’s navigation mechanisms (for example, the <strong class="uicontrol">Back</strong> button) causes inconsistent behavior in the administrative console. Use the navigation buttons provided at the bottom of windows in the PingFederate console.</p>
</li>
<li>
<p>Using the PingFederate console in multiple tabs on one browser might cause inconsistent behavior which could corrupt its configuration.</p>
</li>
<li>
<p>If authenticated to the PingFederate administrative console using certificate authentication, a session that has timed out might not appear to behave as expected. Normally (when using password authentication), when a session has timed out and a user attempts some action in the console, the browser is redirected to the sign-on page, and then back to the administrative console after authentication is complete. Similar behavior applies for certificate authentication, in principle. However, because the browser might automatically resubmit the certificate for authentication, the browser might redirect to the administrative console and not the sign on page.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="pingone-mfa-ciba-authenticator"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingone-mfa-ciba-authenticator"></a>PingOne MFA CIBA Authenticator</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span>
<span class="ping_product">PingOne MFA</span></p>
</div>
<div class="paragraph">
<p>PingFederate 11.3 is not compatible with the PingOne MFA CIBA Authenticator bundled in PingOne MFA Integration Kit version 2.1 and earlier. This issue was resolved in version 2.2 of that integration kit.</p>
</div>
</div>
<div class="sect3">
<h4 id="tlsv1-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#tlsv1-3"></a>TLSv1.3</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>For Java versions that don’t support TLSv1.3 (meaning versions earlier than 8u261), PingFederate fails on start up with a <code class="codeph">NoSuchAlgorithmException</code> exception. To resolve this error, remove <code class="codeph">TLSv1.3</code> from the following settings in the <code class="filepath">run.properties</code> file:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><code class="parmname">pf.tls.client.protocols</code></p>
</li>
<li>
<p><code class="parmname">pf.tls.runtime.server.protocols</code></p>
</li>
<li>
<p><code class="parmname">pf.tls.admin.server.protocols</code></p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="tls-cipher-suite-customization-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#tls-cipher-suite-customization-5"></a>TLS cipher suite customization</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>PingFederate’s TLS cipher suites can be customized by modifying <code class="filepath">com.pingidentity.crypto.SunJCEManager.xml</code> (or a similarly-named file if BCFIPS or an HSM is configured). After updating the file and replicating, all cluster nodes must be restarted for the change to take effect.</p>
</div>
</div>
<div class="sect3">
<h4 id="java-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#java-5"></a>Java</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>CloudHSM is not supported when using Java 17.</p>
</li>
<li>
<p>Updating Java version 8 to version 11 results in an error when PingFederate is already installed and running on Windows. To work around this issue, uninstall and reinstall the PingFederate Windows service by running the <code class="filepath">UninstallPingFederateService.bat</code> and <code class="filepath">InstallPingFederateService.bat</code> files located in <code class="filepath"><em class="varname">&lt;pf_install&gt;</em>/pingfederate/sbin/wrapper</code>.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="hsms-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#hsms-5"></a>HSMs</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>AWS CloudHSM</p>
</div>
<div class="ulist">
<ul>
<li>
<p>It is not possible to use an elliptic curve (EC) certificate as an SSL server certificate.</p>
</li>
<li>
<p>TLS 1.3 is not currently supported.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Thales HSMs</p>
</div>
<div class="ulist">
<ul>
<li>
<p>JWT token decryption using ECDH-ES may fail. This issue only arises if PingFederate is configured with static OAuth and OpenID Connect keys, a static key is stored on the HSM, and PingFederate is consuming a token encrypted with this key.</p>
</li>
<li>
<p>It is not possible to use an EC certificate as an SSL server certificate.</p>
</li>
<li>
<p>TLS 1.3 is not currently supported.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Entrust HSMs</p>
</div>
<div class="ulist">
<ul>
<li>
<p>JWT token decryption using ECDH-ES may fail. This issue only arises if PingFederate is configured with static OAuth and OpenID Connect keys, a static key is stored on the HSM, and PingFederate is consuming a token encrypted with this key.</p>
</li>
<li>
<p>It is not possible to import a PKCS12- or PEM-formatted EC certificate.</p>
</li>
<li>
<p>It is not possible to use an EC certificate as an SSL server certificate.</p>
</li>
<li>
<p>TLS 1.3 is not currently supported.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="sso-and-slo-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#sso-and-slo-5"></a>SSO and SLO</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>When consuming SAML metadata, PingFederate does not report an error when neither the <code class="parmname">validUntil</code> nor the <code class="parmname">cacheDuration</code> attribute is included in the metadata. Note that PingFederate does reject expired SAML metadata as indicated by the <code class="parmname">validUntil</code> attribute value, if it is provided.</p>
</li>
<li>
<p>The anchored-certificate trust model cannot be used with the Single log off (SLO) redirect binding because the certificate cannot be included with the logout request.</p>
</li>
<li>
<p>If an IdP connection is configured for multiple virtual server IDs, PingFederate will always use the default virtual server ID for IdP Discovery during an SP-initiated SSO event.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="composite-adapter-configuration-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#composite-adapter-configuration-5"></a>Composite Adapter configuration</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>SLO is not supported when users are authenticated through a Composite Adapter instance that contains another instance of the Composite Adapter.</p>
</div>
</div>
<div class="sect3">
<h4 id="self-service-password-reset-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#self-service-password-reset-5"></a>Self-service password reset</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>Passwords can be reset for Microsoft Active Directory user accounts without the permission to change password.</p>
</div>
</div>
<div class="sect3">
<h4 id="oauth-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oauth-5"></a>OAuth</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>PingFederate does not support a case-sensitive naming convention for OAuth client ID values when client records are stored in a directory server. For example, after creating a client with an ID value of <code class="codeph">sampleClient</code>, PingFederate does not allow the creation of another client with an ID value of <code class="codeph">SampleClient</code>.</p>
</div>
<div class="paragraph">
<p>Although it’s possible to create clients using the same ID values with different casings when client records are stored in XML files, a database server, or custom storage, we recommend not doing so to avoid potential record migration issues.</p>
</div>
</div>
<div class="sect3">
<h4 id="customer-identity-and-access-management-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#customer-identity-and-access-management-5"></a>Customer identity and access management</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>Some browsers display a date-picker user interface for fields that have been designed for date-specific inputs. Some browsers do not. If one or more date-specific fields are defined on the registration page or the profile management page (or both), end users must enter the dates manually if their browsers do not display a date-picker user interface for those fields.</p>
</div>
</div>
<div class="sect3">
<h4 id="provisioning-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#provisioning-5"></a>Provisioning</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>LDAP referrals return an error and cause provisioning to fail if the <code class="parmname">user</code> or <code class="parmname">group</code> objects are defined at the DC level, and not within an OU or within the Users CN.</p>
</li>
<li>
<p>The <code class="parmname">totalResults</code> value in SCIM responses indicates the number of results returned in the current response, not the total number of estimated results on the LDAP server.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="logging-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#logging-5"></a>Logging</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>If a source attribute has been configured for masking in an IdP adapter or IdP connection and the source attribute is mapped to OAuth’s persistent grant <code class="parmname">USER_KEY</code> attribute, the <code class="parmname">USER_KEY</code> attribute will not be masked in the server logs. Other persistent grant attributes will be masked.</p>
</li>
<li>
<p>Even if a source attribute has been configured for masking in an IdP adapter and the source attribute is mapped as the adapter’s unique user key, the user key attribute is not masked in the server or audit logs.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="database-logging-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#database-logging-5"></a>Database logging</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>If a source attribute has been configured for masking in an IdP adapter or IdP connection and the source attribute is mapped to OAuth’s persistent grant <code class="parmname">USER_KEY</code> attribute, the <code class="parmname">USER_KEY</code> attribute will not be masked in the server logs. Other persistent grant attributes will be masked.</p>
</li>
<li>
<p>Even if a source attribute has been configured for masking in an IdP adapter and the source attribute is mapped as the adapter’s unique user key, the user key attribute is not masked in the server or audit logs.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="radius-nas-ip-address-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#radius-nas-ip-address-5"></a>RADIUS NAS-IP-Address</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>The RADIUS NAS-IP-Address is only included in Access-Request packets when the <code class="codeph">pf.bind.engine.address</code> is set with an IPv4 address. IPv6 is not supported.</p>
</div>
</div>
<div class="sect3">
<h4 id="amazon-sns-notification-publisher-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#amazon-sns-notification-publisher-5"></a>Amazon SNS Notification Publisher</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>When deploying PingFederate with a forward proxy, plugins based on the AWS SDK, such as the Amazon SNS Notification Publisher, will only honor the <code class="codeph">http.proxyHost</code>, <code class="codeph">http.proxyPort</code>, <code class="codeph">http.proxyUser</code>, and <code class="codeph">http.proxyPassword</code> properties in <code class="filepath">run.properties</code>. The plugin will rely on these properties even if the service URL is <code class="codeph">https</code>.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="deprecated-features-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#deprecated-features-5"></a>Deprecated features</h3>
<div class="sect3">
<h4 id="saml-idp-discovery-and-saml-sp-affiliations"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#saml-idp-discovery-and-saml-sp-affiliations"></a>SAML IdP Discovery and SAML SP Affiliations</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>As of PingFederate 12.0, these features have been deprecated, and will be removed in a future release.</p>
</div>
</div>
<div class="sect3">
<h4 id="text-message-sspr"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#text-message-sspr"></a>Text Message SSPR</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>Support for text message self-service password reset (SSPR) is deprecated as of PingFederate 12.0 and will be removed in a future release. To ensure continued support, migrate your SSPR configurations to an authentication policy using the <a href="https://docs.pingidentity.com/integrations/otp/pf_otp_ik.html">One-Time Passcode Integration Kit</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="upgrade-from-pingfederate-6-x-and-7-x"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#upgrade-from-pingfederate-6-x-and-7-x"></a>Upgrade from PingFederate 6.x and 7.x</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>Starting with version 12.0, PingFederate no longer supports upgrading from PingFederate version 6.x and 7.x.</p>
</div>
</div>
<div class="sect3">
<h4 id="pingone-fraud-integration-kit"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingone-fraud-integration-kit"></a>PingOne Fraud integration kit</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_product">PingOne Fraud</span></p>
</div>
<div class="paragraph">
<p>The PingOne Fraud integration kit is no longer bundled with PingFederate.</p>
</div>
</div>
<div class="sect3">
<h4 id="microsoft-internet-explorer-11"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#microsoft-internet-explorer-11"></a>Microsoft Internet Explorer 11</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>Ping Identity commits to deliver the best experience for administrators and users. As we continue to improve our products, we encourage you to migrate off of Microsoft Internet Explorer 11. Starting with PingFederate 11.0, Internet Explorer 11 is no longer included in the PingFederate qualification process for administrators or users. For a list of supported browsers, see <a href="https://docs.pingidentity.com/pingfederate/installing_and_uninstalling_pingfederate/pf_system_requirements.html" class="xref page">System requirements</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="configcopy-tool-connection-management-service-sso-directory-service"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#configcopy-tool-connection-management-service-sso-directory-service"></a>Configcopy tool, Connection Management Service, SSO Directory Service</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>As of PingFederate 10.2, these features have been deprecated and will be removed in a future release.</p>
</div>
</div>
<div class="sect3">
<h4 id="oracle-directory-server-enterprise-edition"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oracle-directory-server-enterprise-edition"></a>Oracle Directory Server Enterprise Edition</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>As Oracle ended its Premier Support for Oracle Directory Server Enterprise Edition (ODSEE 11g) in December 2019, we no longer include ODSEE as part of the PingFederate qualification process (starting with PingFederate 10.2). We continue to qualify against <a href="https://www.oracle.com/security/identity-management/directory-services/" target="_blank" rel="noopener">Oracle Unified Directory</a> and other supported directory servers. For a full list, see <a href="https://docs.pingidentity.com/pingfederate/installing_and_uninstalling_pingfederate/pf_system_requirements.html" class="xref page">System requirements</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="snmp"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#snmp"></a>SNMP</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>Starting with PingFederate 10.2, monitoring and reporting through the SNMP has been removed.</p>
</div>
</div>
<div class="sect3">
<h4 id="roles-and-protocols"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#roles-and-protocols"></a>Roles and protocols</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>Starting with PingFederate 10.1, roles and protocols are always enabled and no longer configurable through the administrative console and API.</p>
</div>
</div>
<div class="sect3">
<h4 id="s3_ping-discovery-protocol"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#s3_ping-discovery-protocol"></a>S3_PING discovery protocol</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>Starting with PingFederate 10.1, the S3_PING discovery protocol has been deprecated. Customers running on AWS infrastructure should instead use NATIVE_S3_PING.</p>
</div>
</div>
<div class="sect3">
<h4 id="red-hat-enterprise-linux-install-script"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#red-hat-enterprise-linux-install-script"></a>Red Hat Enterprise Linux install script</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>Starting with PingFederate 10.0, the Red Hat Enterprise Linux install script is no longer available. To install PingFederate 10.0 for Linux, you must download and extract the product distribution <code class="filepath">.zip</code> file.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.3.15 (April 2026)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-3-15-april-2026</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-3-15-april-2026</guid>
            <pubDate>Thu, 16 Apr 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="new-features-and-enhancements-21"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#new-features-and-enhancements-21"></a>New features and enhancements</h3>
<div class="sect3">
<h4 id="unconnected-cluster-node-startup-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#unconnected-cluster-node-startup-5"></a>Unconnected cluster node startup</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span>
<span class="ping_ticket">PF-38898</span></p>
</div>
<div class="paragraph">
<p>We added the <code class="parmname">force.require.replication.data.on.startup</code> parameter to the <code class="filepath">cluster-config-replication.conf</code> file.</p>
</div>
<div class="paragraph">
<p>This parameter allows you to prevent an engine node from starting up without establishing a connection to the cluster.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_cluster_management.html" class="xref page">Cluster management</a>.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="resolved-issues-44"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-44"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="ognl-code-test-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#ognl-code-test-5"></a>OGNL code test</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-38742</span></p>
</div>
<div class="paragraph">
<p>We improved role-based access control (RBAC) for the administrative expression testing endpoint. Access to expression evaluation is now limited to appropriately privileged roles, ensuring alignment with intended administrative permissions.</p>
</div>
</div>
<div class="sect3">
<h4 id="slo-failure-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#slo-failure-2"></a>SLO failure</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38442</span></p>
</div>
<div class="paragraph">
<p>We fixed a defect where front-channel logouts requests to <code class="filepath">/idp/startSLO.ping</code> failed to send logout requests to relying party URIs.</p>
</div>
</div>
<div class="sect3">
<h4 id="dyanmic-jwks-rotation-timer-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#dyanmic-jwks-rotation-timer-2"></a>Dyanmic JWKS rotation timer</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38903</span></p>
</div>
<div class="paragraph">
<p>We fixed a defect that prevented dynamic JWKS rotation timing from resetting after a node joined a cluster.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.3.14 (October 2025)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-3-14-october-2025</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-3-14-october-2025</guid>
            <pubDate>Thu, 16 Oct 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-45"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-45"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="html-flow-login-and-authentication-api-6"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#html-flow-login-and-authentication-api-6"></a>HTML flow login and Authentication API</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38039</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that could potentially allow a user to access an HTML browser sign-on page when the Authentication API redirectless mode is used.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://support.pingidentity.com/s/article/PingFederate-unexpected-template-rendering-in-redirectless-mode" target="_blank" rel="noopener">PingFederate unexpected template rendering in redirectless mode</a> in the Ping Identity Support Knowledge Base.</p>
</div>
</div>
<div class="sect3">
<h4 id="ldap-account-lockout-6"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#ldap-account-lockout-6"></a>LDAP account lockout</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38043</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where PingFederate could incorrectly lock user accounts during an LDAP connectivity failure with Active Directory. This fix applies to all LDAP datastore types except for Generic LDAP.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.3.13 (September 2025)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-3-13-september-2025</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-3-13-september-2025</guid>
            <pubDate>Mon, 15 Sep 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-46"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-46"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="refresh-token-mysql-deadlocks-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#refresh-token-mysql-deadlocks-5"></a>Refresh token MySQL deadlocks</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35868</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused multiple refresh token requests in short succession to result in <span class="fr-alt fr-glossentry" title="<div class=&quot;paragraph&quot;>
<p>A Java API that allows Java programs to interact with databases.</p>
</div>">JDBC</span> data source deadlocks and duplicated data entry into the database.</p>
</div>
<div class="paragraph">
<p>This feature can cause significant performance issues if PingFederate or the JDBC data source has insufficient resources.</p>
</div>
</div>
<div class="sect3">
<h4 id="virtual-hostname-accuracy-in-email-notifications-6"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#virtual-hostname-accuracy-in-email-notifications-6"></a>Virtual hostname accuracy in email notifications</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37964</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where a template variable incorrectly used the primary PingFederate base URL instead of the virtual hostname in some email notifications.</p>
</div>
</div>
<div class="sect3">
<h4 id="apache-commons-beanutils-and-compress"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#apache-commons-beanutils-and-compress"></a>Apache Commons BeanUtils and Compress</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-38029</span></p>
</div>
<div class="paragraph">
<p>PingFederate now uses the Apache Commons BeanUtils library version 1.11.0 and Apache Commons Compress library version 1.26.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.3.12 (May 2025)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-3-12-may-2025</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-3-12-may-2025</guid>
            <pubDate>Thu, 22 May 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-47"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-47"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="unnecessary-id-token-reissued-with-secondary-client-secret-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#unnecessary-id-token-reissued-with-secondary-client-secret-5"></a>Unnecessary ID token reissued with secondary client secret</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37450</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused the token endpoint to unnecessarily reissue an ID token when using a secondary client secret and an asymmetric algorithm for token signing and encryption.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.3.11 (April 2025)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-3-11-april-2025</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-3-11-april-2025</guid>
            <pubDate>Mon, 21 Apr 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="new-features-and-enhancements-22"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#new-features-and-enhancements-22"></a>New features and enhancements</h3>
<div class="sect3">
<h4 id="native_s3_ping-update-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#native_s3_ping-update-5"></a>NATIVE_S3_PING update</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span>
<span class="ping_ticket">PF-37234</span></p>
</div>
<div class="paragraph">
<p>We’ve updated the behavior of the <code class="[ codeph">NATIVE_S3_PING</code> discovery protocol when the <code class="parmname">remove_all_data_on_view_change</code> parameter is active.</p>
</div>
<div class="paragraph">
<p>Previously, the protocol would delete all files in the S3 bucket, which could lead to the creation of an unwanted subcluster.</p>
</div>
<div class="paragraph">
<p>Now the protocol deletes all files except for its own to prevent the S3 bucket from being empty.</p>
</div>
<div class="paragraph">
<p>Learn more in <a href="https://docs.pingidentity.com/pingfederate/server_clustering_guide/pf_dynamic_cluster_discovery.html" class="xref page">Dynamic cluster discovery</a>.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="resolved-issues-48"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-48"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="group-membership-loss-during-provisioning-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#group-membership-loss-during-provisioning-5"></a>Group membership loss during provisioning</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36874</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused PingFederate to lose user group membership information when it lost contact with the datastore during provisioning operations.</p>
</div>
</div>
<div class="sect3">
<h4 id="group-membership-loss-during-provisioning-6"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#group-membership-loss-during-provisioning-6"></a>Group membership loss during provisioning</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-37279</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused the ID token claim to be omitted when an OAuth client uses the secondary secret.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.3.10 (December 2024)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-3-10-december-2024</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-3-10-december-2024</guid>
            <pubDate>Mon, 16 Dec 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-49"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-49"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="cross-site-scripting-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#cross-site-scripting-3"></a>Cross-site scripting</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-36304</span>
<span class="ping_ticket">PF-36311</span>
<span class="ping_ticket">PF-36313</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a security vulnerability where PingFederate accepted cross-site scripting inputs.</p>
</div>
</div>
<div class="sect3">
<h4 id="email-verification-failure-after-registration-workflow-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#email-verification-failure-after-registration-workflow-4"></a>Email verification failure after registration workflow</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36574</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused the email verification screen to fail to appear when a user registered through an authentication source.</p>
</div>
</div>
<div class="sect3">
<h4 id="oauth-client-set-authentication-selector-with-dynamodb-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oauth-client-set-authentication-selector-with-dynamodb-3"></a>OAuth Client Set Authentication Selector with DynamoDB</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36662</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused an error in searching for OAuth Client for OAuth Client Set Authentication Selector when DynamoDB is the client storage.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.3.9 (November 2024)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-3-9-november-2024</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-3-9-november-2024</guid>
            <pubDate>Tue, 19 Nov 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-50"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-50"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="refresh-token-time-zone-discrepancies-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#refresh-token-time-zone-discrepancies-3"></a>Refresh token time zone discrepancies</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35867</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused refresh tokens to roll prematurely when making authorization requests to servers in different time zones.</p>
</div>
</div>
<div class="sect3">
<h4 id="provisioning-character-limit-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#provisioning-character-limit-4"></a>Provisioning character limit</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36035</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused outbound provisioning to fail and cease if a source user object exceeded a 255-character limit. In the new behavior, PingFederate will skip user objects that exceed 255 characters and log a warning.</p>
</div>
</div>
<div class="sect3">
<h4 id="pingdirectory-password-warning-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingdirectory-password-warning-4"></a>PingDirectory password warning</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36232</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that prevented PingFederate from issuing a password expiration warning when using PingDirectory as a datastore.</p>
</div>
</div>
<div class="sect3">
<h4 id="multiple-application-requests-within-a-browser-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#multiple-application-requests-within-a-browser-4"></a>Multiple application requests within a browser</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36239</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that could cause inconsistent sessions or authentication errors when starting multiple applications in different browser tabs at the same time.</p>
</div>
</div>
<div class="sect3">
<h4 id="device-authorization-grant-time-zone-error-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#device-authorization-grant-time-zone-error-3"></a>Device authorization grant time zone error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36261</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused device authorization grant flow errors when clustered server nodes are in different time zones.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.3.8 (July 2024)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-3-8-july-2024</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-3-8-july-2024</guid>
            <pubDate>Fri, 19 Jul 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-51"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-51"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="oidc-admin-login-failure-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oidc-admin-login-failure-2"></a>OIDC admin login failure</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34523</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused the OIDC administrative console login to fail when the <code class="parmname">node.group.id</code> didn’t match a server’s node id.</p>
</div>
</div>
<div class="sect3">
<h4 id="ognl-extended-property-retrieval-failure"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#ognl-extended-property-retrieval-failure"></a>OGNL <code class="parmname">Extended Property</code> retrieval failure</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35111</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused OGNL to fail to obtain the <code class="parmname">Extended Property</code> value in authorization policies or fragments.</p>
</div>
</div>
<div class="sect3">
<h4 id="refresh-token-rolls-when-configured-not-to-roll-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#refresh-token-rolls-when-configured-not-to-roll-3"></a>Refresh token rolls when configured not to roll</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35166</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused PingFederate to roll refresh tokens when <strong class="uicontrol">Refresh Token Rolling Policy</strong> is disabled but <strong class="uicontrol">Refresh Token Rolling Interval</strong> has a value.</p>
</div>
</div>
<div class="sect3">
<h4 id="oauth-client-only-validates-one-access-token-manager-when-aud-parameter-included-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oauth-client-only-validates-one-access-token-manager-when-aud-parameter-included-3"></a>OAuth client only validates one access token manager when <code class="parmname">aud</code> parameter included</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35737</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused PingFederate to validate only the first OAuth client access token manager it found when <strong class="uicontrol">Validate Against All Eligible Access Token Managers</strong> was checked, and the <code class="parmname">aud</code> parameter was included in the request.</p>
</div>
</div>
<div class="sect3">
<h4 id="custom-adapter-not-returning-ipv4-addresses-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#custom-adapter-not-returning-ipv4-addresses-3"></a>Custom adapter not returning IPv4 addresses</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35783</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect where PingFederate failed to return IPv4 addresses in a custom adapter request using the <code class="codeph">request.getRemoteAddr()</code> method.</p>
</div>
</div>
<div class="sect3">
<h4 id="davinci-integration-kit-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#davinci-integration-kit-2"></a>Davinci integration kit</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_ticket">PF-35838</span></p>
</div>
<div class="paragraph">
<p>The Davinci integration kit has been updated to version 1.2.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.3.7 (May 2024)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-3-7-may-2024</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-3-7-may-2024</guid>
            <pubDate>Tue, 28 May 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="new-features-and-enhancements-23"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#new-features-and-enhancements-23"></a>New features and enhancements</h3>
<div class="sect3">
<h4 id="pingone-admin-url-property-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingone-admin-url-property-2"></a>PingOne admin URL property</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-31859</span></p>
</div>
<div class="paragraph">
<p>Added support for the Australia region to the <code class="codeph">pf.pingone.admin.url.region</code> property.</p>
</div>
<div class="paragraph">
<p>The Asia region is deprecated. We recommend using the Australia region instead.</p>
</div>
<div class="paragraph">
<p>To learn more, see <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_config_pf_propert.html" class="xref page">Configuring PingFederate properties</a>.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="resolved-issues-52"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-52"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="authentication-api-allows-different-user-for-change-password-flow-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#authentication-api-allows-different-user-for-change-password-flow-2"></a>Authentication API allows different user for change password flow</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35609</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused the authentication API to allow a different user to proceed with the <code class="codeph">MUST_CHANGE_PASSWORD</code> function than the user who initiated the flow.</p>
</div>
<div class="paragraph">
<p>Note that in all cases, the target user’s password was required to complete the change password operation.</p>
</div>
</div>
<div class="sect3">
<h4 id="memory-heap-increase-when-using-admin-api-on-policy-tree-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#memory-heap-increase-when-using-admin-api-on-policy-tree-2"></a>Memory heap increase when using admin API on policy tree</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35423</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused PingFederate not to release memory when using the admin API on the policy tree.</p>
</div>
</div>
<div class="sect3">
<h4 id="authentication-api-password-change-flow-ignores-credentials-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#authentication-api-password-change-flow-ignores-credentials-2"></a>Authentication API password change flow ignores credentials</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35618</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused the authentication API to ignore credentials for password changes provided after user authentication.</p>
</div>
</div>
<div class="sect3">
<h4 id="authentication-api-validation-error-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#authentication-api-validation-error-2"></a>Authentication API validation error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35430</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused a validation error in the authentication API when including the <code class="parmname">ui_locales</code> parameter.</p>
</div>
</div>
<div class="sect3">
<h4 id="provisioner-uses-wrong-time-zone-when-datasource-and-pingfederate-are-in-different-time-zones"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#provisioner-uses-wrong-time-zone-when-datasource-and-pingfederate-are-in-different-time-zones"></a>Provisioner uses wrong time zone when datasource and PingFederate are in different time zones</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35286</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused redundant user provisioner updates when the datasource and PingFederate were in different time zones.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.3.6 (April 2024)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-3-6-april-2024</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-3-6-april-2024</guid>
            <pubDate>Mon, 08 Apr 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-53"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-53"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="java-thread-exhaustion-in-pingone-advanced-services-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#java-thread-exhaustion-in-pingone-advanced-services-2"></a>Java thread exhaustion in PingOne Advanced Services</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35411</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused repeated looping in authentication policy involving a local Identity profile.</p>
</div>
</div>
<div class="sect3">
<h4 id="oauth-clients-in-use-detection-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oauth-clients-in-use-detection-2"></a>OAuth clients in use detection</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35407</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect with In Use detection when DynamoDB is used for OAuth client storage.</p>
</div>
</div>
<div class="sect3">
<h4 id="oidc-policy-delete-request-timeout-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oidc-policy-delete-request-timeout-2"></a>OIDC policy DELETE request timeout</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35357</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect where deleting an OIDC Policy fails when using DynamoDB storage for a large number of OAuth clients.</p>
</div>
</div>
<div class="sect3">
<h4 id="active-directory-binary-attribute-caused-thread-proliferation-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#active-directory-binary-attribute-caused-thread-proliferation-2"></a>Active Directory binary attribute caused thread proliferation</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35142</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused LDAP data source connection pools to close when still in use after the LDAP data source is modified and replicating under heavy load.</p>
</div>
</div>
<div class="sect3">
<h4 id="jwks-algorithm-parameter-not-populated-after-processing-shared-keys-from-cluster-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#jwks-algorithm-parameter-not-populated-after-processing-shared-keys-from-cluster-2"></a>JWKS algorithm parameter not populated after processing shared keys from cluster</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35309</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused the <code class="parmname">alg</code> parameter to fail to populate when EC dynamic keys are rotated on a lead cluster node and shared to the cluster.</p>
</div>
</div>
<div class="sect3">
<h4 id="upgraded-jetty-library-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#upgraded-jetty-library-2"></a>Upgraded Jetty Library</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span>
<span class="ping_ticket">PF-35184</span></p>
</div>
<div class="paragraph">
<p>Upgraded the Jetty library to version 9.4.54.v20240208.</p>
</div>
</div>
<div class="sect3">
<h4 id="lightning-ldap-library-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#lightning-ldap-library-2"></a>Lightning LDAP library</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span>
<span class="ping_ticket">PF-35310</span></p>
</div>
<div class="paragraph">
<p>Upgraded the lightning LDAP library to version 1.5.22.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.3.5 (February 2024)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-3-5-february-2024</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-3-5-february-2024</guid>
            <pubDate>Wed, 21 Feb 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-54"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-54"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="rest-datastore-security-vulnerability-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#rest-datastore-security-vulnerability-2"></a>Rest datastore security vulnerability</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-34720</span></p>
</div>
<div class="paragraph">
<p>Fixed a JSON injection vulnerability in REST datastores described in security advisory <a href="https://support.pingidentity.com/s/article/SECADV044-PingFederate-Security-Rollup" target="_blank" rel="noopener">SECADV044</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="runtime-nodes-security-vulnerability-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#runtime-nodes-security-vulnerability-2"></a>Runtime nodes security vulnerability</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-34896</span></p>
</div>
<div class="paragraph">
<p>Fixed a path traversal vulnerability in Runtime nodes described in security advisory <a href="https://support.pingidentity.com/s/article/SECADV044-PingFederate-Security-Rollup" target="_blank" rel="noopener">SECADV044</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="openid-connect-policy-management-editor-security-vulnerability-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#openid-connect-policy-management-editor-security-vulnerability-2"></a>OpenID Connect policy management editor security vulnerability</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-35081</span></p>
</div>
<div class="paragraph">
<p>Fixed a Cross-Site Scripting vulnerability in the OpenID Connect Policy Management Editor described in security advisory <a href="https://support.pingidentity.com/s/article/SECADV044-PingFederate-Security-Rollup" target="_blank" rel="noopener">SECADV044</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="get-saml-request-signature-processing-error-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#get-saml-request-signature-processing-error-2"></a>GET SAML request signature processing error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34641</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect where SAML request using HTTP GET method with multiple signature-related parameters encoded in the <em class="varname">RelayState</em> parameter were causing errors in processing signature validation.</p>
</div>
</div>
<div class="sect3">
<h4 id="npe-notification-error-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#npe-notification-error-2"></a>NPE notification error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34813</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused PingFederate to issue null pointer exception (NPE) errors when querying the token endpoint.</p>
</div>
</div>
<div class="sect3">
<h4 id="reencyption-causes-connection-or-client-to-fail-on-engine-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#reencyption-causes-connection-or-client-to-fail-on-engine-2"></a>Reencyption causes connection or client to fail on engine</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34409</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect where changes made on the administrative console were not replicated to the engine during reencryption.</p>
</div>
</div>
<div class="sect3">
<h4 id="jmx-registration-failure-for-imported-archives-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#jmx-registration-failure-for-imported-archives-2"></a>JMX registration failure for imported archives</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34796</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused the JMX monitoring to fail to register archive files that are imported to PingFederate.</p>
</div>
</div>
<div class="sect3">
<h4 id="content-type-changes-if-well_known-endpoint-response-is-too-large-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#content-type-changes-if-well_known-endpoint-response-is-too-large-2"></a>Content type changes if <code class="codeph">well_known</code> endpoint response is too large</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34865</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused the <code class="parmname">content-type</code> of a response from the <code class="codeph">well_known</code> endpoint to change from JSON to HTML if a response is too large.</p>
</div>
</div>
<div class="sect3">
<h4 id="rhel-8-using-os-level-fips-causes-pingfederate-failure-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#rhel-8-using-os-level-fips-causes-pingfederate-failure-2"></a>RHEL 8 using OS-level FIPS causes PingFederate failure</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34879</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused PingFederate to fail on startup when installed on a Red Hat Enterprise Linux (RHEL) server with OS-levels FIPS enabled.</p>
</div>
</div>
<div class="sect3">
<h4 id="unable-to-deobfuscate-grant-attributes-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#unable-to-deobfuscate-grant-attributes-2"></a>Unable to deobfuscate grant attributes</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34839</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect where PingFederate was unable to deobfuscate grant attributes of a certain length.</p>
</div>
</div>
<div class="sect3">
<h4 id="valid-authorization-policy-generates-configuration-error-message-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#valid-authorization-policy-generates-configuration-error-message-2"></a>Valid Authorization policy generates "Configuration Error" message</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34853</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused PingFederate to incorrectly return an "Invalid Configuration" error for a valid authentication policy.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.3.4 (December 2023)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-3-4-december-2023</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-3-4-december-2023</guid>
            <pubDate>Fri, 08 Dec 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-55"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-55"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="fixed-jdk8-cluster-node-issue"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#fixed-jdk8-cluster-node-issue"></a>Fixed JDK8 cluster node issue</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34837</span></p>
</div>
<div class="paragraph">
<p>Fixed an issue where nodes were not able to join a cluster when running with JDK8.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.3.3 (November 2023)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-3-3-november-2023</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-3-3-november-2023</guid>
            <pubDate>Mon, 27 Nov 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-56"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-56"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="improved-client-authentication-security-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#improved-client-authentication-security-2"></a>Improved client authentication security</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-34645</span></p>
</div>
<div class="paragraph">
<p>Fixed a potential security vulnerability described in security advisory <a href="https://support.pingidentity.com/s/article/SECADV040-PingFederate-OAuth-Client-Authentication-Bypass" target="_blank" rel="noopener">SECADV040</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="added-support-for-partitioned-cookies"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#added-support-for-partitioned-cookies"></a>Added support for partitioned cookies</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-34440</span></p>
</div>
<div class="paragraph">
<p>PingFederate now supports using the <code class="codeph">Partitioned</code> attribute to address third-party cookie issues with the iframe-based login widgets in Google Chrome.</p>
</div>
</div>
<div class="sect3">
<h4 id="fixed-idpstartslo-ping-404-caused-by-virtual-issuer-configuration-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#fixed-idpstartslo-ping-404-caused-by-virtual-issuer-configuration-2"></a>Fixed <code class="codeph">/idp/startSLO.ping</code> <code class="systemoutput">404</code> caused by virtual issuer configuration</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34322</span></p>
</div>
<div class="paragraph">
<p>Fixed an issue that was returning a <code class="systemoutput">404</code> error if the <code class="codeph">/idp/startSLO.ping</code> endpoint was hit while a virtual issuer was configured. You can now configure virtual issuers with a context path.</p>
</div>
</div>
<div class="sect3">
<h4 id="client-jwks-now-sets-properly-when-using-dynamodb-storage-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#client-jwks-now-sets-properly-when-using-dynamodb-storage-2"></a>Client JWKS now sets properly when using DynamoDB storage</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34504</span></p>
</div>
<div class="paragraph">
<p>Clients that maintain a JWKS endpoint can now use private key JWT based authentication when requesting an access token.</p>
</div>
</div>
<div class="sect3">
<h4 id="fixed-npe-when-checking-an-existing-persistent-grant-that-is-expired-with-dynamodb-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#fixed-npe-when-checking-an-existing-persistent-grant-that-is-expired-with-dynamodb-2"></a>Fixed NPE when checking an existing persistent grant that is expired with DynamoDB</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34606</span></p>
</div>
<div class="paragraph">
<p>Checking for existing but expired grants with DynamoDB no longer causes a null pointer exception error (NPE).</p>
</div>
</div>
<div class="sect3">
<h4 id="connections-close-after-getting-a-401-or-403-from-pingone-api-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#connections-close-after-getting-a-401-or-403-from-pingone-api-2"></a>Connections close after getting a <code class="systemoutput">401</code> or <code class="systemoutput">403</code> from PingOne API</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34545</span></p>
</div>
<div class="paragraph">
<p>Fixed an issue preventing PingFederate from closing connections after receiving a <code class="systemoutput">401</code> or <code class="systemoutput">403</code> response from PingOne MFA.</p>
</div>
</div>
<div class="sect3">
<h4 id="outbound-provisioning-performance-improvement"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#outbound-provisioning-performance-improvement"></a>Outbound provisioning performance improvement</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33466</span></p>
</div>
<div class="paragraph">
<p>You can now turn off server-side sorting for LDAP requests related to outbound provisioning, which can improve performance in some environments.</p>
</div>
<div class="paragraph">
<p>Configure this option using the <code class="parmname">ProvisionWithServerSort</code> parameter in the <code class="filepath">com.pingidentity.common.util.ldap.LDAPUtil.xml</code> file.</p>
</div>
</div>
<div class="sect3">
<h4 id="unable-to-copy-and-paste-policy-contract-in-specific-situations-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#unable-to-copy-and-paste-policy-contract-in-specific-situations-2"></a>Unable to copy and paste policy contract in specific situations</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34433</span></p>
</div>
<div class="paragraph">
<p>You can now copy and paste a policy contract below a selector node.</p>
</div>
</div>
<div class="sect3">
<h4 id="xml-decryption-failing-with-keyname-element-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#xml-decryption-failing-with-keyname-element-2"></a>XML decryption failing with <code class="codeph">KeyName</code> element</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34536</span></p>
</div>
<div class="paragraph">
<p>Fixed an issue where decryption of an encrypted SAML element could fail if a <code class="codeph">KeyName</code> was specified.</p>
</div>
</div>
<div class="sect3">
<h4 id="resolved-a-vulnerability-in-the-initial-setup-wizard-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-a-vulnerability-in-the-initial-setup-wizard-2"></a>Resolved a vulnerability in the Initial Setup Wizard</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-34646</span></p>
</div>
<div class="paragraph">
<p>Fixed a Server-Side Request Forgery vulnerability in the Initial Setup Wizard described in security advisory <a href="https://support.pingidentity.com/s/article/SECADV041-PingFederate-Server-Side-Request-Forgery" target="_blank" rel="noopener">SECADV041</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="certificate-in-use-detection-slowdown-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#certificate-in-use-detection-slowdown-2"></a>Certificate in-use detection slowdown</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34077</span></p>
</div>
<div class="paragraph">
<p>We fixed a defect that caused PingFederate to check every certificate when loading certificate-related pages in the administrative interface, which slowed down performance.</p>
</div>
</div>
<div class="sect3">
<h4 id="upgraded-third-party-libraries-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#upgraded-third-party-libraries-2"></a>Upgraded third-party libraries</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>Upgraded Jetty to version 9.4.53.v20231009.</p>
</li>
<li>
<p>Upgraded JGroups to version 4.2.24.Final.</p>
</li>
</ul>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.3.2 (September 2023)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-3-2-september-2023</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-3-2-september-2023</guid>
            <pubDate>Wed, 20 Sep 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="new-features-and-enhancements-24"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#new-features-and-enhancements-24"></a>New features and enhancements</h3>
<div class="sect3">
<h4 id="authenticating-to-azure-sql-managed-instance-through-azure-active-directory-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#authenticating-to-azure-sql-managed-instance-through-azure-active-directory-2"></a>Authenticating to Azure SQL Managed Instance through Azure Active Directory</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span></p>
</div>
<div class="paragraph">
<p>Now PingFederate supports authentication to Azure SQL Managed Instance through Azure Active Directory without a username and password. For more information, see <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_configuring_jdbc_connection.html" class="xref page">Configuring a JDBC connection</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="jetty-library-upgrade-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#jetty-library-upgrade-3"></a>Jetty library upgrade</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span></p>
</div>
<div class="paragraph">
<p>We upgraded the Jetty library to 9.4.52.v20230823.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="resolved-issues-57"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-57"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="one-time-link-in-password-reset-email-messages-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#one-time-link-in-password-reset-email-messages-2"></a>One-time link in password-reset email messages</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33983</span></p>
</div>
<div class="paragraph">
<p>When using redirectless mode, now the one-time link (OTL) in password-reset email messages returns users to the authentication API application configured for the policy, rather than to PingFederate.</p>
</div>
</div>
<div class="sect3">
<h4 id="incorrect-error-template-when-using-service-provider-authentication-policies-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#incorrect-error-template-when-using-service-provider-authentication-policies-2"></a>Incorrect error template when using service provider authentication policies</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34111</span></p>
</div>
<div class="paragraph">
<p>When a service provider (SP) authentication policy fails, PingFederate now renders the <code class="codeph">sp.sso.error.page.template.html</code> page instead of the <code class="codeph">idp.sso.error.page.template.html</code> page.</p>
</div>
</div>
<div class="sect3">
<h4 id="updating-oauth-clients-with-dynamic-client-registration-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#updating-oauth-clients-with-dynamic-client-registration-2"></a>Updating OAuth clients with dynamic client registration</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34146</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect where an OAuth client created with dynamic client registration (DCR) couldn’t be updated with DCR after it was modified with the administrative console.</p>
</div>
</div>
<div class="sect3">
<h4 id="idle-jdbc-datastore-connections-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#idle-jdbc-datastore-connections-2"></a>Idle JDBC datastore connections</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34163</span></p>
</div>
<div class="paragraph">
<p>Now PingFederate closes idle JDBC datastore connections until the minimum pool size is reached instead of closing and recreating all of them.</p>
</div>
</div>
<div class="sect3">
<h4 id="the-id_token_jti-property-in-token-endpoint-responses-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#the-id_token_jti-property-in-token-endpoint-responses-3"></a>The <code class="codeph">id_token_jti</code> property in token endpoint responses</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34210</span></p>
</div>
<div class="paragraph">
<p>The <code class="codeph">id_token_jti</code> property is no longer included in token endpoint responses.</p>
</div>
</div>
<div class="sect3">
<h4 id="administrative-api-defect-when-fragment-rules-have-default-to-success-disabled-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#administrative-api-defect-when-fragment-rules-have-default-to-success-disabled-3"></a>Administrative API defect when fragment rules have <strong class="uicontrol">Default to Success</strong> disabled</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34216</span></p>
</div>
<div class="paragraph">
<p>Fixed an administrative API defect when a fragment rule had <strong class="uicontrol">Default to Success</strong> disabled</p>
</div>
</div>
<div class="sect3">
<h4 id="email-notifications-for-licensing-events-even-when-disabled-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#email-notifications-for-licensing-events-even-when-disabled-2"></a>Email notifications for licensing events even when disabled</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34225</span></p>
</div>
<div class="paragraph">
<p>Resolved an issue that caused PingFederate to send email notifications for licensing events even though they were disabled in the <strong class="wintitle">Runtime Notifications</strong> configuration.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.3.1 (August 2023)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-3-1-august-2023</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-3-1-august-2023</guid>
            <pubDate>Thu, 03 Aug 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="new-features-and-enhancements-25"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#new-features-and-enhancements-25"></a>New features and enhancements</h3>
<div class="sect3">
<h4 id="configuration-retrieval-on-engine-start-up"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#configuration-retrieval-on-engine-start-up"></a>Configuration retrieval on engine start up</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span>
<span class="ping_ticket">PF-33667</span></p>
</div>
<div class="paragraph">
<p>We introduced new settings in the <code class="filepath">cluster-config-replication.conf</code> file to improve configuration retrieval reliability during engine startup. By setting <em class="varname">publish.replication.data.on.startup</em> to <code class="codeph">true</code>, the administrative console automatically publishes the last replicated configuration upon startup, eliminating the need to initiate replication through the administrative UI or API after a console restart. Additionally, you can configure engines to fail startup if they cannot retrieve configuration data by setting <em class="varname">require.replication.data.on.startup</em> to <code class="codeph">true</code>. This setting proves beneficial in DevOps deployments, where fresh engine nodes are frequently created without any initial configuration. For more information, see the <em class="varname">publish.replication.data.on.startup</em> and <em class="varname">require.replication.data.on.startup</em> property descriptions in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_cluster_management.html" class="xref page">Cluster management</a>.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="resolved-issues-58"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-58"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="jetty-library-upgrade-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#jetty-library-upgrade-4"></a>Jetty library upgrade</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-31865</span></p>
</div>
<div class="paragraph">
<p>We upgraded the Jetty library, resolving CVE-2022-2047 and CVE-2022-2048.</p>
</div>
</div>
<div class="sect3">
<h4 id="oauth-scope-names-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oauth-scope-names-2"></a>OAuth scope names</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33056</span></p>
</div>
<div class="paragraph">
<p>Using <code class="codeph">submit</code> and <code class="codeph">onSubmit</code> as OAuth scope names in the administrative UI drop-down no longer causes front-end JavaScript errors.</p>
</div>
</div>
<div class="sect3">
<h4 id="policy-fragment-validation-error-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#policy-fragment-validation-error-2"></a>Policy fragment validation error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33156</span></p>
</div>
<div class="paragraph">
<p>Policy fragments with valid authentication sources no longer fail with an Invalid Configuration error during runtime.</p>
</div>
</div>
<div class="sect3">
<h4 id="eliminating-redundant-group-updates-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#eliminating-redundant-group-updates-2"></a>Eliminating redundant group updates</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33441</span></p>
</div>
<div class="paragraph">
<p>PingFederate, when configured with PingDirectory as an outbound provisioning data source, no longer sends redundant group updates in each provisioning cycle when the entry remains unchanged.</p>
</div>
</div>
<div class="sect3">
<h4 id="potential-security-vulnerability-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#potential-security-vulnerability-4"></a>Potential security vulnerability</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33449</span></p>
</div>
<div class="paragraph">
<p>We’ve resolved a potential security vulnerability that is described in security advisory <a href="https://support.pingidentity.com/s/article/SECADV037-PingFederate-Security-Rollup-Denial-of-Service-Information-Disclosure-Authentication-Bypass-Vulnerabilities" target="_blank" rel="noopener">SECADV037</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="pingfederate-as-a-windows-service-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-as-a-windows-service-2"></a>PingFederate as a Windows service</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33450</span></p>
</div>
<div class="paragraph">
<p>We fixed an issue so that PingFederate as a Windows service now runs on Java 17. When updating to the latest maintenance release using an in-place update method (for example, from 11.3.0 to 11.3.x), in addition to the steps in <a href="https://docs.pingidentity.com/pingfederate/upgrading_pingfederate/pf_updating_latest_maintenance_release.html" class="xref page">Updating to the latest maintenance release</a>, you must remove the existing PingFederate Windows service. After removal, re-install the PingFederate Windows Service to apply this fix.</p>
</div>
</div>
<div class="sect3">
<h4 id="authentication-policy-fail-path-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#authentication-policy-fail-path-2"></a>Authentication policy fail path</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33519</span></p>
</div>
<div class="paragraph">
<p>When an OIDC identity provider (IdP) connection fails in an authentication policy, PingFederate now continues on to the fail path of the authentication policy.</p>
</div>
</div>
<div class="sect3">
<h4 id="fragment-mapping-validation-error-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#fragment-mapping-validation-error-2"></a>Fragment mapping validation error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33722</span></p>
</div>
<div class="paragraph">
<p>We resolved an issue that incorrectly produced an administrative API validation error when the fragment mapping references <code class="codeph">context.RequestedUser</code> as the mapping source.</p>
</div>
</div>
<div class="sect3">
<h4 id="authorization-details-within-a-rar-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#authorization-details-within-a-rar-2"></a>Authorization details within a RAR</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33863</span></p>
</div>
<div class="paragraph">
<p>PingFederate now processes authorization details within a rich authorization request (RAR) as a JSON Array in a JWT request. Additionally, PingFederate no longer supports authorization details sent as stringified JSON arrays.</p>
</div>
</div>
<div class="sect3">
<h4 id="cluster-engine-nodes-starting-without-replication-data-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#cluster-engine-nodes-starting-without-replication-data-2"></a>Cluster engine nodes starting without replication data</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33881</span></p>
</div>
<div class="paragraph">
<p>Resolved a replication issue that, in rare cases, caused an engine node in a cluster to start without replication data from other nodes.</p>
</div>
</div>
<div class="sect3">
<h4 id="server-error-when-revoking-user-sessions-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#server-error-when-revoking-user-sessions-2"></a>Server error when revoking user sessions</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33920</span></p>
</div>
<div class="paragraph">
<p>Resolved an issue that prevented user sessions from being revoked through the session management API when using persistent sessions.</p>
</div>
</div>
<div class="sect3">
<h4 id="potential-security-vulnerability-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#potential-security-vulnerability-5"></a>Potential security vulnerability</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33935</span></p>
</div>
<div class="paragraph">
<p>We’ve resolved a potential security vulnerability that is described in security advisory <a href="https://support.pingidentity.com/s/article/SECADV037-PingFederate-Security-Rollup-Denial-of-Service-Information-Disclosure-Authentication-Bypass-Vulnerabilities" target="_blank" rel="noopener">SECADV037</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="fragment-mapping-validation-errors-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#fragment-mapping-validation-errors-2"></a>Fragment mapping validation errors</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33957</span></p>
</div>
<div class="paragraph">
<p>When utilizing the PingFederate administrative API to create or update a fragment that includes another fragment, the API will no longer produce a validation error when fragment mapping involves an input source type.</p>
</div>
</div>
<div class="sect3">
<h4 id="updated-template-variable-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#updated-template-variable-2"></a>Updated template variable</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34016</span></p>
</div>
<div class="paragraph">
<p>The <code class="filepath">message-template-end-user-password-change.html</code> template now contains the <em class="varname">USERNAME</em> variable.</p>
</div>
</div>
<div class="sect3">
<h4 id="potential-security-vulnerability-6"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#potential-security-vulnerability-6"></a>Potential security vulnerability</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34017</span></p>
</div>
<div class="paragraph">
<p>We’ve resolved a potential security vulnerability that is described in security advisory <a href="https://support.pingidentity.com/s/article/SECADV037-PingFederate-Security-Rollup-Denial-of-Service-Information-Disclosure-Authentication-Bypass-Vulnerabilities" target="_blank" rel="noopener">SECADV037</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="policy-evaluation-issue-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#policy-evaluation-issue-2"></a>Policy evaluation issue</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34051</span></p>
</div>
<div class="paragraph">
<p>We fixed a policy evaluation issue that occurred when <code class="codeph">ui_locales</code> was present in an authentication request.</p>
</div>
</div>
<div class="sect3">
<h4 id="certificate-import-improvements-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#certificate-import-improvements-2"></a>Certificate import improvements</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34074</span></p>
</div>
<div class="paragraph">
<p>We updated the administrative UI to include certification serial number in the drop-down, thus preventing import errors for certifications sharing the same Subject DN and expiration date combination.</p>
</div>
</div>
<div class="sect3">
<h4 id="dynamodb-attribute-lookup-error-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#dynamodb-attribute-lookup-error-2"></a>DynamoDB attribute lookup error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34099</span></p>
</div>
<div class="paragraph">
<p>We fixed an attribute lookup error that occurred when different DynamoDB attributes shared an overlapping path.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.3 (June 2023)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-3-june-2023</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-3-june-2023</guid>
            <pubDate>Fri, 23 Jun 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="paragraph">
<p>New features and improvements in PingFederate 11.3.</p>
</div>
<div class="sect2">
<h3 id="new-features-and-enhancements-26"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#new-features-and-enhancements-26"></a>New features and enhancements</h3>
<div class="sect3">
<h4 id="support-for-nbf-and-iat-claims-in-jwt-access-token-managers"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#support-for-nbf-and-iat-claims-in-jwt-access-token-managers"></a>Support for <code class="codeph">nbf</code> and <code class="codeph">iat</code> claims in JWT access token managers</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>Now you can configure access token managers to include the JSON web token (JWT) <code class="codeph">access_token</code> claims <code class="codeph">nbf</code> (not before) and <code class="codeph">iat</code> (issued at). This enables stronger validations by receiving clients or protected resources that process that access_token. For more information, go to <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_configuring_access_token_management_instance.html" class="xref page">Configuring an access token management instance</a>, and in the <em class="i">JSON web token data model</em> section click the <em class="i">JSON token management</em> tab.</p>
</div>
</div>
<div class="sect3">
<h4 id="retries-for-client-side-ldap-errors"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#retries-for-client-side-ldap-errors"></a>Retries for client-side LDAP errors</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>To further improve reliability and robustness, now PingFederate executes retries rather than failover only. PingFederate initiates a single retry if a request fails and it appears the connection has become invalid. For more information, see the <strong class="uicontrol">Retry Failed Operations</strong> field in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_setting_advanced_ldap_options.html" class="xref page">Setting advanced LDAP options</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="referencing-incoming-par-parameters-in-authentication-policies"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#referencing-incoming-par-parameters-in-authentication-policies"></a>Referencing incoming PAR parameters in authentication policies</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>For authorization requests, parameters can now be referenced for incoming PAR requests (pushed authorization requests) inside authentication policies. This lets PingFederate process incoming requests independently of how it received them. For more information, see <a href="https://docs.pingidentity.com/pingfederate/developers_reference_guide/pf_pushed_authoriz_request_endpoint.html" class="xref page">Pushed authorization requests endpoint</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="unique-identifiers-for-pingfederate-transactions"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#unique-identifiers-for-pingfederate-transactions"></a>Unique identifiers for PingFederate transactions</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>To improve logging, PingFederate now uses a <code class="codeph">transactionId</code>. For each transaction, this value won’t change between the initial request and the final response. This is especially useful for troubleshooting. For more information, see the <code class="codeph">transactionid</code> field in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_security_audit_logging.html" class="xref page">Security audit logging</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="all-user-attributes-available-to-html-and-mail-templates"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#all-user-attributes-available-to-html-and-mail-templates"></a>All user attributes available to HTML and mail templates</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>Now you can configure HTML and mail templates with user details. With these details, you can personalize user facing pages and include messages, such as greetings by name, or email addresses that were used for a password recovery flow. The attributes are documented in the templates.</p>
</div>
</div>
<div class="sect3">
<h4 id="logging-certificate-expiration-advance-warnings"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#logging-certificate-expiration-advance-warnings"></a>Logging certificate expiration advance warnings</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>Previously, PingFederate produced notifications to inform administrators about expiring certificates. Now you can configure PingFederate to log upcoming expirations without producing notifications. For more information, see <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_configuring_runtime_notifications.html" class="xref page">Configuring runtime notifications</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="improved-european-union-compliance-with-saml-2-0"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#improved-european-union-compliance-with-saml-2-0"></a>Improved European Union compliance with SAML 2.0</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>Two major SAML 2.0 messaging improvements align PingFederate closer to EU regulations:</p>
</div>
<div class="ulist">
<ul>
<li>
<p>Now PingFederate can decrypt <code class="codeph">EncryptedID</code> elements included as SAML attributes. They no longer must be enclosed as an <code class="codeph">EncryptedAttribute</code>. For more information, see <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_idpprotocolsettingstasklet_selectidpxmlassertionencryptionstate.html" class="xref page">Specifying XML encryption policy (for SAML 2.0)</a>.</p>
</li>
<li>
<p>To enhance signing capabilities, PingFederate now also supports some of the RSASSA-PSS algorithms. For more information, see <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_signing_algorithms.html" class="xref page">Signing algorithms</a>.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="support-for-credential-protected-forward-proxy-servers"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#support-for-credential-protected-forward-proxy-servers"></a>Support for credential-protected forward proxy servers</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>Because proxy servers can require credentials for authentication purposes, now you can configure PingFederate with proxy server credentials so that connections can be easily established and secured. For more information, see <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_configure_forward_proxy_server_settings.html" class="xref page">Configuring forward proxy server settings</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="amazon-dynamodb-for-attribute-source-lookups"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#amazon-dynamodb-for-attribute-source-lookups"></a>Amazon DynamoDB for attribute source lookups</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>Our continued effort to support Amazon DynamoDB (NoSQL) now lets you use DynamoDB as a source for attribute lookups. The connector supports the DynamoDB query language so you can easily configure it. For more information, see <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_config_dynamodb.html" class="xref page">Configuring an AWS DynamoDB datastore</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="oauth-2-0-dpop"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oauth-2-0-dpop"></a>OAuth 2.0 DPoP</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>As regulations for APIs in the context of financial services tighten, it’s important to support highly secure API authentication and authorization methods. <a href="https://datatracker.ietf.org/doc/html/draft-ietf-oauth-dpop" target="_blank" rel="noopener">OAuth DPoP</a> (Demonstrating Proof-of-Possession) is an extension to the OAuth framework and specifies how OAuth tokens are bound to clients. Clients must digitally prove the ownership of these tokens at runtime, which prevents unauthorized clients from misusing them. This extension is useful for any OAuth scenario, not only in financial environments. For more information, see <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_authorizationserversettingstasklet_oauthauthorizationserversettingsstate.html" class="xref page">Configuring authorization server settings</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="logging-the-tls-version-that-clients-use"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#logging-the-tls-version-that-clients-use"></a>Logging the TLS version that clients use</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>For TLS connections, PingFederate can now log the TLS version that clients use. This gives you an easy way to identify clients that might need updates to use newer versions. For more information, see the tlsversion field in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_security_audit_logging.html" class="xref page">Security audit logging</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="certificate-expiration-dates-added-to-certificate-menus"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#certificate-expiration-dates-added-to-certificate-menus"></a>Certificate expiration dates added to certificate menus</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>In the administrative console, now certificate selection menus show the distinguished name (DN) and expiration date for each certificate, rather than a serial number. This gives you easy access to relevant information.</p>
</div>
</div>
<div class="sect3">
<h4 id="new-jwt-token-processor"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#new-jwt-token-processor"></a>New JWT Token Processor</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>A new JWT token processor enhances the token exchange capabilities so that you can leverage any configured issuer. Now PingFederate can validate and accept incoming tokens that were created by pre-configured issuers. For more information, see <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_configuring_jwt_token_processor_20_instance.html" class="xref page">Configuring a JWT Token Processor 2.0 instance</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="enhanced-authentication-policies"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#enhanced-authentication-policies"></a>Enhanced authentication policies</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>Complex authentication policies are sometimes challenging to manage. To simplify your work and add flexibility to policies, PingFederate provides several policy enhancements:</p>
</div>
<div class="ulist">
<ul>
<li>
<p>Now the Requested AuthN Context Authentication Selector can determine the authentication context for flows. For more information, see <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_config_request_authn_context_auth_selector.html" class="xref page">Configuring the Requested AuthN Context Authentication Selector</a>.</p>
</li>
<li>
<p>Now you can use Context and Extended Properties for attribute sources when mapping authentication policy contracts and local identity profiles. For more information, see <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_configuring_contract_mapping.html" class="xref page">Configuring contract mapping</a>, <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_configuring_local_identity_mapping.html" class="xref page">Configuring local identity mapping</a>, and <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_defining_issuance_criteria_contract_or_local_identity_mapping.html" class="xref page">Defining issuance criteria for contract or local identity mapping</a>.</p>
</li>
<li>
<p>Now you can use the Scope and Virtual Server ID attributes for authentication sources in policy rules. For more information, see Scope and Virtual Server ID in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_config_rules_auth_policies.html" class="xref page">Configuring rules in authentication policies</a>.</p>
</li>
<li>
<p>Now you can use OGNL expressions to configure more complex policy rules. For more information, see Expression in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_config_rules_auth_policies.html" class="xref page">Configuring rules in authentication policies</a>.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="par-support-for-oidc-idp-connections-and-oidc-admin-authentication"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#par-support-for-oidc-idp-connections-and-oidc-admin-authentication"></a>PAR support for OIDC IdP connections and OIDC admin authentication</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>PingFederate now initiates outbound authorization requests using the PAR endpoint of the target authorization server if you expose it. This enhancement lets PingFederate use PAR inbound and outbound, which improves OAuth flow security. For more information, see the <strong class="uicontrol">Pushed Authorization Request Endpoint</strong> field in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_idpprotocolsettingstasklet_openidprovidermetadatastate.html" class="xref page">Configuring OpenID Provider information</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="support-for-openid-connect-back-channel-logout"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#support-for-openid-connect-back-channel-logout"></a>Support for OpenID Connect back-channel logout</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>In the context of OpenID session management, PingFederate now supports back-channel logout. PingFederate supports this feature whether it’s configured as an OpenID Connect provider (OP) or a relying party (RP). For more information, see the <a href="https://openid.net/specs/openid-connect-backchannel-1_0.html" target="_blank" rel="noopener">OpenID Connect Back-Channel Logout 1.0 specification</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="ability-to-include-x5t-and-typ-in-id-token-headers"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#ability-to-include-x5t-and-typ-in-id-token-headers"></a>Ability to include x5t and typ in ID token headers</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>Now PingFederate can include JWT header values <code class="codeph">x5t</code> and <code class="codeph">typ</code> in the ID tokens it issues. You can include the <code class="codeph">x5t</code> header with static keys enabled, whereas you can configure the <code class="codeph">typ</code> header to an appropriate value without a dependency on the types of keys. The <code class="codeph">x5t</code> header adds another mechanism for verifying the validity of a received JWT. For information about the <code class="codeph">x5t</code> and <code class="codeph">typ</code> parameters, see the <a href="https://datatracker.ietf.org/doc/html/rfc7517#section-4.8" target="_blank" rel="noopener">JSON web key</a> (JWK) and <a href="https://www.rfc-editor.org/rfc/rfc7519#section-5.1" target="_blank" rel="noopener">JWT</a> specifications, respectively, and steps 9 and 10 in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_policymanagementtasklet_policymanagementstate.html" class="xref page">Configuring policy and ID token settings</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="support-for-the-alg-parameter-response-for-jwks-keys"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#support-for-the-alg-parameter-response-for-jwks-keys"></a>Support for the alg parameter response for JWKS keys</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>The <code class="codeph">alg</code> header is now supported in PingFederate’s JWKS endpoint. Any elliptic curve keys and all RSA-256 based keys expose this header. This feature lets clients verify that a received JWT has been signed by the advertised algorithm. For information about the <code class="codeph">alg</code> parameter, see the <a href="https://datatracker.ietf.org/doc/html/rfc7517#section-4.4" target="_blank" rel="noopener">JWK</a> specification and <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_jwks_endpoint.html" class="xref page">JSON Web Keys endpoint</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="support-for-client_secret_jwt-as-client-authentication"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#support-for-client_secret_jwt-as-client-authentication"></a>Support for client_secret_jwt as client authentication</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>With the client_secret_jwt authentication method, a client can choose to create a signed JWT when authenticating against PingFederate’s token endpoint, introspection endpoint, PAR endpoint, or CIBA endpoint instead of providing the client secret. This feature prevents potential client secret leakage because it’s not actively exchanged with any party. PingFederate also supports this feature when it acts as an RP. For more information, see client_secret_jwt in the <a href="https://openid.net/specs/openid-connect-core-1_0.html#ClientAuthentication" target="_blank" rel="noopener">Open ID Connect</a> specification and <a href="https://docs.pingidentity.com/pingfederate/introduction_to_pingfederate/pf_client_auth_scheme.html" class="xref page">Client authentication schemes</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="refresh-token-reuse-and-revocation-best-practice"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#refresh-token-reuse-and-revocation-best-practice"></a>Refresh token reuse and revocation best practice</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>PingFederate now revokes a chain of tokens if a refresh token is revoked or if a refresh token is reused. This includes derived authorization codes and access tokens. For more information, see the Refresh Token settings section of <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_authorizationserversettingstasklet_oauthauthorizationserversettingsstate.html" class="xref page">Configuring authorization server settings</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="overriding-configuration-settings-using-environment-variables"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#overriding-configuration-settings-using-environment-variables"></a>Overriding configuration settings using environment variables</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>Now you can <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/override_configuration_settings_using_environment_variables.html" class="xref page">configure many properties as environment variables</a> instead of setting them in properties files. This is especially important for container environments, which is common practice.</p>
</div>
</div>
<div class="sect3">
<h4 id="auditing-enhancements"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#auditing-enhancements"></a>Auditing enhancements</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>Several enhancements provide more details in PingFederate generated logs. These include the logging of JWT IDs (jti), hashed values of authorization codes, access tokens, and refresh tokens. Also, PingFederate now logs which system has locked out users after multiple, unsuccessful login attempts, so you’ll know if it was PingFederate or an LDAP server. PingFederate also adds more details to the administrative API logs, so now there are almost no differences between logs generated when using the administrative console or administrative API. For more information, see <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_admin_audit_loggin.html" class="xref page">Administrator audit logging</a>, <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_admin_api_audit_log.html" class="xref page">Administrative API audit log</a>, and <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_security_audit_logging.html" class="xref page">Security audit logging</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="amazon-dynamodb-and-oauth-client-records"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#amazon-dynamodb-and-oauth-client-records"></a>Amazon DynamoDB and OAuth client records</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>Now you can manage OAuth clients in Amazon DynamoDB. With this update, you can use DynamoDB to manage OAuth clients, persistent grants, and persistent authorization sessions. Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_config_external_database_client_storage.html#_configuring_an_amazon_dynamodb_for_client_storage" class="xref page">Configuring an Amazon DynamoDB for client storage</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="upgraded-velocity-engine-2-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#upgraded-velocity-engine-2-3"></a>Upgraded Velocity Engine 2.3</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>PingFederate now supports Apache Velocity Engine 2.3. For more information, see <a href="https://velocity.apache.org/engine/2.3/upgrading.html" target="_blank" rel="noopener">Upgrading</a> in the Apache Velocity Engine documentation.</p>
</div>
</div>
<div class="sect3">
<h4 id="support-for-strict-content-security-policy-csp-for-html-templates"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#support-for-strict-content-security-policy-csp-for-html-templates"></a>Support for strict content security policy (CSP) for HTML templates</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>Now you can include CSP policies for HTML templates without having to implement workarounds. For more information, see <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_custom_user_facing_pages.html" class="xref page">Customizable user-facing pages</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="ability-to-use-additional-velocity-tools"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#ability-to-use-additional-velocity-tools"></a>Ability to use additional Velocity tools</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>Now you can use Velocity templates with more tools, such as cookieTool.</p>
</div>
</div>
<div class="sect3">
<h4 id="support-for-microsoft-azure-sql-managed-instance"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#support-for-microsoft-azure-sql-managed-instance"></a>Support for Microsoft Azure SQL Managed Instance</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>PingFederate now supports Microsoft Azure SQL Managed Instance. For more information, see the Datastore integration table in <a href="https://docs.pingidentity.com/pingfederate/installing_and_uninstalling_pingfederate/pf_system_requirements.html" class="xref page">System requirements</a>, and for more information on how to configure a connection to Microsoft Azure SQL Managed Instance, see <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_configuring_jdbc_connection.html" class="xref page">Configuring a JDBC connection</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="mtls-authentication-for-rest-api-datastores"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#mtls-authentication-for-rest-api-datastores"></a>mTLS authentication for REST API datastores</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>PingFederate now supports mutual TLS (mTLS) client authentication for REST API datastores.</p>
</div>
</div>
<div class="sect3">
<h4 id="mtls-authentication-for-ldap-datastores"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#mtls-authentication-for-ldap-datastores"></a>mTLS authentication for LDAP datastores</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>PingFederate now supports mTLS client authentication for LDAP datastores.</p>
</div>
</div>
<div class="sect3">
<h4 id="entrust-nshield-connect-hsm-and-java-11"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#entrust-nshield-connect-hsm-and-java-11"></a>Entrust nShield Connect HSM and Java 11</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>Now when you integrate an Entrust nShield hardware security module (HSM) with PingFederate, you can use Java 11.</p>
</div>
</div>
<div class="sect3">
<h4 id="bundled-user-count-utility"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#bundled-user-count-utility"></a>Bundled User Count Utility</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>We added the User Count Utility (UCU) as a bundled component. You can use the UCU to produce unique and active user counts in a PingFederate environment.</p>
</div>
</div>
<div class="sect3">
<h4 id="upgraded-third-party-components"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#upgraded-third-party-components"></a>Upgraded third-party components</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>We upgraded the following third-party components:</p>
</div>
<div class="ulist">
<ul>
<li>
<p>Upgraded Spring Framework to 5.3.27</p>
</li>
<li>
<p>Upgraded jose4j to 0.9.3</p>
</li>
</ul>
</div>
</div>
</div>
<div class="sect2">
<h3 id="resolved-issues-59"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-59"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="saml-login-session-tracking"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#saml-login-session-tracking"></a>SAML login session tracking</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33168</span></p>
</div>
<div class="paragraph">
<p>We improved SP-Initiated SAML login session tracking. This security improvement can affect existing SAML SP connections that rely on multiple session states in a single transaction.</p>
</div>
<div class="paragraph">
<p>For more information about how your configuration can be affected, and the steps to resolve issues, see <a href="https://support.pingidentity.com/s/article/Solicited-SAML-Response-Validation" target="_blank" rel="noopener">Solicited SAML Response Validation</a> in the Ping Identity Support Portal.</p>
</div>
</div>
<div class="sect3">
<h4 id="log-message-when-multiple-entries-match-the-ldap-pcv-search-filter"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#log-message-when-multiple-entries-match-the-ldap-pcv-search-filter"></a>Log message when multiple entries match the LDAP PCV search filter</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32427</span></p>
</div>
<div class="paragraph">
<p>Now when multiple entries match the LDAP PCV search filter, the following message appears in the log at DEBUG level: <code class="codeph">error code 4 - This search operation has sent the maximum of 1 entries to the client</code></p>
</div>
</div>
<div class="sect3">
<h4 id="multivalued-authorization-request-parameters"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#multivalued-authorization-request-parameters"></a>Multivalued authorization request parameters</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32783</span></p>
</div>
<div class="paragraph">
<p>Now multivalued request parameters work as expected in authorization requests for OIDC administrative console authentication.</p>
</div>
</div>
<div class="sect3">
<h4 id="tracked-parameters-in-the-ldap-search-filter-when-using-the-administrative-api"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#tracked-parameters-in-the-ldap-search-filter-when-using-the-administrative-api"></a>Tracked parameters in the LDAP search filter when using the administrative API</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32914</span></p>
</div>
<div class="paragraph">
<p>Now you can use tracked parameters in the Attribute Sources and User Lookup LDAP search filter when using the administrative API.</p>
</div>
</div>
<div class="sect3">
<h4 id="showing-and-hiding-passwords-being-entered"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#showing-and-hiding-passwords-being-entered"></a>Showing and hiding passwords being entered</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33059</span></p>
</div>
<div class="paragraph">
<p>Now all password entry fields in PingFederate templates have icons that let users show and hide the password they’re entering.</p>
</div>
</div>
<div class="sect3">
<h4 id="connections-and-oauth-clients-referencing-deleted-extended-properties"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#connections-and-oauth-clients-referencing-deleted-extended-properties"></a>Connections and OAuth clients referencing deleted extended properties</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33311</span></p>
</div>
<div class="paragraph">
<p>When a connection or OAuth client references a deleted extended property, PingFederate no longer throws a null pointer exception. Instead it ignores the extended property and logs an error.</p>
</div>
</div>
<div class="sect3">
<h4 id="slow-log-consumption-affects-performance"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#slow-log-consumption-affects-performance"></a>Slow log consumption affects performance</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33368</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused performance issues for PingFederate when third-party logging services were slow to consume logging events.</p>
</div>
</div>
<div class="sect3">
<h4 id="custom-error-messages-from-external-consent-adapters"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#custom-error-messages-from-external-consent-adapters"></a>Custom error messages from external consent adapters</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33151</span></p>
</div>
<div class="paragraph">
<p>Now PingFederate can use customized messages from external consent adapters in error responses.</p>
</div>
</div>
<div class="sect3">
<h4 id="restricting-password-credential-validators"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#restricting-password-credential-validators"></a>Restricting password credential validators</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33487</span></p>
</div>
<div class="paragraph">
<p>When <code class="codeph">restrictToDefaultAccessTokenManager</code> is enabled on an OAuth client, the client can only get access tokens when being validated by password credential validators that are mapped to the restricted access token manager.</p>
</div>
</div>
<div class="sect3">
<h4 id="bypass-authorization-approval-and-prompt-parameters"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#bypass-authorization-approval-and-prompt-parameters"></a>Bypass Authorization Approval and prompt parameters</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33598</span></p>
</div>
<div class="paragraph">
<p>When an OAuth client has Bypass Authorization Approval enabled, now that setting takes precedence over the <code class="codeph">prompt</code> parameter in requests.</p>
</div>
</div>
<div class="sect3">
<h4 id="document-file-permissions"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#document-file-permissions"></a>Document file permissions</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33605</span></p>
</div>
<div class="paragraph">
<p>Updated the file permissions of legal documents.</p>
</div>
</div>
<div class="sect3">
<h4 id="the-memoryoptions-script-allocates-excessive-jvm-heap"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#the-memoryoptions-script-allocates-excessive-jvm-heap"></a>The <code class="filepath">memoryoptions</code> script allocates excessive JVM heap</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33610</span></p>
</div>
<div class="paragraph">
<p>The <code class="filepath">memoryoptions</code> script no longer allocates excessive JVM heap on Windows systems.</p>
</div>
</div>
<div class="sect3">
<h4 id="authorization-code-and-device-authorization-grant-handling"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#authorization-code-and-device-authorization-grant-handling"></a>Authorization Code and Device Authorization grant handling</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33622</span></p>
</div>
<div class="paragraph">
<p>For the Device Authorization grant type, if <strong class="uicontrol">Check Activation Code</strong> is set to <strong class="uicontrol">Before Authentication</strong>, then authorization detail is set in the input parameters map when <code class="codeph">IdpAuthenticationAdapterV2</code> in the SDK is invoked.</p>
</div>
</div>
<div class="sect3">
<h4 id="converting-the-values-of-binary-attributes-from-pingone-ldap-gateway-datastores"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#converting-the-values-of-binary-attributes-from-pingone-ldap-gateway-datastores"></a>Converting the values of binary attributes from PingOne LDAP gateway datastores</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33637</span></p>
</div>
<div class="paragraph">
<p>Now when PingFederate retrieves a binary attribute from a PingOne LDAP gateway datastore, it correctly converts the attribute value to the specified format (base64, SID, hex).</p>
</div>
</div>
<div class="sect3">
<h4 id="unexpected-certificate-usage"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#unexpected-certificate-usage"></a>Unexpected certificate usage</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33709</span></p>
</div>
<div class="paragraph">
<p>When more than one trusted CA matches the issuer DN of an OAuth client, now PingFederate only flags the trusted CA as in use if its certificate hasn’t expired and its subject DN matches the client’s configured issuer DN.</p>
</div>
</div>
<div class="sect3">
<h4 id="potential-information-disclosure-vulnerability"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#potential-information-disclosure-vulnerability"></a>Potential information disclosure vulnerability</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33867</span></p>
</div>
<div class="paragraph">
<p>Removed a potential information disclosure vulnerability.</p>
</div>
</div>
<div class="sect3">
<h4 id="jetty-unable-to-serve-gzip-precompressed-resources"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#jetty-unable-to-serve-gzip-precompressed-resources"></a>Jetty unable to serve gzip precompressed resources</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33869</span></p>
</div>
<div class="paragraph">
<p>Now PingFederate allows Jetty to precompress resources such as images and CSS.</p>
</div>
</div>
<div class="sect3">
<h4 id="returning-400-error-instead-of-a-500-error"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#returning-400-error-instead-of-a-500-error"></a>Returning <code class="codeph">400</code> error instead of a <code class="codeph">500</code> error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-30236</span></p>
</div>
<div class="paragraph">
<p>When a system-level issue causes a data source attribute lookup to fail during OAuth flows, if the <code class="filepath">&lt;pf_install&gt;/pingfederate/server/default/data/config-store/org.sourceid.saml20.domain.AttributeMapping.xml</code> file’s <code class="codeph">AbortOnAttrLookupFailure</code> attribute is set to <code class="codeph">true</code>, now PingFederate returns a <code class="codeph">500</code> error instead of a <code class="codeph">400</code> error.</p>
</div>
</div>
<div class="sect3">
<h4 id="usercount-utilitys-aggregate-command"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#usercount-utilitys-aggregate-command"></a>Usercount Utility’s aggregate command</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32757</span></p>
</div>
<div class="paragraph">
<p>When you run the Usercount Utility’s aggregate command:</p>
</div>
<div class="ulist">
<ul>
<li>
<p>If all <code class="filepath">.ucu</code> files contain tracking IDs, the utility generates a user count for each event, like before.</p>
</li>
<li>
<p>If no <code class="filepath">.ucu</code> files contain tracking IDs, now the utility generates a user count for each application.</p>
</li>
<li>
<p>If some <code class="filepath">.ucu</code> files contain tracking ids but others don’t:</p>
<div class="ulist">
<ul>
<li>
<p>for the files without tracking IDs, now the utility generates a user count for each application.</p>
</li>
<li>
<p>for the files with tracking IDs, now the utility generates a user count for each event.</p>
</li>
</ul>
</div>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="cpu-load-displayed-as-na"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#cpu-load-displayed-as-na"></a>CPU load displayed as N/A</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32837</span></p>
</div>
<div class="paragraph">
<p>Now when the CPU load is 0, heartbeat pages display the value with digits instead of as “N/A”.</p>
</div>
</div>
<div class="sect3">
<h4 id="unexpected-carriage-return-in-audit-logs"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#unexpected-carriage-return-in-audit-logs"></a>Unexpected carriage return in audit logs</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32989</span></p>
</div>
<div class="paragraph">
<p>We resolved an issue that caused an unexpected carriage return in audit logs during SP-initiated single sign-on (SSO) if an identity provider responded with a non-success status.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="known-issues-and-limitations-7"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#known-issues-and-limitations-7"></a>Known issues and limitations</h3>
<div class="sect3">
<h4 id="pingid-password-credential-validator-with-integrated-radius-server-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingid-password-credential-validator-with-integrated-radius-server-2"></a>PingID password credential validator with integrated RADIUS server</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>PingFederate versions 11.1.4, 11.1.5, 11.2.1, and 11.2.2 contain version 3.0.2 of the PingID password credential validator (PCV). That version of the PCV has known issues that you should review before upgrading. For more information, see <a href="https://support.pingidentity.com/s/article/Known-issues-in-PingID-RADIUS-PCV-3-0-2" target="_blank" rel="noopener">Known issues in PingID RADIUS PCV 3.0.2</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="administrative-console-and-administrative-api-6"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#administrative-console-and-administrative-api-6"></a>Administrative console and administrative API</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>Although PingFederate 11.3 and later support DPoP, a known limitation is that the following features don’t support DPoP when PingFederate is the RP:</p>
<div class="ulist">
<ul>
<li>
<p>The administrative console authentication scheme using OIDC</p>
</li>
<li>
<p>The administrative API authentication scheme using OAuth 2.0</p>
</li>
</ul>
</div>
</li>
<li>
<p>/bulk: Only resource types currently supported by the administrative API are included in the exported data. We don’t intend to introduce administrative API support to the following areas:</p>
<div class="ulist">
<ul>
<li>
<p><a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_configuring_standard_idp_discovery.html" class="xref page">SAML 2.0 IdP Discovery</a></p>
</li>
<li>
<p><a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_affiliationstasklet_affiliationmgmtstate.html" class="xref page">SAML 2.0 SP Affiliation</a></p>
</li>
<li>
<p><a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_smsprovidersettingstasklet_smsprovidersettingsstate.html" class="xref page">SMS Provider</a></p>
</li>
</ul>
</div>
</li>
<li>
<p>Previously, the administrative API did not accurately reflect a <strong class="uicontrol">Persistent Grant Max Lifetime</strong> setting of 29 days (or shorter) with the selection of the <strong class="uicontrol">Grants Do Not Timeout Due To Inactivity</strong> option. As a result, if you have configured such OAuth authorization server settings and have generated a bulk export in version 10.0 through 10.0.2, we recommend that you re-generate a new bulk export after upgrading to version 10.0.3 (or a more recent version). The newly exported data does not contain the aforementioned flaw, and you can safely import it to version 10.0.3 (or a more recent version).</p>
</li>
<li>
<p>When enabling mTLS certificate-based authentication, administrators often configure a list of acceptable client certificate issuers. When you use a browser to access the console or the administrative API documentation, PingFederate returns to the browser the list of acceptable issuers as part of the TLS handshake. If the browser’s client certificate store contains multiple client certificates, the browser often presents you only the certificates whose issuer matches one of the acceptable issuers. However, when PingFederate runs in a Java 11 environment, Chrome presents you all its configured client certificates, regardless of whether the issuer matches one of the acceptable issuers or not.</p>
</li>
<li>
<p>When using mTLS authentication to authenticate to an LDAP server for administrative console or administrative API access, PingFederate doesn’t support using a Microsoft Active Directory server.</p>
</li>
<li>
<p>Prior to toggling the status of a connection with the administrative API, you must ensure that any expired certificates or no longer available attributes are replaced with valid certificates or attributes; otherwise, the update request fails.</p>
</li>
<li>
<p>When creating or updating a child instance of a hierarchical plugin, the administrative API retains objects with an <code class="codeph">"inherited": false</code> name/value pair (or without such name/value pair altogether), ignores those with a value of <code class="codeph">true</code>, and returns a 200 HTTP status code. No error messages are returned for the ignored objects.</p>
</li>
<li>
<p>Using the browser’s navigation mechanisms (for example, the <strong class="uicontrol">Back</strong> button) causes inconsistent behavior in the administrative console. Use the navigation buttons provided at the bottom of windows in the PingFederate console.</p>
</li>
<li>
<p>Using the PingFederate console in multiple tabs on one browser might cause inconsistent behavior which could corrupt its configuration.</p>
</li>
<li>
<p>If authenticated to the PingFederate administrative console using certificate authentication, a session that has timed out might not appear to behave as expected. Normally (when using password authentication), when a session has timed out and a user attempts some action in the console, the browser is redirected to the sign-on page, and then back to the administrative console after authentication is complete. Similar behavior applies for certificate authentication, in principle. However, because the browser might automatically resubmit the certificate for authentication, the browser might redirect to the administrative console and not the sign on page.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="pingone-mfa-ciba-authenticator-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingone-mfa-ciba-authenticator-2"></a>PingOne MFA CIBA Authenticator</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span>
<span class="ping_product">PingOne MFA</span></p>
</div>
<div class="paragraph">
<p>PingFederate 11.3 is not compatible with the PingOne MFA CIBA Authenticator bundled in PingOne MFA Integration Kit version 2.1 and earlier. This issue was resolved in version 2.2 of that integration kit.</p>
</div>
</div>
<div class="sect3">
<h4 id="tlsv1-3-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#tlsv1-3-2"></a>TLSv1.3</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>For Java versions that don’t support TLSv1.3 (meaning versions earlier than 8u261), PingFederate fails on start up with a <code class="codeph">NoSuchAlgorithmException</code> exception. To resolve this error, remove <code class="codeph">TLSv1.3</code> from the following settings in the <code class="filepath">run.properties</code> file:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><code class="parmname">pf.tls.client.protocols</code></p>
</li>
<li>
<p><code class="parmname">pf.tls.runtime.server.protocols</code></p>
</li>
<li>
<p><code class="parmname">pf.tls.admin.server.protocols</code></p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="tls-cipher-suite-customization-6"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#tls-cipher-suite-customization-6"></a>TLS cipher suite customization</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>PingFederate’s TLS cipher suites can be customized by modifying <code class="filepath">com.pingidentity.crypto.SunJCEManager.xml</code> (or a similarly-named file if BCFIPS or an HSM is configured). After updating the file and replicating, all cluster nodes must be restarted for the change to take effect.</p>
</div>
</div>
<div class="sect3">
<h4 id="java-6"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#java-6"></a>Java</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>As of PingFederate 11.1, BC-FIPS and HSMs are not supported when using Java 17.</p>
</li>
<li>
<p>Updating Java version 8 to version 11 results in an error when PingFederate is already installed and running on Windows. To work around this issue, uninstall and reinstall the PingFederate Windows service by running the <code class="filepath">UninstallPingFederateService.bat</code> and <code class="filepath">InstallPingFederateService.bat</code> files located in <code class="filepath"><em class="varname">&lt;pf_install&gt;</em>/pingfederate/sbin/wrapper</code>.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="hsms-6"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#hsms-6"></a>HSMs</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>AWS CloudHSM</p>
</div>
<div class="ulist">
<ul>
<li>
<p>It is not possible to use an elliptic curve (EC) certificate as an SSL server certificate.</p>
</li>
<li>
<p>TLS 1.3 is not currently supported.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Thales HSMs</p>
</div>
<div class="ulist">
<ul>
<li>
<p>JWT token decryption using ECDH-ES may fail. This issue only arises if PingFederate is configured with static OAuth and OpenID Connect keys, a static key is stored on the HSM, and PingFederate is consuming a token encrypted with this key.</p>
</li>
<li>
<p>It is not possible to use an EC certificate as an SSL server certificate.</p>
</li>
<li>
<p>TLS 1.3 is not currently supported.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Entrust HSMs</p>
</div>
<div class="ulist">
<ul>
<li>
<p>JWT token decryption using ECDH-ES may fail. This issue only arises if PingFederate is configured with static OAuth and OpenID Connect keys, a static key is stored on the HSM, and PingFederate is consuming a token encrypted with this key.</p>
</li>
<li>
<p>It is not possible to import a PKCS12- or PEM-formatted EC certificate.</p>
</li>
<li>
<p>It is not possible to use an EC certificate as an SSL server certificate.</p>
</li>
<li>
<p>TLS 1.3 is not currently supported.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="sso-and-slo-6"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#sso-and-slo-6"></a>SSO and SLO</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>When consuming SAML metadata, PingFederate does not report an error when neither the <code class="parmname">validUntil</code> nor the <code class="parmname">cacheDuration</code> attribute is included in the metadata. Note that PingFederate does reject expired SAML metadata as indicated by the <code class="parmname">validUntil</code> attribute value, if it is provided.</p>
</li>
<li>
<p>The anchored-certificate trust model cannot be used with the Single log off (SLO) redirect binding because the certificate cannot be included with the logout request.</p>
</li>
<li>
<p>If an IdP connection is configured for multiple virtual server IDs, PingFederate will always use the default virtual server ID for IdP Discovery during an SP-initiated SSO event.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="composite-adapter-configuration-6"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#composite-adapter-configuration-6"></a>Composite Adapter configuration</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>SLO is not supported when users are authenticated through a Composite Adapter instance that contains another instance of the Composite Adapter.</p>
</div>
</div>
<div class="sect3">
<h4 id="self-service-password-reset-6"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#self-service-password-reset-6"></a>Self-service password reset</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>Passwords can be reset for Microsoft Active Directory user accounts without the permission to change password.</p>
</div>
</div>
<div class="sect3">
<h4 id="oauth-6"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oauth-6"></a>OAuth</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>PingFederate does not support a case-sensitive naming convention for OAuth client ID values when client records are stored in a directory server. For example, after creating a client with an ID value of <code class="codeph">sampleClient</code>, PingFederate does not allow the creation of another client with an ID value of <code class="codeph">SampleClient</code>.</p>
</div>
<div class="paragraph">
<p>Although it’s possible to create clients using the same ID values with different casings when client records are stored in XML files, a database server, or custom storage, we recommend not doing so to avoid potential record migration issues.</p>
</div>
</div>
<div class="sect3">
<h4 id="customer-identity-and-access-management-6"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#customer-identity-and-access-management-6"></a>Customer identity and access management</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>Some browsers display a date-picker user interface for fields that have been designed for date-specific inputs. Some browsers do not. If one or more date-specific fields are defined on the registration page or the profile management page (or both), end users must enter the dates manually if their browsers do not display a date-picker user interface for those fields.</p>
</div>
</div>
<div class="sect3">
<h4 id="provisioning-6"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#provisioning-6"></a>Provisioning</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>LDAP referrals return an error and cause provisioning to fail if the <code class="parmname">user</code> or <code class="parmname">group</code> objects are defined at the DC level, and not within an OU or within the Users CN.</p>
</li>
<li>
<p>The <code class="parmname">totalResults</code> value in SCIM responses indicates the number of results returned in the current response, not the total number of estimated results on the LDAP server.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="logging-6"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#logging-6"></a>Logging</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>If a source attribute has been configured for masking in an IdP adapter or IdP connection and the source attribute is mapped to OAuth’s persistent grant <code class="parmname">USER_KEY</code> attribute, the <code class="parmname">USER_KEY</code> attribute will not be masked in the server logs. Other persistent grant attributes will be masked.</p>
</li>
<li>
<p>Even if a source attribute has been configured for masking in an IdP adapter and the source attribute is mapped as the adapter’s unique user key, the user key attribute is not masked in the server or audit logs.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="database-logging-6"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#database-logging-6"></a>Database logging</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>If a source attribute has been configured for masking in an IdP adapter or IdP connection and the source attribute is mapped to OAuth’s persistent grant <code class="parmname">USER_KEY</code> attribute, the <code class="parmname">USER_KEY</code> attribute will not be masked in the server logs. Other persistent grant attributes will be masked.</p>
</li>
<li>
<p>Even if a source attribute has been configured for masking in an IdP adapter and the source attribute is mapped as the adapter’s unique user key, the user key attribute is not masked in the server or audit logs.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="radius-nas-ip-address-6"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#radius-nas-ip-address-6"></a>RADIUS NAS-IP-Address</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>The RADIUS NAS-IP-Address is only included in Access-Request packets when the <code class="codeph">pf.bind.engine.address</code> is set with an IPv4 address. IPv6 is not supported.</p>
</div>
</div>
<div class="sect3">
<h4 id="amazon-sns-notification-publisher-6"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#amazon-sns-notification-publisher-6"></a>Amazon SNS Notification Publisher</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>When deploying PingFederate with a forward proxy, plugins based on the AWS SDK, such as the Amazon SNS Notification Publisher, will only honor the <code class="codeph">http.proxyHost</code>, <code class="codeph">http.proxyPort</code>, <code class="codeph">http.proxyUser</code>, and <code class="codeph">http.proxyPassword</code> properties in <code class="filepath">run.properties</code>. The plugin will rely on these properties even if the service URL is <code class="codeph">https</code>.</p>
</div>
</div>
<div class="sect3">
<h4 id="pingone-fraud-integration-kit-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingone-fraud-integration-kit-2"></a>PingOne Fraud integration kit</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_product">PingOne Fraud</span></p>
</div>
<div class="paragraph">
<p>The PingOne Fraud integration kit is no longer bundled with PingFederate.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="deprecated-features-6"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#deprecated-features-6"></a>Deprecated features</h3>
<div class="sect3">
<h4 id="microsoft-internet-explorer-11-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#microsoft-internet-explorer-11-2"></a>Microsoft Internet Explorer 11</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>Ping Identity commits to deliver the best experience for administrators and users. As we continue to improve our products, we encourage you to migrate off of Microsoft Internet Explorer 11. Starting with PingFederate 11.0, Internet Explorer 11 is no longer included in the PingFederate qualification process for administrators or users. For a list of supported browsers, see <a href="https://docs.pingidentity.com/pingfederate/installing_and_uninstalling_pingfederate/pf_system_requirements.html" class="xref page">System requirements</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="configcopy-tool-connection-management-service-sso-directory-service-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#configcopy-tool-connection-management-service-sso-directory-service-2"></a>Configcopy tool, Connection Management Service, SSO Directory Service</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>As of PingFederate 10.2, these features have been deprecated and will be removed in a future release.</p>
</div>
</div>
<div class="sect3">
<h4 id="oracle-directory-server-enterprise-edition-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oracle-directory-server-enterprise-edition-2"></a>Oracle Directory Server Enterprise Edition</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>As Oracle ended its Premier Support for Oracle Directory Server Enterprise Edition (ODSEE 11g) in December 2019, we no longer include ODSEE as part of the PingFederate qualification process (starting with PingFederate 10.2). We continue to qualify against <a href="https://www.oracle.com/security/identity-management/directory-services/" target="_blank" rel="noopener">Oracle Unified Directory</a> and other supported directory servers. For a full list, see <a href="https://docs.pingidentity.com/pingfederate/installing_and_uninstalling_pingfederate/pf_system_requirements.html" class="xref page">System requirements</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="snmp-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#snmp-2"></a>SNMP</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>Starting with PingFederate 10.2, monitoring and reporting through the SNMP has been removed.</p>
</div>
</div>
<div class="sect3">
<h4 id="roles-and-protocols-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#roles-and-protocols-2"></a>Roles and protocols</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>Starting with PingFederate 10.1, roles and protocols are always enabled and no longer configurable through the administrative console and API.</p>
</div>
</div>
<div class="sect3">
<h4 id="s3_ping-discovery-protocol-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#s3_ping-discovery-protocol-2"></a>S3_PING discovery protocol</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>Starting with PingFederate 10.1, the S3_PING discovery protocol has been deprecated. Customers running on AWS infrastructure should instead use NATIVE_S3_PING.</p>
</div>
</div>
<div class="sect3">
<h4 id="red-hat-enterprise-linux-install-script-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#red-hat-enterprise-linux-install-script-2"></a>Red Hat Enterprise Linux install script</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>Starting with PingFederate 10.0, the Red Hat Enterprise Linux install script is no longer available. To install PingFederate 10.0 for Linux, you must download and extract the product distribution <code class="filepath">.zip</code> file.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.2.11 (December 2024)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-2-11-december-2024</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-2-11-december-2024</guid>
            <pubDate>Fri, 13 Dec 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-60"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-60"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="cross-site-scripting-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#cross-site-scripting-4"></a>Cross-site scripting</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-36304</span>
<span class="ping_ticket">PF-36311</span>
<span class="ping_ticket">PF-36313</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a security vulnerability where PingFederate accepted cross-site scripting inputs.</p>
</div>
</div>
<div class="sect3">
<h4 id="email-verification-failure-after-registration-workflow-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#email-verification-failure-after-registration-workflow-5"></a>Email verification failure after registration workflow</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36574</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused the email verification screen to fail to appear when a user registered through an authentication source.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.2.10 (July 2024)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-2-10-july-2024</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-2-10-july-2024</guid>
            <pubDate>Wed, 10 Jul 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-61"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-61"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="oauth-client-only-validates-one-access-token-manager-when-aud-parameter-included-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oauth-client-only-validates-one-access-token-manager-when-aud-parameter-included-4"></a>OAuth client only validates one access token manager when <code class="parmname">aud</code> parameter included</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35737</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused PingFederate to validate only the first OAuth client access token manager it found when <strong class="uicontrol">Validate Against All Eligible Access Token Managers</strong> was checked, and the <code class="parmname">aud</code> parameter was included in the request.</p>
</div>
</div>
<div class="sect3">
<h4 id="wrong-content-type-for-autopost-template-form"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#wrong-content-type-for-autopost-template-form"></a>Wrong content-type for autopost template form</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35784</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused PingFederate to send the wrong content-type value for <code class="filepath">form.autopost.template.html</code> requests, which caused the page to render as JSON rather than the formatted form.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.2.9 (April 2024)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-2-9-april-2024</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-2-9-april-2024</guid>
            <pubDate>Mon, 08 Apr 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-62"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-62"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="rest-datastore-security-vulnerability-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#rest-datastore-security-vulnerability-3"></a>Rest datastore security vulnerability</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-34720</span></p>
</div>
<div class="paragraph">
<p>Fixed a JSON injection vulnerability in REST datastores described in security advisory <a href="https://support.pingidentity.com/s/article/SECADV044-PingFederate-Security-Rollup" target="_blank" rel="noopener">SECADV044</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="runtime-nodes-security-vulnerability-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#runtime-nodes-security-vulnerability-3"></a>Runtime nodes security vulnerability</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-34896</span></p>
</div>
<div class="paragraph">
<p>Fixed a path traversal vulnerability in Runtime nodes described in security advisory <a href="https://support.pingidentity.com/s/article/SECADV044-PingFederate-Security-Rollup" target="_blank" rel="noopener">SECADV044</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="openid-connect-policy-management-editor-security-vulnerability-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#openid-connect-policy-management-editor-security-vulnerability-3"></a>OpenID Connect policy management editor security vulnerability</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-35081</span></p>
</div>
<div class="paragraph">
<p>Fixed a Cross-Site Scripting vulnerability in the OpenID Connect Policy Management Editor described in security advisory <a href="https://support.pingidentity.com/s/article/SECADV044-PingFederate-Security-Rollup" target="_blank" rel="noopener">SECADV044</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="slow-log-consumption-affects-performance-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#slow-log-consumption-affects-performance-2"></a>Slow log consumption affects performance</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33368</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused performance issues for PingFederate when third-party logging services were slow to consume logging events.</p>
</div>
</div>
<div class="sect3">
<h4 id="rhel-8-using-os-level-fips-causes-pingfederate-failure-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#rhel-8-using-os-level-fips-causes-pingfederate-failure-3"></a>RHEL 8 using OS-level FIPS causes PingFederate failure</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34879</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused PingFederate to fail on startup when installed on a Red Hat Enterprise Linux (RHEL) server with OS-levels FIPS enabled.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.2.8 (December 2023)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-2-8-december-2023</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-2-8-december-2023</guid>
            <pubDate>Tue, 26 Dec 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="new-features-and-enhancements-27"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#new-features-and-enhancements-27"></a>New features and enhancements</h3>
<div class="sect3">
<h4 id="configurable-option-to-turn-onoff-plugin-creation-and-initialization-during-pingfederate-startup"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#configurable-option-to-turn-onoff-plugin-creation-and-initialization-during-pingfederate-startup"></a>Configurable option to turn on/off plugin creation and initialization during PingFederate startup.</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_ticket">PF-34640</span></p>
</div>
<div class="paragraph">
<p>Added the <em class="varname">ConfigurePluginsOnStartup</em> variable to the <code class="filepath">config-store</code> file.</p>
</div>
<div class="paragraph">
<p>Default value of <code class="option">true</code> creates and initializes plugins during startup. <code class="option">false</code> prevents creation and initialization of plugins, which can reduce startup time.</p>
</div>
</div>
<div class="sect3">
<h4 id="improved-ognl-expression-logging-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#improved-ognl-expression-logging-2"></a>Improved OGNL expression logging</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span>
<span class="ping_ticket">PF-34050</span></p>
</div>
<div class="paragraph">
<p>The administrator audit log file (<code class="filepath">admin.log</code>) now logs any OGNL expression tests performed and the expression variables used with an event type of <code class="codeph">TEST_EXPRESSION</code>.</p>
</div>
<div class="paragraph">
<p>For more information, see <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_admin_audit_loggin.html" class="xref page">Administrator audit logging</a></p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="resolved-issues-63"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-63"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="resolved-a-vulnerability-in-the-initial-setup-wizard-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-a-vulnerability-in-the-initial-setup-wizard-3"></a>Resolved a vulnerability in the Initial Setup Wizard</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-34646</span></p>
</div>
<div class="paragraph">
<p>Fixed a Server-Side Request Forgery vulnerability in the Initial Setup Wizard described in security advisory <a href="https://support.pingidentity.com/s/article/SECADV041-PingFederate-Server-Side-Request-Forgery" target="_blank" rel="noopener">SECADV041</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="pingfederate-systematically-adds-server-side-sort-control-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-systematically-adds-server-side-sort-control-2"></a>PingFederate systematically adds server-side sort control</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33466</span></p>
</div>
<div class="paragraph">
<p>You can now turn off server-side sorting using a configuration option.</p>
</div>
</div>
<div class="sect3">
<h4 id="updating-oauth-clients-with-dynamic-client-registration-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#updating-oauth-clients-with-dynamic-client-registration-3"></a>Updating OAuth clients with dynamic client registration</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34146</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect where an OAuth client created with dynamic client registration (DCR) couldn’t be updated with DCR after it was modified with the administrative console.</p>
</div>
</div>
<div class="sect3">
<h4 id="unable-to-deobfuscate-chunked-grant-value-with-character-length-of-682"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#unable-to-deobfuscate-chunked-grant-value-with-character-length-of-682"></a>Unable to deobfuscate chunked grant value with character length of 682</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34839</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect where PingFederate was unable to deobfuscate grant attributes for a small group of users in OAuth flows.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.2.7 (August 2023)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-2-7-august-2023</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-2-7-august-2023</guid>
            <pubDate>Thu, 03 Aug 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-64"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-64"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="potential-security-vulnerability-7"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#potential-security-vulnerability-7"></a>Potential security vulnerability</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33449</span></p>
</div>
<div class="paragraph">
<p>We’ve resolved a potential security vulnerability that is described in security advisory <a href="https://support.pingidentity.com/s/article/SECADV037-PingFederate-Security-Rollup-Denial-of-Service-Information-Disclosure-Authentication-Bypass-Vulnerabilities" target="_blank" rel="noopener">SECADV037</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="potential-security-vulnerability-8"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#potential-security-vulnerability-8"></a>Potential security vulnerability</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34017</span></p>
</div>
<div class="paragraph">
<p>We’ve resolved a potential security vulnerability that is described in security advisory <a href="https://support.pingidentity.com/s/article/SECADV037-PingFederate-Security-Rollup-Denial-of-Service-Information-Disclosure-Authentication-Bypass-Vulnerabilities" target="_blank" rel="noopener">SECADV037</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="policy-evaluation-issue-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#policy-evaluation-issue-3"></a>Policy evaluation issue</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34051</span></p>
</div>
<div class="paragraph">
<p>We fixed a policy evaluation issue that occurred when <code class="codeph">ui_locales</code> was present in an authentication request.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.2.6 (June 2023)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-2-6-june-2023</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-2-6-june-2023</guid>
            <pubDate>Tue, 27 Jun 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-65"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-65"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="policy-fragment-validation-error-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#policy-fragment-validation-error-3"></a>Policy fragment validation error</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33156</span></p>
</div>
<div class="paragraph">
<p>Policy fragments with valid authentication sources no longer fail with an Invalid Configuration error during runtime.</p>
</div>
</div>
<div class="sect3">
<h4 id="the-memoryoptions-utility-allocates-excessive-jvm-heap"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#the-memoryoptions-utility-allocates-excessive-jvm-heap"></a>The <code class="codeph">memoryoptions</code> utility allocates excessive JVM heap</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33610</span></p>
</div>
<div class="paragraph">
<p>The <code class="codeph">memoryoptions</code> utility no longer allocates excessive JVM heap on Windows systems.</p>
</div>
</div>
<div class="sect3">
<h4 id="the-device-authorization-grant-type-and-the-check-activation-code-setting"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#the-device-authorization-grant-type-and-the-check-activation-code-setting"></a>The device authorization grant type and the <strong class="uicontrol">Check Activation Code</strong> setting</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33622</span></p>
</div>
<div class="paragraph">
<p>For the device authorization grant type, if <strong class="uicontrol">Check Activation Code</strong> is set to <strong class="uicontrol">Before Authentication</strong>, now authorization detail is set in the input parameters map when <code class="codeph">IdpAuthenticationAdapterV2</code> in the SDK is invoked.</p>
</div>
</div>
<div class="sect3">
<h4 id="binary-attributes-handled-incorrectly-when-using-pingone-ldap-gateway-datastores"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#binary-attributes-handled-incorrectly-when-using-pingone-ldap-gateway-datastores"></a>Binary attributes handled incorrectly when using PingOne LDAP gateway datastores</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33637</span></p>
</div>
<div class="paragraph">
<p>Now when PingFederate retrieves a binary attribute from a PingOne LDAP gateway datastore, it correctly converts the attribute value to the specified format (base64, SID, hex).</p>
</div>
</div>
<div class="sect3">
<h4 id="jetty-unable-to-precompress-resources"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#jetty-unable-to-precompress-resources"></a>Jetty unable to precompress resources</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33869</span></p>
</div>
<div class="paragraph">
<p>Now PingFederate allows Jetty to precompress resources such as images and CSS.</p>
</div>
</div>
<div class="sect3">
<h4 id="cluster-engine-nodes-starting-without-replication-data-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#cluster-engine-nodes-starting-without-replication-data-3"></a>Cluster engine nodes starting without replication data</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33881</span></p>
</div>
<div class="paragraph">
<p>Resolved a replication issue that, in rare cases, caused an engine node in a cluster to start without replication data from other nodes.</p>
</div>
</div>
<div class="sect3">
<h4 id="server-error-when-revoking-user-sessions-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#server-error-when-revoking-user-sessions-3"></a>Server error when revoking user sessions</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33920</span></p>
</div>
<div class="paragraph">
<p>Resolved an issue that prevented user sessions from being revoked through the session management API when using persistent sessions.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.2.5 (May 2023)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-2-5-may-2023</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-2-5-may-2023</guid>
            <pubDate>Mon, 15 May 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-66"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-66"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="logging-validation"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#logging-validation"></a>Logging validation</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32764</span></p>
</div>
<div class="paragraph">
<p>We’ve improved logging validation.</p>
</div>
</div>
<div class="sect3">
<h4 id="multi-value-request-parameters-for-oidc-for-console-login"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#multi-value-request-parameters-for-oidc-for-console-login"></a>Multi-value request parameters for OIDC for console login</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32783</span></p>
</div>
<div class="paragraph">
<p>We fixed an issue where multi-value request parameters were not working as expected when using OIDC for console login.</p>
</div>
</div>
<div class="sect3">
<h4 id="preservation-of-changes-to-certain-validation-rules"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#preservation-of-changes-to-certain-validation-rules"></a>Preservation of changes to certain validation rules</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33093</span></p>
</div>
<div class="paragraph">
<p>We fixed an issue where PingFederate did not preserve changes to certain validation rules in the <code class="filepath">http-request-parameter-validation.xml</code> file upon upgrade.</p>
</div>
</div>
<div class="sect3">
<h4 id="saml-login-session-tracking-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#saml-login-session-tracking-2"></a>SAML login session tracking</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33168</span></p>
</div>
<div class="paragraph">
<p>We improved SP-Initiated SAML login session tracking. This security improvement can affect existing SAML SP connections that rely on multiple session states in a single transaction.</p>
</div>
<div class="paragraph">
<p>For more information about how your configuration can be affected, and the steps to resolve issues, see <a href="https://support.pingidentity.com/s/article/Solicited-SAML-Response-Validation" target="_blank" rel="noopener">Solicited SAML Response Validation</a> in the Ping Identity Support Portal.</p>
</div>
</div>
<div class="sect3">
<h4 id="otl-reset-page-error-messaging"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#otl-reset-page-error-messaging"></a>OTL reset page error messaging</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33307</span></p>
</div>
<div class="paragraph">
<p>The one-time link (OTL) reset page now displays an error message when the link is expired.</p>
</div>
</div>
<div class="sect3">
<h4 id="access-token-bug-fix"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#access-token-bug-fix"></a>Access token bug fix</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33342</span></p>
</div>
<div class="paragraph">
<p>We resolved an issue where an access token may not include the <code class="codeph">pi.sri</code> claim after refresh. This issue only occurs when reuse of existing access grants is enabled.</p>
</div>
</div>
<div class="sect3">
<h4 id="attribute-retrieval"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#attribute-retrieval"></a>Attribute retrieval</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33484</span></p>
</div>
<div class="paragraph">
<p>In OAuth and OpenID Connect (OIDC) flows, external consent adapters can now retrieve attributes from the chained attributes map.</p>
</div>
</div>
<div class="sect3">
<h4 id="ldap-bug-fix"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#ldap-bug-fix"></a>LDAP bug fix</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33503</span></p>
</div>
<div class="paragraph">
<p>We fixed an LDAP issue where new access grant records were not created with new scopes when <strong class="uicontrol">Reuse Existing Persistent Access Grants for Grant Types</strong> was enabled.</p>
</div>
</div>
<div class="sect3">
<h4 id="id-token-acr-claim"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#id-token-acr-claim"></a>ID token ACR claim</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33557</span></p>
</div>
<div class="paragraph">
<p>We resolved an issue where an ID token would not include the Authentication Context Class Reference (ACR) claim if an old client secret was used during the retention period.</p>
</div>
</div>
<div class="sect3">
<h4 id="redundancies-in-key-algorithm-generation"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#redundancies-in-key-algorithm-generation"></a>Redundancies in key algorithm generation</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33607</span></p>
</div>
<div class="paragraph">
<p>We fixed an issue that affected cluster replication when PingFederate was deployed with AWS CloudHSM. When replication was initiated, engines generated a number of temporary key pairs, and the increased load on the HSM could trigger SSO errors.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.2.4 (March 2023)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-2-4-march-2023</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-2-4-march-2023</guid>
            <pubDate>Thu, 30 Mar 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-67"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-67"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="base-dn-reference-attribute"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#base-dn-reference-attribute"></a>Base DN reference attribute</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32971</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed an issue where upstream data stores in the chain could not recognize the reference attribute for base distinguished name (DN) during lookup.</p>
</div>
</div>
<div class="sect3">
<h4 id="identity-store-provisioner-validation-rules"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#identity-store-provisioner-validation-rules"></a>Identity store provisioner validation rules</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33017</span></p>
</div>
<div class="paragraph">
<p>We’ve improved validation rules to ensure that only identity store provisioners that support groups require group attribute contract validation.</p>
</div>
</div>
<div class="sect3">
<h4 id="dcr-with-client-secret-retention"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#dcr-with-client-secret-retention"></a>DCR with client secret retention</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33035</span></p>
</div>
<div class="paragraph">
<p>We’ve resolved a null pointer exception (NPE) error that occurred when attempting to set up Dynamic Client Registration (DCR) with client secret retention.</p>
</div>
</div>
<div class="sect3">
<h4 id="response-handling-logs"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#response-handling-logs"></a>Response handling logs</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33131</span></p>
</div>
<div class="paragraph">
<p>We’ve added additional logging to help debug unexpected errors in response handling.</p>
</div>
</div>
<div class="sect3">
<h4 id="oidc-policies-with-fragments-configured"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oidc-policies-with-fragments-configured"></a>OIDC policies with fragments configured</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33158</span></p>
</div>
<div class="paragraph">
<p>We’ve resolved an issue that occurred when saving OpenID Connect (OIDC) policies with fragments configured.</p>
</div>
</div>
<div class="sect3">
<h4 id="ldap-filter-validation"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#ldap-filter-validation"></a>LDAP filter validation</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33173</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed an issue related to LDAP filter validation that arose when accessing the <strong class="wintitle">IdP Connections</strong> page.</p>
</div>
</div>
<div class="sect3">
<h4 id="hsm-key-sessions"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#hsm-key-sessions"></a>HSM key sessions</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33284</span></p>
</div>
<div class="paragraph">
<p>We’ve improved the process of cluster replication for PingFederate integrated with AWS CloudHSM by purging HSM key pair generation sessions.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.2.3 (February 2023)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-2-3-february-2023</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-2-3-february-2023</guid>
            <pubDate>Fri, 10 Mar 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-68"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-68"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="potential-security-vulnerability-9"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#potential-security-vulnerability-9"></a>Potential security vulnerability</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32748</span></p>
</div>
<div class="paragraph">
<p>We’ve resolved a potential security vulnerability that is described in security advisory <a href="https://support.pingidentity.com/s/article/SECADV035-PingID-integration-for-PingFederate-offline-MFA-bypass" target="_blank" rel="noopener">SECADV035</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="log-improvements"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#log-improvements"></a>Log improvements</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33017</span></p>
</div>
<div class="paragraph">
<p>In order to reduce re-encryption and file scanning log verbosity, when a configuration is imported or replicated to a cluster, PingFederate no longer scans files in the <code class="filepath">etc</code> directory.</p>
</div>
</div>
<div class="sect3">
<h4 id="other-improvements"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#other-improvements"></a>Other improvements</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>We also updated the following bundled components and third-party dependencies:</p>
<div class="ulist">
<ul>
<li>
<p>PingID Integration Kit 2.24</p>
</li>
<li>
<p>PingID Adapter 2.13.2</p>
</li>
<li>
<p>PingID PCV (with integrated RADIUS server) 3.0.3</p>
</li>
</ul>
</div>
</li>
</ul>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.2.2 (February 2023)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-2-2-february-2023</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-2-2-february-2023</guid>
            <pubDate>Fri, 10 Mar 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-69"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-69"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="server-log-warnings"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#server-log-warnings"></a>Server log warnings</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33037</span></p>
</div>
<div class="paragraph">
<p>We’ve added a warning to server logs if the <em class="varname">ds-pwp-state-json</em> attribute is not present in PingDirectory’s LDAP Response. This warning appears in the log every time a user interacts with the profile management page. Please enable this attribute to adhere to PingDirectory’s security configuration best practices. PingDirectory version 8.1 and later supports this attribute, and customers running older versions are encouraged to upgrade to a supported version as soon as possible.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.2.1 (February 2023)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-2-1-february-2023</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-2-1-february-2023</guid>
            <pubDate>Fri, 10 Feb 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-70"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-70"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="oauth-client-management"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oauth-client-management"></a>OAuth client management</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32790</span></p>
</div>
<div class="paragraph">
<p>When managing OAuth clients, we’ve resolved a defect where selecting the <strong class="uicontrol">Require JWT Secured Authorization Response Mode</strong> text toggled the incorrect checkbox.</p>
</div>
</div>
<div class="sect3">
<h4 id="potential-security-vulnerability-10"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#potential-security-vulnerability-10"></a>Potential security vulnerability</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32805</span></p>
</div>
<div class="paragraph">
<p>We’ve resolved a potential security vulnerability that is described in security advisory <a href="https://support.pingidentity.com/s/article/SECADV033-Cross-Site-Request-Forgery-on-PingFederate-Local-Identity-Profiles-Endpoint" target="_blank" rel="noopener">SECADV033</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="informing-adapters-of-end-policy-result"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#informing-adapters-of-end-policy-result"></a>Informing adapters of end policy result</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32890</span></p>
</div>
<div class="paragraph">
<p>When processing policy fragments, all adapters invoked in the fragment now correctly execute their respective post-processing step (if applicable) to inform the adapter of the end policy result.</p>
</div>
</div>
<div class="sect3">
<h4 id="managing-certificates-within-metadata-export"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#managing-certificates-within-metadata-export"></a>Managing certificates within Metadata Export</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32965</span></p>
</div>
<div class="paragraph">
<p>Managing certificates within the <strong class="wintitle">Metadata Export</strong> flow no longer displays or saves an empty list of certificates, clearing out existing ones in the process. For more information, see <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_metadata_export.html" class="xref page">Metadata export</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="cluster-data-replication"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#cluster-data-replication"></a>Cluster data replication</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32983</span></p>
</div>
<div class="paragraph">
<p>We’ve resolved a defect where cluster data replication could remove keys from engine node’s <code class="filepath">pf.jwk</code> file instead of merging and retaining the keys.</p>
</div>
</div>
<div class="sect3">
<h4 id="other-improvements-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#other-improvements-2"></a>Other improvements</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>We also updated the following bundled components and third-party dependencies:</p>
<div class="ulist">
<ul>
<li>
<p>PingID Integration Kit 2.23</p>
</li>
<li>
<p>PingID Adapter 2.13.2</p>
</li>
<li>
<p>PingID PCV (with integrated RADIUS server) 3.0.2</p>
<div class="admonitionblock note">
<table>
<tbody><tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
<div class="paragraph">
<p>This version of the PingID PCV has known issues that you should review before upgrading. For more information, see <a href="https://support.pingidentity.com/s/article/Known-issues-in-PingID-RADIUS-PCV-3-0-2" target="_blank" rel="noopener">Known issues in PingID RADIUS PCV 3.0.2</a>.</p>
</div>
</td>
</tr>
</tbody></table>
</div>
</li>
</ul>
</div>
</li>
</ul>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.2 (December 2022)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-2-december-2022</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-2-december-2022</guid>
            <pubDate>Thu, 08 Dec 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="paragraph">
<p>New features and improvements in PingFederate 11.2.</p>
</div>
<div class="sect2">
<h3 id="new-features-and-enhancements-28"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#new-features-and-enhancements-28"></a>New features and enhancements</h3>
<div class="sect3">
<h4 id="support-for-oauth-2-0-authorization-server-metadata"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#support-for-oauth-2-0-authorization-server-metadata"></a>Support for OAuth 2.0 authorization server metadata</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>PingFederate now supports OAuth 2.0 authorization server metadata. This allows OAuth clients to retrieve relevant endpoints and other details about features that PingFederate supports. The API response is like the OpenID Connect Discovery endpoints response but doesn’t include OpenID Connect relevant details. This lets you configure endpoints for your particular use case. See <a href="https://docs.pingidentity.com/pingfederate/developers_reference_guide/pf_oauth_authorization_server_metadata_endpoint.html" class="xref page">OAuth authorization server metadata endpoint</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="support-for-nested-groups-and-nested-search-for-pingdirectory"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#support-for-nested-groups-and-nested-search-for-pingdirectory"></a>Support for nested groups and nested search for PingDirectory</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>For outbound provisioning, PingFederate now supports nested groups and nested search for PingDirectory. This lets you freely choose your favorite directory without needing to choose based on the support for nested groups. See nested group and nested search in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_saaschanneltasklet_saassourcelocationstate.html" class="xref page">Specifying a source location</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="exposed-accessgrantmanageraccessor-as-part-of-the-sdk"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#exposed-accessgrantmanageraccessor-as-part-of-the-sdk"></a>Exposed <code class="codeph">AccessGrantManagerAccessor</code> as part of the SDK</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>The <code class="codeph">AccessGrantManagerAccessor</code> is now accessible in the PingFederate SDK. This lets developers query existing persistent grants at run time. See <code class="filepath"><em class="varname">&lt;pf_install&gt;</em>/pingfederate/sdk/doc/com/pingidentity/access/AccessGrantManagerAccessor.html</code> in the SDK documentation.</p>
</div>
</div>
<div class="sect3">
<h4 id="improved-the-sign-on-experience-after-users-change-their-password"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#improved-the-sign-on-experience-after-users-change-their-password"></a>Improved the sign-on experience after users change their password</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>Now you can configure PingFederate to keep users signed in after they change their password. This prevents users from having to sign on again after updating their password, improving the user experience. Learn more in the <strong class="uicontrol">Require Re-authentication</strong> settings <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_html_form_adapter_advanced_fields.html" class="xref page">HTML Form Adapter advanced fields</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="administrative-api-supports-multiple-authentication-and-authorization-schemes"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#administrative-api-supports-multiple-authentication-and-authorization-schemes"></a>Administrative API supports multiple authentication and authorization schemes</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>Now you can configure the PingFederate administrative API to accept either OAuth <code class="codeph">access_token</code> or basic authentication. This is especially useful in cases where applications shouldn’t include administrator’s credentials in API requests. See <code class="codeph">pf.admin.api.authentication</code> in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_config_pf_propert.html" class="xref page">Configuring PingFederate properties</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="support-for-google-recaptcha-v3-and-integration-with-multiple-captcha-providers"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#support-for-google-recaptcha-v3-and-integration-with-multiple-captcha-providers"></a>Support for Google reCAPTCHA v3 and integration with multiple CAPTCHA providers</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>PingFederate now supports Google reCAPTCHA v3. reCAPTCHA v3 produces a score between 0.0 - 1.0 (risky to safe) that you can use in policies to require step-up authentication or other actions. By default, reCAPTCHA v3 doesn’t interrupt user journeys, which are in the control of application developers. Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_managing_captcha_risk_providers.html" class="xref page">Managing CAPTCHA and risk providers</a>.</p>
</div>
<div class="paragraph">
<p>PingFederate also now provides an SDK that allows for integrations with custom CAPTCHA providers, which adds great flexibility to the CAPTCHA feature.</p>
</div>
</div>
<div class="sect3">
<h4 id="improved-cluster-replication-notification"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#improved-cluster-replication-notification"></a>Improved cluster replication notification</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>Instead of showing an active bell icon, the administrative console now displays a banner when cluster replication is required. The banner includes a link to the <strong class="wintitle">Cluster Management</strong> window for easy access. See <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_cluster_management.html" class="xref page">Cluster management</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="the-administrative-console-supports-oidc-claims-parameter"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#the-administrative-console-supports-oidc-claims-parameter"></a>The administrative console supports OIDC claims parameter</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>You can configure PingFederate to function as an OpenID Connect client and let administrators sign on to the administrative console using their PingOne credentials. PingFederate initiates an OpenID Connect flow that includes the claims parameter. You can also use this feature outside the PingOne environment, leveraging any authorization server that supports the claims parameter. This allows for a simpler, seamless login flow. See Request Parameters in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_enabling_oidc_based_auth.html" class="xref page">Enabling OIDC-based authentication</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="the-administrative-console-supports-third-party-initiated-login"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#the-administrative-console-supports-third-party-initiated-login"></a>The administrative console supports third party-initiated login</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>You can configure PingFederate to accept incoming parameters, such as <code class="parmname">iss</code>, that are processed and included in an outgoing authorization request if configured to do so. This feature lets administrators sign on to PingFederate from PingOne. This feature also supports other OpenID Connect authorization servers that support incoming parameters. See Request Parameters in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_enabling_oidc_based_auth.html" class="xref page">Enabling OIDC-based authentication</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="pingone-davinci-integration-kit"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingone-davinci-integration-kit"></a>PingOne DaVinci integration kit</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>The PingFederate distribution now includes the PingOne DaVinci integration kit. See PingOne DaVinci Adapter in <a href="https://docs.pingidentity.com/pingfederate/introduction_to_pingfederate/pf_bundled_adapt_auth.html" class="xref page">Bundled adapters and authenticators</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="amazon-dynamodb-and-persistent-authentication-sessions"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#amazon-dynamodb-and-persistent-authentication-sessions"></a>Amazon DynamoDB and persistent authentication sessions</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>PingFederate can now manage persistent user sessions in AWS DynamoDB. Persistent user sessions keep sessions active even after a restart of PingFederate. This feature reduces the interruption of user journeys. See <em class="i">Configuring an Amazon DynamoDB for persistent authentication sessions</em> in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_defining_datastore_persis_auth_sess.html" class="xref page">Defining a datastore for persistent authentication sessions</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="enhanced-policy-rules"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#enhanced-policy-rules"></a>Enhanced policy rules</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>When defining policy rules, now attributes that were processed in an earlier step can be accessed further down in the policy tree. This feature enhances the management and usability of policies. See <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_config_rules_auth_policies.html" class="xref page">Configuring rules in authentication policies</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="the-heartbeat-endpoint-and-jmx-expose-more-information"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#the-heartbeat-endpoint-and-jmx-expose-more-information"></a>The heartbeat endpoint and JMX expose more information</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>The data exposed by the heartbeat endpoint and JMX interface now include more details, such as the number of errors per data store. See <a href="https://docs.pingidentity.com/pingfederate/pingfederate_monitoring_guide/pf_liveliness_responsiveness.html" class="xref page">Liveliness and responsiveness</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="updated-the-bundled-pingone-mfa-adapter"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#updated-the-bundled-pingone-mfa-adapter"></a>Updated the bundled PingOne MFA Adapter</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span></p>
</div>
<div class="paragraph">
<p>Updated the bundled PingOne MFA Adapter to the newest version, 2.0. See PingOne MFA Adapter in <a href="https://docs.pingidentity.com/pingfederate/introduction_to_pingfederate/pf_bundled_adapt_auth.html" class="xref page">Bundled adapters and authenticators</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="toggle-log-verbosity-with-ease"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#toggle-log-verbosity-with-ease"></a>Toggle log verbosity with ease</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>Gone are the days you had to edit the <code class="filepath">log4j2.xml</code> file on multiple servers to enable or disable DEBUG messages in their server logs. Now you can <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_logsettingstasklet_logsettingsstate.html" class="xref page">toggle log settings</a> in the administrative console or with the administrative API.</p>
</div>
<div class="paragraph">
<p>PingFederate provides a set of message categories, each targeting a specific scenario. For example, the <strong class="uicontrol">XML Signatures</strong> category helps you troubleshoot XML signature issues. You can also add your own categories to suit your unique requirements.</p>
</div>
</div>
<div class="sect3">
<h4 id="timestamps-for-clients-and-connections"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#timestamps-for-clients-and-connections"></a>Timestamps for clients and connections</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>When viewing lists of OAuth clients and Browser single sign-on (SSO)/security token service (STS) connections, you can now sort them by modification or creation time. The timestamps can also help you understand the history and the relationship between clients and connections.</p>
</div>
</div>
<div class="sect3">
<h4 id="aws-cloudhsm-and-java-11"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#aws-cloudhsm-and-java-11"></a>AWS CloudHSM and Java 11</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>If you <a href="https://docs.pingidentity.com/pingfederate/getting_started_with_pingfederate/pf_integra_aws_cloudhsm.html" class="xref page">integrate with Amazon Web Services (AWS) CloudHSM</a>, now you can choose between Java 8 and Java 11.</p>
</div>
</div>
<div class="sect3">
<h4 id="oauth-rich-authorization-requests"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oauth-rich-authorization-requests"></a>OAuth Rich Authorization Requests</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p><a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_oauth_rich_authorization_requests.html" class="xref page">OAuth rich authorization requests</a> (RAR) provide a standard way for OAuth client applications to specify fine-grained authorization requirements in their requests. For example, when initiating a money transfer, a personal banking application can pass all relevant information to the authorization server via the new parameter <code class="parmname">authorization_details</code>. The authorization server supporting RAR processes the <code class="parmname">authorization_details</code> parameter value accordingly and ultimately returns tokens to the application if the process completes successfully.</p>
</div>
<div class="paragraph">
<p>RAR is on track to become a requirement in Financial-grade API (FAPI) 2.0. With this new capability, you can confidently build your open banking solutions with PingFederate.</p>
</div>
</div>
<div class="sect3">
<h4 id="other-enhancements"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#other-enhancements"></a>Other enhancements</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>Now you can optionally define a sender name for each <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_notificationsendermanagementstate_configureauthnadapterstate_smtp.html" class="xref page">SMTP notification publisher instance</a>.</p>
</div>
<div class="paragraph">
<p>PingFederate now supports XML Encryption 1.1.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="resolved-issues-71"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-71"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="sorting-ldap-and-database-related-fields"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#sorting-ldap-and-database-related-fields"></a>Sorting LDAP and database-related fields</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-29355</span></p>
</div>
<div class="paragraph">
<p>For LDAP and database-related fields, PingFederate now sorts values alphabetically and in case-insensitive order.</p>
</div>
</div>
<div class="sect3">
<h4 id="detailed-comments-added-to-log4j2-xml-file"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#detailed-comments-added-to-log4j2-xml-file"></a>Detailed comments added to log4j2.xml file</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-30514</span></p>
</div>
<div class="paragraph">
<p>We’ve added detailed comments to the <code class="filepath">log4j2.xml</code> file to prevent misconfigurations that could lead to service hangs and production outages. Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_log4j_2_loggin_service_and_config.html" class="xref page">Log4j 2 logging service and configuration</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="configuration-options-added-to-control-saml-error-responses"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#configuration-options-added-to-control-saml-error-responses"></a>Configuration options added to control SAML error responses</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-30514</span></p>
</div>
<div class="paragraph">
<p>We’ve added a configuration option to control whether SAML error responses include <code class="codeph">Cause</code>. The new setting is <code class="codeph">IncludeErrorCauseInSamlResponse</code> in <code class="filepath">config-store/org.sourceid.saml20.protocol.StatusResponseTypeUtil.xml</code>. The default value is <em class="varname">true</em>.</p>
</div>
</div>
<div class="sect3">
<h4 id="improved-sp-sts-message-customization"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#improved-sp-sts-message-customization"></a>Improved SP STS message customization</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-31149</span></p>
</div>
<div class="paragraph">
<p>The <em class="varname">#HttpServletRequest</em> and <em class="varname">#HttpServletResponse</em> variables are now available in SP STS message customization. Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_message_types_and_avail_variables.html" class="xref page">Message types and available variables</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="connections-with-multiple-protocol-types"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#connections-with-multiple-protocol-types"></a>Connections with multiple protocol types</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-31531</span></p>
</div>
<div class="paragraph">
<p>We’ve resolved an issue where connections with multiple protocol types would only filter on a single protocol type.</p>
</div>
</div>
<div class="sect3">
<h4 id="openid-connect-oidc-for-administrative-console-authentication"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#openid-connect-oidc-for-administrative-console-authentication"></a>OpenID Connect (OIDC) for administrative console authentication</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-31717</span></p>
</div>
<div class="paragraph">
<p>When using OIDC for administrative console authentication, PingFederate no longer throws an NPE if <code class="codeph">private_key_jwt</code> is used for client authentication method and the <code class="codeph">client.secret</code> property is not set.</p>
</div>
</div>
<div class="sect3">
<h4 id="improvements-to-refresh-token-rolling-criteria"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#improvements-to-refresh-token-rolling-criteria"></a>Improvements to refresh token rolling criteria</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-31761</span></p>
</div>
<div class="paragraph">
<p>We’ve introduced a new separate stored value to track when refresh tokens should be reissued to OAuth clients, resolving a defect where rolling refresh tokens read the incorrect update timestamp to determine refresh token rolling criteria. Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_authorizationserversettingstasklet_oauthauthorizationserversettingsstate.html" class="xref page">Configuring authorization server settings</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="store-clients-with-special-characters"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#store-clients-with-special-characters"></a>Store clients with special characters</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-31786</span></p>
</div>
<div class="paragraph">
<p>When adding clients to Active Directory (AD) or other LDAP stores, PingFederate now automatically escapes reserved characters from clientIDs.</p>
</div>
</div>
<div class="sect3">
<h4 id="improved-detection-around-invalid-group-dn"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#improved-detection-around-invalid-group-dn"></a>Improved detection around invalid Group DN</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-31791</span></p>
</div>
<div class="paragraph">
<p>We’ve improved detection around invalid Group distinguished names (DN) and added exceptions in the provisioner log. For more information on Group DN, see <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_saaschanneltasklet_saassourcelocationstate.html" class="xref page">Specifying a source location</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="updates-to-the-samesitenone-header-attribute-supported-browsers-list"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#updates-to-the-samesitenone-header-attribute-supported-browsers-list"></a>Updates to the SameSite=None header attribute supported browsers list</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-31806</span></p>
</div>
<div class="paragraph">
<p>We’ve updated the supported browsers list for the <code class="codeph">SameSite=None</code> header attribute to filter out problematic clients with the <code class="codeph">SameSite</code> cookie attribute bug: Safari version 12 and Embedded Apple Webkit Browser Safari 12 on macOS.</p>
</div>
</div>
<div class="sect3">
<h4 id="expired-user-sessions-and-session-log-out"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#expired-user-sessions-and-session-log-out"></a>Expired user sessions and session log out</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-31807</span></p>
</div>
<div class="paragraph">
<p>PingFederate’s administrative console now identifies expired user sessions on timeout and properly removes the session regardless of user interaction.</p>
</div>
</div>
<div class="sect3">
<h4 id="policy-and-fragment-logging"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#policy-and-fragment-logging"></a>Policy and fragment logging</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-31862</span></p>
</div>
<div class="paragraph">
<p>PingFederate now logs the policy and fragment name before fragment processing.</p>
</div>
</div>
<div class="sect3">
<h4 id="bulk-import-for-idp-connections"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#bulk-import-for-idp-connections"></a>Bulk import for IdP connections</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-31870</span></p>
</div>
<div class="paragraph">
<p>Resolved an issue where bulk import fails for identity provider (IdP) connections that fulfill Persistent Grant Extended Attributes.</p>
</div>
</div>
<div class="sect3">
<h4 id="template-double-submission"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#template-double-submission"></a>Template double-submission</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-31957</span></p>
</div>
<div class="paragraph">
<p>PingFederate templates no longer allow double-submission.</p>
</div>
</div>
<div class="sect3">
<h4 id="connection-failures-on-external-ldap-authentication-login"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#connection-failures-on-external-ldap-authentication-login"></a>Connection failures on external LDAP authentication login</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32001</span></p>
</div>
<div class="paragraph">
<p>PingFederate now recovers from initial connection failure when logging into the administrative console using external LDAP authentication.</p>
</div>
</div>
<div class="sect3">
<h4 id="hiding-user-information-from-authentication-api-responses"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#hiding-user-information-from-authentication-api-responses"></a>Hiding user information from authentication API responses</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32028</span></p>
</div>
<div class="paragraph">
<p>You can now configure the <code class="codeph">IncludeUserInfoInResponses</code> setting in the <code class="codeph">&lt;install
                                dir&gt;/server/default/data/config-store/org.sourceid.saml20.domain.mgmt.impl.AuthnApiManagerImpl.xml</code> file to hide user information from authentication API responses.</p>
</div>
</div>
<div class="sect3">
<h4 id="errors-on-policy-fragments-configured-to-handle-failures-locally"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#errors-on-policy-fragments-configured-to-handle-failures-locally"></a>Errors on policy fragments configured to handle failures locally</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32073</span></p>
</div>
<div class="paragraph">
<p>When an error occurs on policies containing fragments and configured to handle failures locally, PingFederate no longer redirects a user to the service provider (SP) error page on SP-initiated SSO.</p>
</div>
</div>
<div class="sect3">
<h4 id="password-management"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#password-management"></a>Password management</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32081</span></p>
</div>
<div class="paragraph">
<p>We’ve resolved an issue around password requirements messaging during password management.</p>
</div>
</div>
<div class="sect3">
<h4 id="updated-description-text-on-import-connections-page"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#updated-description-text-on-import-connections-page"></a>Updated description text on Import Connections page</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32088</span></p>
</div>
<div class="paragraph">
<p>We’ve updated the description text on the import IdP/SP connection page to indicate that PingFederate only performs minimal validation for imported connections. We suggest using the administrative API for connection migration, which performs thorough validation.</p>
</div>
</div>
<div class="sect3">
<h4 id="otl-for-password-reset-expiry-or-reuse-error-reporting"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#otl-for-password-reset-expiry-or-reuse-error-reporting"></a>OTL for password reset expiry or reuse error reporting</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32090</span></p>
</div>
<div class="paragraph">
<p>In the case where a one-time link (OTL) for password reset expires or is reused, PingFederate now responds with the appropriate error message in the authentication API and logs the error response in the <code class="filepath">audit.log</code>. Learn more about OTL for password reset in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_config_self_servic_account_recovery.html" class="xref page">Configuring self-service account recovery</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="duplicate-scope-and-scope-group-name-values"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#duplicate-scope-and-scope-group-name-values"></a>Duplicate scope and scope group name values</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32234</span></p>
</div>
<div class="paragraph">
<p>We’ve resolved a defect that allowed scope and scope group names to be the same when saved through the administrative console. Learn more in <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_scopes_and_scope_management.html" class="xref page">Scopes and scope management</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="warning-during-sql-provisioning-table-creation"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#warning-during-sql-provisioning-table-creation"></a>Warning during SQL provisioning table creation</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32254</span></p>
</div>
<div class="paragraph">
<p>We’ve decreased the maximum key length for <code class="codeph">saasGroupName</code>, resolving a warning that occurred when creating SQL provisioning tables.</p>
</div>
</div>
<div class="sect3">
<h4 id="change-password-link-accessibility"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#change-password-link-accessibility"></a>'Change Password' link accessibility</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32343</span></p>
</div>
<div class="paragraph">
<p>On sign-on pages, we’ve improved the accessibility of the 'Change Password' link, regardless of browser window size.</p>
</div>
</div>
<div class="sect3">
<h4 id="notification-publisher-accessor-added-to-sdk"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#notification-publisher-accessor-added-to-sdk"></a>Notification publisher accessor added to SDK</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32345</span></p>
</div>
<div class="paragraph">
<p>We’ve added a notification publisher accessor to the SDK, addressing an error where plugins utilizing a notification publisher could not invoke one of the notification publishers configured in PingFederate.</p>
</div>
</div>
<div class="sect3">
<h4 id="fragment-processing-now-independent-of-policy-processing"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#fragment-processing-now-independent-of-policy-processing"></a>Fragment processing now independent of policy processing</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32461</span></p>
</div>
<div class="paragraph">
<p>PingFederate now processes policy fragments independently from policies and other fragments.</p>
</div>
</div>
<div class="sect3">
<h4 id="lip-registration-via-a-third-party-service-and-the-authentication-api"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#lip-registration-via-a-third-party-service-and-the-authentication-api"></a>LIP registration via a third-party service and the authentication API</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32574</span></p>
</div>
<div class="paragraph">
<p>We’ve resolved a defect where Local Identity Profile (LIP) registration via a third-party service and the authentication API would still require a password, despite previously registering with the third party.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="known-issues-and-limitations-8"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#known-issues-and-limitations-8"></a>Known issues and limitations</h3>
<div class="sect3">
<h4 id="pingid-password-credential-validator-with-integrated-radius-server-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingid-password-credential-validator-with-integrated-radius-server-3"></a>PingID password credential validator with integrated RADIUS server</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>PingFederate versions 11.1.4, 11.1.5, 11.2.1, and 11.2.2 contain version 3.0.2 of the PingID password credential validator (PCV). That version of the PCV has known issues that you should review before upgrading. For more information, see <a href="https://support.pingidentity.com/s/article/Known-issues-in-PingID-RADIUS-PCV-3-0-2" target="_blank" rel="noopener">Known issues in PingID RADIUS PCV 3.0.2</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="administrative-console-and-administrative-api-7"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#administrative-console-and-administrative-api-7"></a>Administrative console and administrative API</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>/bulk: Only resource types currently supported by the administrative API are included in the exported data. We don’t intend to introduce administrative API support to the following areas:</p>
<div class="ulist">
<ul>
<li>
<p><a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_configuring_standard_idp_discovery.html" class="xref page">SAML 2.0 IdP Discovery</a></p>
</li>
<li>
<p><a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_affiliationstasklet_affiliationmgmtstate.html" class="xref page">SAML 2.0 SP Affiliation</a></p>
</li>
<li>
<p><a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_smsprovidersettingstasklet_smsprovidersettingsstate.html" class="xref page">SMS Provider</a></p>
</li>
</ul>
</div>
</li>
<li>
<p>Previously, the administrative API did not accurately reflect a <strong class="uicontrol">Persistent Grant Max Lifetime</strong> setting of 29 days (or shorter) with the selection of the <strong class="uicontrol">Grants Do Not Timeout Due To Inactivity</strong> option. As a result, if you have configured such OAuth authorization server settings and have generated a bulk export in version 10.0 through 10.0.2, we recommend that you re-generate a new bulk export after upgrading to version 10.0.3 (or a more recent version). The newly exported data does not contain the aforementioned flaw, and you can safely import it to version 10.0.3 (or a more recent version).</p>
</li>
<li>
<p>When enabling mutual TLS certificate-based authentication, administrators often configure a list of acceptable client certificate issuers. When you use a browser to access the console or the administrative API documentation, PingFederate returns to the browser the list of acceptable issuers as part of the TLS handshake. If the browser’s client certificate store contains multiple client certificates, the browser often presents you only the certificates whose issuer matches one of the acceptable issuers. However, when PingFederate runs in a Java 11 environment, Chrome presents you all its configured client certificates, regardless of whether the issuer matches one of the acceptable issuers or not.</p>
</li>
<li>
<p>Prior to toggling the status of a connection with the administrative API, you must ensure that any expired certificates or no longer available attributes are replaced with valid certificates or attributes; otherwise, the update request fails.</p>
</li>
<li>
<p>When creating or updating a child instance of a hierarchical plugin, the administrative API retains objects with an <code class="codeph">"inherited": false</code> name/value pair (or without such name/value pair altogether), ignores those with a value of <code class="codeph">true</code>, and returns a 200 HTTP status code. No error messages are returned for the ignored objects.</p>
</li>
<li>
<p>Using the browser’s navigation mechanisms (for example, the <strong class="uicontrol">Back</strong> button) causes inconsistent behavior in the administrative console. Use the navigation buttons provided at the bottom of windows in the PingFederate console.</p>
</li>
<li>
<p>Using the PingFederate console in multiple tabs on one browser might cause inconsistent behavior which could corrupt its configuration.</p>
</li>
<li>
<p>If authenticated to the PingFederate administrative console using certificate authentication, a session that has timed out might not appear to behave as expected. Normally (when using password authentication), when a session has timed out and a user attempts some action in the console, the browser is redirected to the sign-on page, and then back to the administrative console after authentication is complete. Similar behavior applies for certificate authentication, in principle. However, because the browser might automatically resubmit the certificate for authentication, the browser might redirect to the administrative console and not the sign on page.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="tlsv1-3-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#tlsv1-3-3"></a>TLSv1.3</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>For Java versions that don’t support TLSv1.3 (meaning versions earlier than 8u261), PingFederate fails on start up with a <code class="codeph">NoSuchAlgorithmException</code> exception. To resolve this error, remove <code class="codeph">TLSv1.3</code> from the following settings in the <code class="filepath">run.properties</code> file:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><code class="parmname">pf.tls.client.protocols</code></p>
</li>
<li>
<p><code class="parmname">pf.tls.runtime.server.protocols</code></p>
</li>
<li>
<p><code class="parmname">pf.tls.admin.server.protocols</code></p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="tls-cipher-suite-customization-7"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#tls-cipher-suite-customization-7"></a>TLS cipher suite customization</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>PingFederate’s TLS cipher suites can be customized by modifying <code class="filepath">com.pingidentity.crypto.SunJCEManager.xml</code> (or a similarly-named file if BCFIPS or a hardware security module (HSM) is configured). After updating the file and replicating, all cluster nodes must be restarted for the change to take effect.</p>
</div>
</div>
<div class="sect3">
<h4 id="java-7"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#java-7"></a>Java</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>As of PingFederate 11.1, BC-FIPS and HSMs are not supported when using Java 17.</p>
</li>
<li>
<p>Updating Java version 8 to version 11 results in an error when PingFederate is already installed and running. To work around this issue, uninstall and reinstall the PingFederate Windows service by running the <code class="filepath">UninstallPingFederateService.bat</code> and <code class="filepath">InstallPingFederateService.bat</code> files located in <code class="filepath"><em class="varname">&lt;pf_install&gt;</em>/pingfederate/sbin/wrapper</code>.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="hardware-security-modules-hsms"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#hardware-security-modules-hsms"></a>Hardware security modules (HSMs)</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>AWS CloudHSM</p>
</div>
<div class="ulist">
<ul>
<li>
<p>It is not possible to use an elliptic curve (EC) certificate as an SSL server certificate.</p>
</li>
<li>
<p>TLS 1.3 is not currently supported.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Thales HSMs</p>
</div>
<div class="ulist">
<ul>
<li>
<p>JWT token decryption using ECDH-ES may fail. This issue only arises if PingFederate is configured with static OAuth and OpenID Connect keys, a static key is stored on the HSM, and PingFederate is consuming a token encrypted with this key.</p>
</li>
<li>
<p>It is not possible to use an elliptic curve (EC) certificate as an SSL server certificate.</p>
</li>
<li>
<p>TLS 1.3 is not currently supported.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Entrust HSMs</p>
</div>
<div class="ulist">
<ul>
<li>
<p>PingFederate must be deployed with Oracle Server Java Runtime Environment (JRE) 8 or Amazon Corretto 8.</p>
</li>
<li>
<p>JWT token decryption using ECDH-ES or RSAES OAEP may fail. This issue only arises if PingFederate is configured with static OAuth and OpenID Connect keys, a static key is stored on the HSM, and PingFederate is consuming a token encrypted with this key.</p>
</li>
<li>
<p>SAML assertion decryption using RSA OAEP may fail when the decryption key is stored on the HSM.</p>
</li>
<li>
<p>It is not possible to use an elliptic curve (EC) certificate as an SSL server certificate.</p>
</li>
<li>
<p>TLS 1.3 is not currently supported.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="sso-and-slo-7"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#sso-and-slo-7"></a>SSO and SLO</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>When consuming SAML metadata, PingFederate does not report an error when neither the <code class="parmname">validUntil</code> nor the <code class="parmname">cacheDuration</code> attribute is included in the metadata. Note that PingFederate does reject expired SAML metadata as indicated by the <code class="parmname">validUntil</code> attribute value, if it is provided.</p>
</li>
<li>
<p>The anchored-certificate trust model cannot be used with the Single log off (SLO) redirect binding because the certificate cannot be included with the logout request.</p>
</li>
<li>
<p>If an IdP connection is configured for multiple virtual server IDs, PingFederate will always use the default virtual server ID for IdP Discovery during an SP-initiated SSO event.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="composite-adapter-configuration-7"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#composite-adapter-configuration-7"></a>Composite Adapter configuration</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>SLO is not supported when users are authenticated through a Composite Adapter instance that contains another instance of the Composite Adapter.</p>
</div>
</div>
<div class="sect3">
<h4 id="self-service-password-reset-7"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#self-service-password-reset-7"></a>Self-service password reset</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>Passwords can be reset for Microsoft Active Directory user accounts without the permission to change password.</p>
</div>
</div>
<div class="sect3">
<h4 id="oauth-7"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oauth-7"></a>OAuth</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>PingFederate does not support a case-sensitive naming convention for OAuth client ID values when client records are stored in a directory server. For example, after creating a client with an ID value of <code class="codeph">sampleClient</code>, PingFederate does not allow the creation of another client with an ID value of <code class="codeph">SampleClient</code>.</p>
</div>
<div class="paragraph">
<p>Although it’s possible to create clients using the same ID values with different casings when client records are stored in XML files, a database server, or custom storage, we recommend not doing so to avoid potential record migration issues.</p>
</div>
</div>
<div class="sect3">
<h4 id="customer-identity-and-access-management-7"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#customer-identity-and-access-management-7"></a>Customer identity and access management</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>Some browsers display a date-picker user interface for fields that have been designed for date-specific inputs. Some browsers do not. If one or more date-specific fields are defined on the registration page or the profile management page (or both), end users must enter the dates manually if their browsers do not display a date-picker user interface for those fields.</p>
</div>
</div>
<div class="sect3">
<h4 id="provisioning-7"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#provisioning-7"></a>Provisioning</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>LDAP referrals return an error and cause provisioning to fail if the <code class="parmname">user</code> or <code class="parmname">group</code> objects are defined at the DC level, and not within an OU or within the Users CN.</p>
</li>
<li>
<p>The <code class="parmname">totalResults</code> value in SCIM responses indicates the number of results returned in the current response, not the total number of estimated results on the LDAP server.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="logging-7"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#logging-7"></a>Logging</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>If a source attribute has been configured for masking in an IdP adapter or IdP connection and the source attribute is mapped to OAuth’s persistent grant <code class="parmname">USER_KEY</code> attribute, the <code class="parmname">USER_KEY</code> attribute will not be masked in the server logs. Other persistent grant attributes will be masked.</p>
</li>
<li>
<p>Even if a source attribute has been configured for masking in an IdP adapter and the source attribute is mapped as the adapter’s unique user key, the user key attribute is not masked in the server or audit logs.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="database-logging-7"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#database-logging-7"></a>Database logging</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>If a source attribute has been configured for masking in an IdP adapter or IdP connection and the source attribute is mapped to OAuth’s persistent grant <code class="parmname">USER_KEY</code> attribute, the <code class="parmname">USER_KEY</code> attribute will not be masked in the server logs. Other persistent grant attributes will be masked.</p>
</li>
<li>
<p>Even if a source attribute has been configured for masking in an IdP adapter and the source attribute is mapped as the adapter’s unique user key, the user key attribute is not masked in the server or audit logs.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="radius-nas-ip-address-7"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#radius-nas-ip-address-7"></a>RADIUS NAS-IP-Address</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>The RADIUS NAS-IP-Address is only included in Access-Request packets when the <code class="codeph">pf.bind.engine.address</code> is set with an IPv4 address. IPv6 is not supported.</p>
</div>
</div>
<div class="sect3">
<h4 id="pingone-fraud-integration-kit-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingone-fraud-integration-kit-3"></a>PingOne Fraud integration kit</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_product">PingOne Fraud</span></p>
</div>
<div class="paragraph">
<p>The PingOne Fraud integration kit is no longer bundled with PingFederate.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="deprecated-features-7"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#deprecated-features-7"></a>Deprecated features</h3>
<div class="sect3">
<h4 id="microsoft-internet-explorer-11-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#microsoft-internet-explorer-11-3"></a>Microsoft Internet Explorer 11</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>Ping Identity commits to deliver the best experience for administrators and users. As we continue to improve our products, we encourage you to migrate off of Microsoft Internet Explorer 11. Starting with PingFederate 11.0, Internet Explorer 11 is no longer included in the PingFederate qualification process for administrators or users. For a list of supported browsers, see <a href="https://docs.pingidentity.com/pingfederate/installing_and_uninstalling_pingfederate/pf_system_requirements.html" class="xref page">System requirements</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="configcopy-tool-connection-management-service-sso-directory-service-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#configcopy-tool-connection-management-service-sso-directory-service-3"></a>Configcopy tool, Connection Management Service, SSO Directory Service</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>As of PingFederate 10.2, these features have been deprecated and will be removed in a future release.</p>
</div>
</div>
<div class="sect3">
<h4 id="oracle-directory-server-enterprise-edition-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oracle-directory-server-enterprise-edition-3"></a>Oracle Directory Server Enterprise Edition</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>As Oracle ended its Premier Support for Oracle Directory Server Enterprise Edition (ODSEE 11g) in December 2019, we no longer include ODSEE as part of the PingFederate qualification process (starting with PingFederate 10.2). We continue to qualify against <a href="https://www.oracle.com/security/identity-management/directory-services/" target="_blank" rel="noopener">Oracle Unified Directory</a> and other supported directory servers. For a full list, see <a href="https://docs.pingidentity.com/pingfederate/installing_and_uninstalling_pingfederate/pf_system_requirements.html" class="xref page">System requirements</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="snmp-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#snmp-3"></a>SNMP</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>Starting with PingFederate 10.2, monitoring and reporting through the Simple Network Management Protocol (SNMP) has been removed.</p>
</div>
</div>
<div class="sect3">
<h4 id="roles-and-protocols-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#roles-and-protocols-3"></a>Roles and protocols</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>Starting with PingFederate 10.1, roles and protocols are always enabled and no longer configurable through the administrative console and API.</p>
</div>
</div>
<div class="sect3">
<h4 id="s3_ping-discovery-protocol-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#s3_ping-discovery-protocol-3"></a>S3_PING discovery protocol</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>Starting with PingFederate 10.1, the S3_PING discovery protocol has been deprecated. Customers running on AWS infrastructure should instead use NATIVE_S3_PING.</p>
</div>
</div>
<div class="sect3">
<h4 id="red-hat-enterprise-linux-install-script-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#red-hat-enterprise-linux-install-script-3"></a>Red Hat Enterprise Linux install script</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>Starting with PingFederate 10.0, the Red Hat Enterprise Linux install script is no longer available. To install PingFederate 10.0 for Linux, you must download and extract the product distribution <code class="filepath">.zip</code> file.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.1.11 (January 2025)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-1-11-january-2025</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-1-11-january-2025</guid>
            <pubDate>Wed, 22 Jan 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-72"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-72"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="eliminating-redundant-group-updates-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#eliminating-redundant-group-updates-3"></a>Eliminating redundant group updates</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33441</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused PingFederate, when configured with PingDirectory as an outbound provisioning data source, to send redundant group updates in each provisioning cycle when the entry remains unchanged.</p>
</div>
</div>
<div class="sect3">
<h4 id="provisioner-uses-the-wrong-time-zone-when-data-source-and-pingfederate-are-in-different-time-zones"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#provisioner-uses-the-wrong-time-zone-when-data-source-and-pingfederate-are-in-different-time-zones"></a>Provisioner uses the wrong time zone when data source and PingFederate are in different time zones</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-35286</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused redundant user provisioner updates when the data source and PingFederate were in different time zones.</p>
</div>
</div>
<div class="sect3">
<h4 id="group-membership-loss-during-provisioning-7"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#group-membership-loss-during-provisioning-7"></a>Group membership loss during provisioning</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-36874</span></p>
</div>
<div class="paragraph">
<p>We’ve fixed a defect that caused PingFederate to lose user group membership information when it lost contact with the data store during provisioning operations.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.1.10 (April 2024)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-1-10-april-2024</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-1-10-april-2024</guid>
            <pubDate>Thu, 11 Apr 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-73"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-73"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="rest-datastore-security-vulnerability-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#rest-datastore-security-vulnerability-4"></a>Rest datastore security vulnerability</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-34720</span></p>
</div>
<div class="paragraph">
<p>Fixed a JSON injection vulnerability in REST datastores described in security advisory <a href="https://support.pingidentity.com/s/article/SECADV044-PingFederate-Security-Rollup" target="_blank" rel="noopener">SECADV044</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="runtime-nodes-security-vulnerability-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#runtime-nodes-security-vulnerability-4"></a>Runtime nodes security vulnerability</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-34896</span></p>
</div>
<div class="paragraph">
<p>Fixed a path traversal vulnerability in Runtime nodes described in security advisory <a href="https://support.pingidentity.com/s/article/SECADV044-PingFederate-Security-Rollup" target="_blank" rel="noopener">SECADV044</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="openid-connect-policy-management-editor-security-vulnerability-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#openid-connect-policy-management-editor-security-vulnerability-4"></a>OpenID Connect policy management editor security vulnerability</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-35081</span></p>
</div>
<div class="paragraph">
<p>Fixed a Cross-Site Scripting vulnerability in the OpenID Connect Policy Management Editor described in security advisory <a href="https://support.pingidentity.com/s/article/SECADV044-PingFederate-Security-Rollup" target="_blank" rel="noopener">SECADV044</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="slow-log-consumption-affects-performance-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#slow-log-consumption-affects-performance-3"></a>Slow log consumption affects performance</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33368</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused performance issues for PingFederate when third-party logging services were slow to consume logging events.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.1.9 (November 30)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-1-9-november-30</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-1-9-november-30</guid>
            <pubDate>Thu, 30 Nov 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-74"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-74"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="outbound-provisioning-performance-improvement-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#outbound-provisioning-performance-improvement-2"></a>Outbound provisioning performance improvement</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33466</span></p>
</div>
<div class="paragraph">
<p>You can now turn off server-side sorting for LDAP requests related to outbound provisioning, which can improve performance in some environments.</p>
</div>
<div class="paragraph">
<p>Configure this option using the <code class="parmname">ProvisionWithServerSort</code> parameter in the <code class="filepath">com.pingidentity.common.util.ldap.LDAPUtil.xml</code> file.</p>
</div>
</div>
<div class="sect3">
<h4 id="updating-oauth-clients-with-dynamic-client-registration-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#updating-oauth-clients-with-dynamic-client-registration-4"></a>Updating OAuth clients with dynamic client registration</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34146</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect where an OAuth client created with dynamic client registration (DCR) couldn’t be updated with DCR after it was modified with the administrative console.</p>
</div>
</div>
<div class="sect3">
<h4 id="resolved-a-vulnerability-in-the-initial-setup-wizard-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-a-vulnerability-in-the-initial-setup-wizard-4"></a>Resolved a vulnerability in the Initial Setup Wizard</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-34646</span></p>
</div>
<div class="paragraph">
<p>Fixed a Server-Side Request Forgery vulnerability in the Initial Setup Wizard described in security advisory <a href="https://support.pingidentity.com/s/article/SECADV041-PingFederate-Server-Side-Request-Forgery" target="_blank" rel="noopener">SECADV041</a>.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.1.8 (August 2023)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-1-8-august-2023</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-1-8-august-2023</guid>
            <pubDate>Thu, 03 Aug 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-75"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-75"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="potential-security-vulnerability-11"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#potential-security-vulnerability-11"></a>Potential security vulnerability</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33449</span></p>
</div>
<div class="paragraph">
<p>We’ve resolved a potential security vulnerability that is described in security advisory <a href="https://support.pingidentity.com/s/article/SECADV037-PingFederate-Security-Rollup-Denial-of-Service-Information-Disclosure-Authentication-Bypass-Vulnerabilities" target="_blank" rel="noopener">SECADV037</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="binary-attributes-handled-incorrectly-when-using-pingone-ldap-gateway-datastores-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#binary-attributes-handled-incorrectly-when-using-pingone-ldap-gateway-datastores-2"></a>Binary attributes handled incorrectly when using PingOne LDAP gateway datastores</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33637</span></p>
</div>
<div class="paragraph">
<p>Now when PingFederate retrieves a binary attribute from a PingOne LDAP gateway datastore, it correctly converts the attribute value to the specified format (base64, SID, hex).</p>
</div>
</div>
<div class="sect3">
<h4 id="potential-security-vulnerability-12"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#potential-security-vulnerability-12"></a>Potential security vulnerability</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34017</span></p>
</div>
<div class="paragraph">
<p>We’ve resolved a potential security vulnerability that is described in security advisory <a href="https://support.pingidentity.com/s/article/SECADV037-PingFederate-Security-Rollup-Denial-of-Service-Information-Disclosure-Authentication-Bypass-Vulnerabilities" target="_blank" rel="noopener">SECADV037</a>.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.1.7 (May 2023)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-1-7-may-2023</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-1-7-may-2023</guid>
            <pubDate>Tue, 09 May 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-76"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-76"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="logging-validation-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#logging-validation-2"></a>Logging validation</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32764</span></p>
</div>
<div class="paragraph">
<p>We’ve improved logging validation.</p>
</div>
</div>
<div class="sect3">
<h4 id="resource-owner-ro-password-credentials-flow"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resource-owner-ro-password-credentials-flow"></a>Resource Owner (RO) Password Credentials flow</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33359</span></p>
</div>
<div class="paragraph">
<p>We’ve improved the error messaging around the Resource Owner (RO) Password Credentials flow.</p>
</div>
</div>
<div class="sect3">
<h4 id="requested-authentication-context-selector"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#requested-authentication-context-selector"></a>Requested Authentication Context Selector</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33549</span></p>
</div>
<div class="paragraph">
<p>The Requested Authentication Context Selector no longer throws a Null Pointer Exception (NPE) during callback.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.1.6 (February 2023)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-1-6-february-2023</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-1-6-february-2023</guid>
            <pubDate>Fri, 10 Mar 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-77"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-77"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="log-improvements-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#log-improvements-2"></a>Log improvements</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33017</span></p>
</div>
<div class="paragraph">
<p>In order to reduce re-encryption and file scanning log verbosity, when a configuration is imported or replicated to a cluster, PingFederate no longer scans files in the <code class="filepath">etc</code> directory.</p>
</div>
</div>
<div class="sect3">
<h4 id="other-improvements-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#other-improvements-3"></a>Other improvements</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">Info</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>We also updated the following bundled components and third-party dependencies:</p>
<div class="ulist">
<ul>
<li>
<p>PingID Integration Kit 2.24</p>
</li>
<li>
<p>PingID Adapter 2.13.2</p>
</li>
<li>
<p>PingID PCV (with integrated RADIUS server) 3.0.3</p>
</li>
</ul>
</div>
</li>
</ul>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.1.5 (February 2023)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-1-5-february-2023</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-1-5-february-2023</guid>
            <pubDate>Fri, 10 Mar 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-78"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-78"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="server-log-warnings-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#server-log-warnings-2"></a>Server log warnings</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33037</span></p>
</div>
<div class="paragraph">
<p>We’ve added a warning to server logs if the <em class="varname">ds-pwp-state-json</em> attribute is not present in PingDirectory’s LDAP Response. This warning appears in the log every time a user interacts with the profile management page. Please enable this attribute to adhere to PingDirectory’s security configuration best practices. PingDirectory version 8.1 and later supports this attribute, and customers running older versions are encouraged to upgrade to a supported version as soon as possible.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.1.4 (February 2023)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-1-4-february-2023</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-1-4-february-2023</guid>
            <pubDate>Fri, 10 Mar 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-79"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-79"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="oauth-client-management-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oauth-client-management-2"></a>OAuth client management</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32790</span></p>
</div>
<div class="paragraph">
<p>When managing OAuth clients, we’ve resolved a defect where selecting the <strong class="uicontrol">Require JWT Secured Authorization Response Mode</strong> text toggled the incorrect checkbox.</p>
</div>
</div>
<div class="sect3">
<h4 id="potential-security-vulnerability-13"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#potential-security-vulnerability-13"></a>Potential security vulnerability</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32805</span></p>
</div>
<div class="paragraph">
<p>We’ve resolved a potential security vulnerability that is described in security advisory <a href="https://support.pingidentity.com/s/article/SECADV033-Cross-Site-Request-Forgery-on-PingFederate-Local-Identity-Profiles-Endpoint" target="_blank" rel="noopener">SECADV033</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="informing-adapters-of-end-policy-result-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#informing-adapters-of-end-policy-result-2"></a>Informing adapters of end policy result</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32890</span></p>
</div>
<div class="paragraph">
<p>When processing policy fragments, all adapters invoked in the fragment now correctly execute their respective post-processing step (if applicable) to inform the adapter of the end policy result.</p>
</div>
</div>
<div class="sect3">
<h4 id="managing-certificates-within-metadata-export-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#managing-certificates-within-metadata-export-2"></a>Managing certificates within Metadata Export</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32965</span></p>
</div>
<div class="paragraph">
<p>Managing certificates within the <strong class="wintitle">Metadata Export</strong> flow no longer displays or saves an empty list of certificates, clearing out existing ones in the process. For more information, see <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_metadata_export.html" class="xref page">Metadata export</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="cluster-data-replication-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#cluster-data-replication-2"></a>Cluster data replication</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32983</span></p>
</div>
<div class="paragraph">
<p>We’ve resolved a defect where cluster data replication could remove keys from engine node’s <code class="filepath">pf.jwk</code> file instead of merging and retaining the keys.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.1.3 (December 2022)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-1-3-december-2022</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-1-3-december-2022</guid>
            <pubDate>Wed, 14 Dec 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-80"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-80"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="improvements-to-custom-revocation-checker"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#improvements-to-custom-revocation-checker"></a>Improvements to custom revocation checker</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32395</span></p>
</div>
<div class="paragraph">
<p>We’ve improved PingFederate’s custom revocation checker, ensuring that when the server returns stapled Online Certificate Status Protocol (OCSP) responses, PingFederate invokes the checker. Previously, PingFederate used the default revocation checker to validate these responses, which could cause single sign-on (SSO) failures with BCFIPS mode enabled. For more information, see <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_certificaterevocationcheckingtasklet_managecertificaterevocationstate.html" class="xref page">Configuring certificate revocation</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="cluster-replication-notifications"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#cluster-replication-notifications"></a>Cluster replication notifications</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32398</span></p>
</div>
<div class="paragraph">
<p>We’ve improved notifications to signal to administrators that in the event of a replication failure or any changes to cluster configuration require replication. For more information,&nbsp;see <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_cluster_management.html" class="xref page">Cluster management</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="null-pointer-exception-during-dependency-error-detection"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#null-pointer-exception-during-dependency-error-detection"></a>Null pointer exception during dependency error detection</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32553</span></p>
</div>
<div class="paragraph">
<p>During PingFederate dependency error detection, OGNL expressions in adapter-to-adapter mappings no longer raise a null pointer exception (NPE).</p>
</div>
</div>
<div class="sect3">
<h4 id="pingfederate-updates-to-hsm-ordering"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-updates-to-hsm-ordering"></a>PingFederate updates to HSM ordering</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32556</span></p>
</div>
<div class="paragraph">
<p>We’ve updated the recommended security provider ordering for the Thales Luna Network hardware security module (HSM) to address an issue where temporary keys and sessions could accumulate on the HSM, eventually resulting in resource exhaustion. A limitation of the new ordering is that EC certificates can no longer operate as SSL server certificates. For details on the new order, see <a href="https://docs.pingidentity.com/pingfederate/getting_started_with_pingfederate/pf_integrating_thales_luna_network_hsm.html" class="xref page">Integrating with Thales Luna Network HSM</a>.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.1.2 (October 2022)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-1-2-october-2022</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-1-2-october-2022</guid>
            <pubDate>Thu, 13 Oct 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-81"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-81"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="bulk-import-for-idp-connections-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#bulk-import-for-idp-connections-2"></a>Bulk import for IdP connections</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-31870</span></p>
</div>
<div class="paragraph">
<p>Resolved an issue where bulk import fails for identity provider (IdP) connections that fulfill Persistent Grant Extended Attributes.</p>
</div>
</div>
<div class="sect3">
<h4 id="connection-failures-on-external-ldap-authentication-login-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#connection-failures-on-external-ldap-authentication-login-2"></a>Connection failures on external LDAP authentication login</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32001</span></p>
</div>
<div class="paragraph">
<p>PingFederate now recovers from initial connection failure when logging into the administrative console using external LDAP authentication.</p>
</div>
</div>
<div class="sect3">
<h4 id="hiding-user-information-from-authentication-api-responses-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#hiding-user-information-from-authentication-api-responses-2"></a>Hiding user information from authentication API responses</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32028</span></p>
</div>
<div class="paragraph">
<p>You can now configure the setting <code class="codeph">IncludeUserInfoInResponses</code> in the <code class="filepath">&lt;install dir&gt;/server/default/data/config-store/org.sourceid.saml20.domain.mgmt.impl.AuthnApiManagerImpl.xml</code> file to hide user information from authentication API responses.</p>
</div>
</div>
<div class="sect3">
<h4 id="errors-on-policy-fragments-configured-to-handle-failures-locally-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#errors-on-policy-fragments-configured-to-handle-failures-locally-2"></a>Errors on policy fragments configured to handle failures locally</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32073</span></p>
</div>
<div class="paragraph">
<p>When an error occurs on policies containing fragments and configured to handle failures locally, PingFederate no longer redirects a user to the service provider (SP) error page on SP-initiated single sign-on (SSO).</p>
</div>
</div>
<div class="sect3">
<h4 id="outbound-tls-connection-failures"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#outbound-tls-connection-failures"></a>Outbound TLS connection failures</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32199</span></p>
</div>
<div class="paragraph">
<p>The certificate path-building algorithm now uses PingFederate’s custom revocation checker. This fix resolves a bug where outbound TLS connections failed for servers that presented out-of-order certificate chains.</p>
</div>
</div>
<div class="sect3">
<h4 id="pingdirectory-user-registration"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingdirectory-user-registration"></a>PingDirectory user registration</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32241</span></p>
</div>
<div class="paragraph">
<p>During user registration, PingFederate now sends all passwords to PingDirectory, resolving an issue where passwords consisting of only spaces would not properly register a PingDirectory password.</p>
</div>
</div>
<div class="sect3">
<h4 id="configurations-with-no-connection-type-in-kerberos-realm"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#configurations-with-no-connection-type-in-kerberos-realm"></a>Configurations with no connection type in Kerberos realm</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32274</span></p>
</div>
<div class="paragraph">
<p>When reading the <code class="filepath">pingfederate-kerberos-realms.xml</code> file, PingFederate no longer raises an error for configurations with no connection type in the Kerberos realm.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.1.1 (July 2022)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-1-1-july-2022</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-1-1-july-2022</guid>
            <pubDate>Thu, 11 Aug 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-82"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-82"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="security-around-password-expiration"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#security-around-password-expiration"></a>Security around password expiration</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-29706</span>
<span class="ping_product">PingDirectory</span></p>
</div>
<div class="paragraph">
<p>Improved the security around password expiration when using PingDirectory as a user store.</p>
</div>
</div>
<div class="sect3">
<h4 id="issuance-criteria-in-authentication-policy-contracts"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#issuance-criteria-in-authentication-policy-contracts"></a>Issuance criteria in authentication policy contracts</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-31485</span></p>
</div>
<div class="paragraph">
<p>Issuance criteria in authentication policy contracts no longer cause the logs to indicate invalid XML errors. This issue did not cause runtime errors.</p>
</div>
</div>
<div class="sect3">
<h4 id="http-header-for-client-ip-addresses"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#http-header-for-client-ip-addresses"></a><strong class="uicontrol">HTTP header for client IP addresses</strong></h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-31735</span></p>
</div>
<div class="paragraph">
<p>Resolved an issue that sometimes occurred when IPV6 addresses were specified in the <strong class="uicontrol">HTTP Header for Client IP Addresses</strong> field on the <strong class="wintitle">Incoming Proxy Settings</strong> window.</p>
</div>
</div>
<div class="sect3">
<h4 id="error-descriptions"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#error-descriptions"></a>Error descriptions</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-31753</span></p>
</div>
<div class="paragraph">
<p>PingFederate error descriptions no longer disclose details of java classes.</p>
</div>
</div>
<div class="sect3">
<h4 id="masterkeyencryptor-failure-during-cluster-replication"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#masterkeyencryptor-failure-during-cluster-replication"></a>MasterKeyEncryptor failure during cluster replication</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-31795</span></p>
</div>
<div class="paragraph">
<p>When PingFederate is using a custom MasterKeyEncryptor that relies on an SSL call to an external service, cluster replication no longer causes cascading failures because PingFederate is unable to open Java key store files.</p>
</div>
</div>
<div class="sect3">
<h4 id="updating-the-client-secret-with-the-oauth-client-management-service"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#updating-the-client-secret-with-the-oauth-client-management-service"></a>Updating the client secret with the OAuth client management service</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-31851</span></p>
</div>
<div class="paragraph">
<p>When updating the client secret with the OAuth client management service, PingFederate now correctly creates the secondary secrets.</p>
</div>
</div>
<div class="sect3">
<h4 id="oauth-authorization-requests-with-response_modepi-flow"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oauth-authorization-requests-with-response_modepi-flow"></a>OAuth authorization requests with <code class="codeph">response_mode=pi.flow</code></h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-31942</span></p>
</div>
<div class="paragraph">
<p>Now when PingFederate receives an OAuth authorization request with <code class="codeph">response_mode=pi.flow</code>, password change and account recovery flows using an authentication policy work correctly.</p>
</div>
</div>
<div class="sect3">
<h4 id="administrative-api-enhancement"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#administrative-api-enhancement"></a>Administrative API enhancement</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>Improved the administrative API to manage the System for Cross-domain Identity Management (SCIM) inbound provisioning settings in identity provider (IdP) connections.</p>
</div>
</div>
<div class="sect3">
<h4 id="message-customization-enhancement"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#message-customization-enhancement"></a>Message customization enhancement</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>Enhanced PingFederate message customization by adding the following FedHub-specific context variables:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><code class="codeph">FedHubSpConnApplicationName</code></p>
</li>
<li>
<p><code class="codeph">FedHubSpConnName</code></p>
</li>
<li>
<p><code class="codeph">FedHubOAuthClientId</code></p>
</li>
<li>
<p><code class="codeph">FedHubOAuthClientName</code></p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="cluster-management-enhancement"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#cluster-management-enhancement"></a>Cluster management enhancement</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>Revised the <strong class="wintitle">Cluster Management</strong> window to make it more obvious when changes to the configuration on the administrative node have not been replicated to the engine nodes.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.1 (June 2022)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-1-june-2022</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-1-june-2022</guid>
            <pubDate>Fri, 01 Jul 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="paragraph">
<p>New features and improvements in PingFederate 11.1.</p>
</div>
<div class="sect2">
<h3 id="new-features-and-enhancements-29"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#new-features-and-enhancements-29"></a>New features and enhancements</h3>
<div class="sect3">
<h4 id="pingone-integration"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingone-integration"></a>PingOne integration</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_product">PingOne</span></p>
</div>
<div class="paragraph">
<p>We’ve added Kerberos authentication via PingOne and the PingOne LDAP Gateway Data Store. This new capability allows PingFederate in the cloud, without a direct connection to Active Directory, to complete Kerberos authentication for browser-based SSO requests and STS transactions through PingOne.</p>
</div>
</div>
<div class="sect3">
<h4 id="jwt-secured-authorization-response-mode-jarm"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#jwt-secured-authorization-response-mode-jarm"></a>JWT Secured Authorization Response Mode (JARM)</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>We’re proud to support <a href="https://openid.net/specs/openid-financial-api-jarm.html" target="_blank" rel="noopener">JWT Secured Authorization Response Mode</a> (JARM) in version 11.1. JARM allows authorization servers to transmit authorization responses in JSON web tokens (JWTs), providing digital signature and encryption, sender authentication, and audience restriction. As JARM becomes a requirement in FAPI 2, you can deploy open banking solutions confidently.</p>
</div>
</div>
<div class="sect3">
<h4 id="jwt-response-for-oauth-token-introspection"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#jwt-response-for-oauth-token-introspection"></a>JWT Response for OAuth Token Introspection</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>We’re also introducing support for <a href="https://datatracker.ietf.org/doc/html/draft-ietf-oauth-jwt-introspection-response" target="_blank" rel="noopener">JWT Response for OAuth Token Introspection</a>, a draft specification on track to become one of the authorization server requirements in the FAPI 2 Advanced Profile. JWT-secured introspection responses provide stronger assurance to the introspection requesters, most relevant when the requester, such as a resource server, expects to receive verified claims from the authorization server.</p>
</div>
</div>
<div class="sect3">
<h4 id="client-secret-management"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#client-secret-management"></a>Client secret management</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>Seamless client secret rotation no longer requires real-time coordination between PingFederate administrators and the application development teams. You can now configure PingFederate to retain previous secrets for a configurable period, during which the application teams can work on updating the client secrets in their apps. This enhancement drastically lowers the costs of securing applications that use client secrets for authentication. For more information, see "Client Secret Retention Period" in the topic <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_clientsettingstasklet_oauthdynamicclientregistrationdefaultsstate.html" class="xref page">Managing client configuration defaults</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="api-support-for-device-authorization-grant"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#api-support-for-device-authorization-grant"></a>API support for Device Authorization Grant</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>In addition to template-driven user experience, the user authorization step from Device Authorization Grant supports API now. You can also decide whether PingFederate should check the device activation code before or after authentication. These new capabilities enable you to build applications with the desired user experience for input-constrained devices, such as smart TVs or telepresence equipment.</p>
</div>
</div>
<div class="sect3">
<h4 id="amazon-dynamodb-for-grants"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#amazon-dynamodb-for-grants"></a>Amazon DynamoDB for grants</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>You can store OAuth persistent grants in Amazon DynamoDB, which allows you to take advantage of a NoSQL database where it matters most: delivering responsive experiences to globally distributed users and offering high availability at ease.</p>
</div>
</div>
<div class="sect3">
<h4 id="revocation-of-self-contained-access-tokens"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#revocation-of-self-contained-access-tokens"></a>Revocation of self-contained access tokens</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>You can optionally enable direct revocation for self-contained access tokens (JWT access tokens). This flexibility provides a secure way to invalidate access tokens without revoking the underlying refresh tokens or persistent grants. For more information, see <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_configuring_access_token_management_instance.html" class="xref page">Configuring an access token management instance</a> and its description of the <strong class="uicontrol">Enable Token Revocation</strong> checkbox.</p>
</div>
</div>
<div class="sect3">
<h4 id="a-new-alert-system"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#a-new-alert-system"></a>A new alert system</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>PingFederate 11.1 centralizes alerts, such as the reminder to replicate configuration, under the new <strong class="uicontrol">bell</strong> icon in the top menu. You can review important alerts from any configuration window.</p>
</div>
<div class="paragraph">
<p><span class="image"><img src="https://docs.pingidentity.com/pingfederate/_images/oqv1655324045023.png" alt="the bell icon displays important alerts"></span></p>
</div>
</div>
<div class="sect3">
<h4 id="copy-and-paste-authentication-policies-and-fragments"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#copy-and-paste-authentication-policies-and-fragments"></a>Copy-and-paste authentication policies and fragments</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>Previously, if you wanted to update an authentication policy or a reusable policy fragment midstream, they had to reconfigure all downstream paths, which can take some effort. With PingFederate 11.1, you can copy a subtree of policy paths before removing a step (such as an IdP adapter), adding a new step (such as a selector or another IdP adapter), and then pasting the subtree back to the policy. This new capability applies to reusable policy fragments and between authentication policies and reusable policy fragments.</p>
</div>
</div>
<div class="sect3">
<h4 id="administrative-api-to-move-individual-policies"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#administrative-api-to-move-individual-policies"></a>Administrative API to move individual policies</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>You can use the administrative API to move an individual policy to a specific location. This enhancement makes re-organizing policies by API requests easier and safer.</p>
</div>
</div>
<div class="sect3">
<h4 id="cluster-configuration-management"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#cluster-configuration-management"></a>Cluster configuration management</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>PingFederate engine nodes now capture common configuration replication issues in their server logs and send replication status back to the console node. The <strong class="wintitle">Cluster Management</strong> window provides live updates when you select <strong class="uicontrol">Replicate Configuration</strong> in the <strong class="wintitle">Cluster Management</strong> window. If an error occurs, you can act on it immediately and recover from potential outages faster.</p>
</div>
</div>
<div class="sect3">
<h4 id="passthrough-idp-adapter"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#passthrough-idp-adapter"></a>Passthrough IdP Adapter</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>You can now associate authentication sessions with user identities passed through the new Passthrough Identity Provider (IdP) Adapter. By placing the Passthrough IdP Adapter downstream from an IdP connection in a policy tree, you can take advantage of additional capabilities associated with defining a user key. For example, you can use the user key to query or revoke a user’s authentication sessions.</p>
</div>
</div>
<div class="sect3">
<h4 id="kerberos-authentication-and-objectsid"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#kerberos-authentication-and-objectsid"></a>Kerberos authentication and ObjectSID</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>The Kerberos Adapter and the Kerberos Token Processor now return the <code class="codeph">ObjectSID</code> attribute value. Because <code class="codeph">ObjectSID</code> uniquely identifies the user in Active Directory, leveraging it helps streamline the <strong class="uicontrol">Attribute Source &amp; Lookup</strong> configuration.</p>
</div>
</div>
<div class="sect3">
<h4 id="kerberos-authentication-and-re-authentication"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#kerberos-authentication-and-re-authentication"></a>Kerberos authentication and re-authentication</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>You can configure the Kerberos Adapter to fail when the service provider asks for re-authentication by including <code class="codeph">ForceAuthn=true</code> (SAML 2.0) or <code class="codeph">prompt=login</code> (OpenID Connect) in their authentication requests. For example, suppose user interactions are required when the partners ask for re-authentication. In that case, you can add the HTML Form Adapter to the <strong class="uicontrol">Fail</strong> policy path of the Kerberos Adapter.</p>
</div>
</div>
<div class="sect3">
<h4 id="more-error-handling-options"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#more-error-handling-options"></a>More error handling options</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>You now can configure individual authentication policies to handle authentication failures locally without redirecting to the service providers or returning error messages to the OAuth clients. This flexibility addresses the scenario where an IdP-oriented end-user experience is desirable.</p>
</li>
<li>
<p>PingFederate now includes error results from issuance criteria in error responses. Partners can use the error results to resolve issues as needed. If the invoked policy is configured to handle failures locally, you can do the same to improve the end-user experience.</p>
</li>
<li>
<p>You can now optionally configure the HTML Form Adapter not to return control to PingFederate when an account lockout occurs. Instead, PingFederate returns a “please try again later” message to the browser or the authentication API application.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="extended-properties-for-end-user-interactions"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#extended-properties-for-end-user-interactions"></a>Extended properties for end-user interactions</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>You can now leverage extended properties in Velocity templates when customizing template-driven end-user interactions. You can reference extended properties in the templates instead of creating multiple <code class="codeph">If</code>/<code class="codeph">ElseIf</code>/<code class="codeph">Else</code> directives, significantly reducing the initial effort. New and updated experiences can be inherited from extended property values from the OAuth client records and Browser SSO connections, eliminating most of the maintenance costs. PingFederate also passes extended property values to authentication API applications. As a result, application developers who create and maintain end-user UX for customer identities will benefit from this new enhancement.</p>
</div>
</div>
<div class="sect3">
<h4 id="better-documentation-in-velocity-templates"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#better-documentation-in-velocity-templates"></a>Better documentation in Velocity templates</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>We’ve also improved inline documentation in our Velocity templates. Moving forward, we will maintain variable names and their definitions consistently to communicate changes, such as introducing new variables.</p>
</div>
</div>
<div class="sect3">
<h4 id="enhancements-in-thales-hsm-integration"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#enhancements-in-thales-hsm-integration"></a>Enhancements in Thales HSM integration</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>Both Java 11 and 8 environments are supported when integrating with Thales Luna Cloud Hardware Security Module (HSM) Services or Luna Network HSMs. For more information about Thales Luna HSM Client, see the <a href="https://thalesdocs.com/dpod/services/luna_cloud_hsm/extern/client_guides/Content/CRN/Luna/client/10-4-1.htm" target="_blank" rel="noopener">Luna Cloud HSM Service Client Guide</a> and <a href="https://thalesdocs.com/gphsm/luna/7/docs/network/Content/CRN/Luna/client/10-4-0.htm" target="_blank" rel="noopener">Luna Network HSM Documentation Archive</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="secondary-signing-certificate"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#secondary-signing-certificate"></a>Secondary signing certificate</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>You can now add a secondary signing certificate to your connections. If configured, PingFederate includes it in both the metadata exports and the metadata URL responses. This flexibility allows you to notify your partners about upcoming changes more easily through metadata.</p>
</div>
</div>
<div class="sect3">
<h4 id="administrative-api-improvements"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#administrative-api-improvements"></a>Administrative API improvements</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>We improved the PingFederate administrative API to manage the following configurations:</p>
</div>
<div class="ulist">
<ul>
<li>
<p>JIT provisioning settings in IdP connections</p>
</li>
<li>
<p><strong>System &gt; Data &amp; Credential Stores &gt; Identity Store Provisioners</strong></p>
</li>
<li>
<p><strong>System &gt; Server &gt; General Settings</strong></p>
</li>
<li>
<p><strong>System &gt; Server &gt; WS-Trust Settings</strong></p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="other-improvements-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#other-improvements-4"></a>Other improvements</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>We significantly improved our metrics exposed through HTTP (at the heartbeat endpoint) and JMX to help you detect and diagnose performance issues. Both channels include HTTP response code counts, data source response time statistics, and Jetty queue size information; these metrics help troubleshoot latency issues associated with datastores or traffic volume.</p>
</li>
<li>
<p>PingFederate now uses OCSP to obtain certificate revocation status by default on new installations. As part of this enhancement, PingFederate uses the OCSP responder URL provided in the certificate first, followed by the now optional Default OCSP Responder URL, and lastly, CRL, making the certificate validation process more efficient.</p>
</li>
<li>
<p>The administrative console now provides guidance when you attempt to import a configuration archive obtained from a different version of PingFederate.</p>
</li>
<li>
<p>PingFederate 11.1 supports Amazon IAM roles for service accounts, which increases security posture with credential isolation and auditability.</p>
</li>
<li>
<p>PingOne Verify is now part of the PingFederate distribution <code class="filepath">.zip</code> file and Windows installer.</p>
</li>
<li>
<p>We also updated the following bundled components and third-party dependencies:</p>
<div class="ulist">
<ul>
<li>
<p>PingID Integration Kit 2.17</p>
</li>
<li>
<p>PingOne Fraud Integration Kit 1.0</p>
</li>
<li>
<p>PingOne Protect Integration Kit 1.2</p>
</li>
<li>
<p>Jackson-Databind 2.12.7</p>
</li>
<li>
<p>Log4j2 2.17.2</p>
</li>
<li>
<p>Spring Framework 5.3.20</p>
</li>
</ul>
</div>
</li>
</ul>
</div>
</div>
</div>
<div class="sect2">
<h3 id="resolved-issues-83"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-83"></a>Resolved Issues</h3>
<div class="sect3">
<h4 id="h2-database-engine-upgrade"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#h2-database-engine-upgrade"></a>H2 database engine upgrade</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-21198</span></p>
</div>
<div class="paragraph">
<p>Upgraded the H2 database engine to version 2.1.210.</p>
</div>
</div>
<div class="sect3">
<h4 id="a-username-in-the-url-during-change-password-flows"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#a-username-in-the-url-during-change-password-flows"></a>A username in the URL during change password flows</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-24501</span></p>
</div>
<div class="paragraph">
<p>The username no longer appears in the URL during change password flows.</p>
</div>
</div>
<div class="sect3">
<h4 id="guava-upgrade"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#guava-upgrade"></a>Guava upgrade</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-28932</span></p>
</div>
<div class="paragraph">
<p>Upgraded the Guava dependency to version 30.1.1.</p>
</div>
</div>
<div class="sect3">
<h4 id="oauth-client-issuer-dn"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oauth-client-issuer-dn"></a>OAuth client Issuer DN</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-29368</span></p>
</div>
<div class="paragraph">
<p>If the administrative API was used to create an OAuth client that has the Client Certificate authentication type, and the client’s Issuer DN does not have a normalized DN value, the administrative console’s <strong class="wintitle">Client</strong> window no longer fails to show the Issuer DN as the default value. This issue didn’t affect runtime behavior.</p>
</div>
</div>
<div class="sect3">
<h4 id="time-stamp-for-last-update"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#time-stamp-for-last-update"></a>Time stamp for last update</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-29761</span></p>
</div>
<div class="paragraph">
<p>When a user record in a datastore mistakenly has a future date for the last update time, PingFederate no longer uses that date as the value of <code class="codeph">attrib_last_timestamp</code> in the <code class="codeph">channel_variable</code> table. Instead, PingFederate sets the value to the maximum time stamp that is not in the future.</p>
</div>
</div>
<div class="sect3">
<h4 id="number-and-boolean-data-types-in-json-responses-from-rest-api-data-source-lookups"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#number-and-boolean-data-types-in-json-responses-from-rest-api-data-source-lookups"></a>Number and Boolean data types in JSON responses from REST API data source lookups</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-29835</span></p>
</div>
<div class="paragraph">
<p>The JSON response from REST API data source lookups now retains number and Boolean data types instead of converting them to strings.</p>
</div>
</div>
<div class="sect3">
<h4 id="notyetconnectedexception-warning-messages-from-jgroup-in-the-server-log"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#notyetconnectedexception-warning-messages-from-jgroup-in-the-server-log"></a><code class="msgph">NotYetConnectedException</code> warning messages from JGroup in the <code class="filepath">server.log</code></h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-30075</span></p>
</div>
<div class="paragraph">
<p>Resolved an issue that caused the <code class="msgph">NotYetConnectedException</code> warning message to repeatedly appear in the <code class="filepath">server.log</code> when using AWS_PING for dynamic cluster discovery.</p>
</div>
</div>
<div class="sect3">
<h4 id="matching-oauth-clients-redirection-uris"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#matching-oauth-clients-redirection-uris"></a>Matching OAuth client’s redirection URIs</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-30146</span></p>
</div>
<div class="paragraph">
<p>If the OAuth client’s redirection URI contains a wild card in the authority part of the URI, and the <code class="parmname">redirect_uri</code> parameter of the token request contains userinfo in the authority part, then PingFederate will no longer consider the redirection URI a match.</p>
</div>
</div>
<div class="sect3">
<h4 id="potential-security-vulnerability-14"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#potential-security-vulnerability-14"></a>Potential security vulnerability</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-30255</span></p>
</div>
<div class="paragraph">
<p>Resolved a potential security vulnerability.</p>
</div>
</div>
<div class="sect3">
<h4 id="logging-invalid-assertion-errors"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#logging-invalid-assertion-errors"></a>Logging invalid assertion errors</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-30495</span></p>
</div>
<div class="paragraph">
<p>In a specific case, when PingFederate logs an invalid assertion error, the error message no longer fails to include a remark about why the assertion or response is invalid.</p>
</div>
</div>
<div class="sect3">
<h4 id="null-pointer-exception-in-authentication-api-password-reset-flow"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#null-pointer-exception-in-authentication-api-password-reset-flow"></a>Null pointer exception in authentication API password reset flow</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-30558</span></p>
</div>
<div class="paragraph">
<p>When an OAuth client is performing a password reset through the authentication API, if PingFederate does not find any session attributes, now PingFederate logs an error state instead of a null pointer exception.</p>
</div>
</div>
<div class="sect3">
<h4 id="determining-authentication-instants-for-flows"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#determining-authentication-instants-for-flows"></a>Determining authentication instants for flows</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-30770</span></p>
</div>
<div class="paragraph">
<p>Resolved an issue that prevented PingFederate from correctly determining the authentication instant for the flow when the initial OIDC authorization request specifies a max_age, the flow falls through to legacy authentication source selection (policies are disabled or no policy applies), and the user chooses an upstream OIDC IdP connection.</p>
</div>
</div>
<div class="sect3">
<h4 id="templates-for-pingone-mfa-1-6-1"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#templates-for-pingone-mfa-1-6-1"></a>Templates for PingOne MFA 1.6.1</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-30806</span>
<span class="ping_product">PingOne MFA</span></p>
</div>
<div class="paragraph">
<p>PingFederate now includes all the templates for PingOne MFA 1.6.1.</p>
</div>
</div>
<div class="sect3">
<h4 id="dependency-errors-for-saml-token-processors-and-generators"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#dependency-errors-for-saml-token-processors-and-generators"></a>Dependency errors for SAML token processors and generators</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-31054</span></p>
</div>
<div class="paragraph">
<p>When saving SAML token processors or generators, PingFederate now correctly handles dependency errors caused by misconfigured settings on the <strong class="wintitle">Protocol Settings</strong> window’s <strong class="uicontrol">Federation Info</strong> tab.</p>
</div>
</div>
<div class="sect3">
<h4 id="preserving-the-order-of-map-type-configurations"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#preserving-the-order-of-map-type-configurations"></a>Preserving the order of map type configurations</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-31145</span></p>
</div>
<div class="paragraph">
<p>Now PingFederate preserves the order of map type configurations under <code class="filepath"><em class="varname">&lt;pf_install&gt;</em>/pingfederate/server/default/data/config-store</code> when performing a bulk export or a GET operation at the <code class="filepath">/configStore</code> administrative API endpoint.</p>
</div>
</div>
<div class="sect3">
<h4 id="warning-about-using-the-administrative-console-in-multiple-tabs"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#warning-about-using-the-administrative-console-in-multiple-tabs"></a>Warning about using the administrative console in multiple tabs</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-31280</span></p>
</div>
<div class="paragraph">
<p>Now if you use the PingFederate administrative console in multiple tabs on one browser, it warns you that doing so might cause inconsistent behavior which could corrupt its configuration.</p>
</div>
</div>
<div class="sect3">
<h4 id="saving-authorization-server-settings-overwrites-scope-whitelist"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#saving-authorization-server-settings-overwrites-scope-whitelist"></a>Saving authorization server settings overwrites scope.whitelist</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-31304</span></p>
</div>
<div class="paragraph">
<p>Resolved an issue that caused PingFederate to overwrite the <code class="codeph">scope.whitelist</code> in the <code class="filepath">\data\config-store\org.sourceid.oauth20.domain.AuthzServerManagerImpl.xml</code> file when you save the authorization server settings.</p>
</div>
</div>
<div class="sect3">
<h4 id="oauth-client-ids-added-to-admin-log-entries"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oauth-client-ids-added-to-admin-log-entries"></a>OAuth client IDs added to admin.log entries</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-31561</span></p>
</div>
<div class="paragraph">
<p>Now OAuth client MODIFY, CREATE, and DELETE event log entries in the <code class="filepath">admin.log</code> include the client ID.</p>
</div>
</div>
<div class="sect3">
<h4 id="honoring-the-property-for-maximum-http-request-body-size"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#honoring-the-property-for-maximum-http-request-body-size"></a>Honoring the property for maximum HTTP request body size</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-31575</span></p>
</div>
<div class="paragraph">
<p>Now PingFederate honors the value of <code class="codeph">http.maxRequestBodySize</code> in the <code class="filepath">run.properties</code> file, which specifies the maximum HTTP request body size of any incoming request to PingFederate’s web services and administrative API.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="known-issues-and-limitations-9"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#known-issues-and-limitations-9"></a>Known issues and limitations</h3>
<div class="sect3">
<h4 id="administrative-console-and-administrative-api-8"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#administrative-console-and-administrative-api-8"></a>Administrative console and administrative API</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>/bulk: Only resource types currently supported by the administrative API are included in the exported data. We don’t intend to introduce administrative API support to the following areas:</p>
<div class="ulist">
<ul>
<li>
<p><a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_configuring_standard_idp_discovery.html" class="xref page">SAML 2.0 IdP Discovery</a></p>
</li>
<li>
<p><a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_affiliationstasklet_affiliationmgmtstate.html" class="xref page">SAML 2.0 SP Affiliation</a></p>
</li>
<li>
<p><a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/help_smsprovidersettingstasklet_smsprovidersettingsstate.html" class="xref page">SMS Provider</a></p>
</li>
</ul>
</div>
</li>
<li>
<p>Previously, the administrative API did not accurately reflect a <strong class="uicontrol">Persistent Grant Max Lifetime</strong> setting of 29 days (or shorter) with the selection of the <strong class="uicontrol">Grants Do Not Timeout Due To Inactivity</strong> option. As a result, if you have configured such OAuth authorization server settings and have generated a bulk export in version 10.0 through 10.0.2, we recommend that you re-generate a new bulk export after upgrading to version 10.0.3 (or a more recent version). The newly exported data does not contain the aforementioned flaw, and you can safely import it to version 10.0.3 (or a more recent version).</p>
</li>
<li>
<p>When enabling mutual TLS certificate-based authentication, administrators often configure a list of acceptable client certificate issuers. When you use a browser to access the console or the administrative API documentation, PingFederate returns to the browser the list of acceptable issuers as part of the TLS handshake. If the browser’s client certificate store contains multiple client certificates, the browser often presents you only the certificates whose issuer matches one of the acceptable issuers. However, when PingFederate runs in a Java 11 environment, Chrome presents you all its configured client certificates, regardless of whether the issuer matches one of the acceptable issuers or not.</p>
</li>
<li>
<p>Prior to toggling the status of a connection with the administrative API, you must ensure that any expired certificates or no longer available attributes are replaced with valid certificates or attributes; otherwise, the update request fails.</p>
</li>
<li>
<p>When creating or updating a child instance of a hierarchical plugin, the administrative API retains objects with an <code class="codeph">"inherited": false</code> name/value pair (or without such name/value pair altogether), ignores those with a value of <code class="codeph">true</code>, and returns a 200 HTTP status code. No error messages are returned for the ignored objects.</p>
</li>
<li>
<p>Using the browser’s navigation mechanisms (for example, the <strong class="uicontrol">Back</strong> button) causes inconsistent behavior in the administrative console. Use the navigation buttons provided at the bottom of windows in the PingFederate console.</p>
</li>
<li>
<p>Using the PingFederate console in multiple tabs on one browser might cause inconsistent behavior which could corrupt its configuration.</p>
</li>
<li>
<p>If authenticated to the PingFederate administrative console using certificate authentication, a session that has timed out might not appear to behave as expected. Normally (when using password authentication), when a session has timed out and a user attempts some action in the console, the browser is redirected to the sign-on page, and then back to the administrative console after authentication is complete. Similar behavior applies for certificate authentication, in principle. However, because the browser might automatically resubmit the certificate for authentication, the browser might redirect to the administrative console and not the sign on page.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="tlsv1-3-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#tlsv1-3-4"></a>TLSv1.3</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>For Java versions that don’t support TLSv1.3 (meaning versions earlier than 8u261), PingFederate fails on start up with a <code class="codeph">NoSuchAlgorithmException</code> exception. To resolve this error, remove <code class="codeph">TLSv1.3</code> from the following settings in the <code class="filepath">run.properties</code> file:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><code class="parmname">pf.tls.client.protocols</code></p>
</li>
<li>
<p><code class="parmname">pf.tls.runtime.server.protocols</code></p>
</li>
<li>
<p><code class="parmname">pf.tls.admin.server.protocols</code></p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="tls-cipher-suite-customization-8"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#tls-cipher-suite-customization-8"></a>TLS cipher suite customization</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>PingFederate’s TLS cipher suites can be customized by modifying <code class="filepath">com.pingidentity.crypto.SunJCEManager.xml</code> (or a similarly-named file if BCFIPS or a hardware security module (HSM) is configured). After updating the file and replicating, all cluster nodes must be restarted for the change to take effect.</p>
</div>
</div>
<div class="sect3">
<h4 id="java-8"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#java-8"></a>Java</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>As of PingFederate 11.1, BC-FIPS and HSMs are not supported when using Java 17.</p>
</li>
<li>
<p>Updating Java version 8 to version 11 results in an error when PingFederate is already installed and running. To work around this issue, uninstall and reinstall the PingFederate Windows service by running the <code class="filepath">UninstallPingFederateService.bat</code> and <code class="filepath">InstallPingFederateService.bat</code> files located in <code class="filepath"><em class="varname">&lt;pf_install&gt;</em>/pingfederate/sbin/wrapper</code>.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="hardware-security-modules-hsm"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#hardware-security-modules-hsm"></a>Hardware security modules (HSM)</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>For Entrust HSMs, it is not possible to use an elliptic curve (EC) certificate as an SSL server certificate.</p>
</li>
<li>
<p>For Entrust HSMs, PingFederate must be deployed with Oracle Server JRE 8 or Amazon Corretto 8.</p>
</li>
<li>
<p>For keys stored in AWS CloudHSMs, JWT token signing fails when using RSASSA-PSS SHA-512.</p>
</li>
<li>
<p>For keys stored in Thales HSMs, JWT token decryption fails when using RSAES OAEP with AES-CBC-192 or AES-CBC-256. This issue only arises if PingFederate is configured with static OAuth and OpenID Connect keys and is consuming a token encrypted with one of these keys.</p>
</li>
<li>
<p>When PingFederate is configured in hybrid mode with a Thales HSM, it is not possible to export a locally-stored EC key pair.</p>
</li>
<li>
<p>When PingFederate is configured in hybrid mode with a Thales HSM, JWT token decryption using ECDH-ES may fail. This issue only arises if PingFederate is configured with static OAuth and OpenID Connect keys, a static key is stored locally, and PingFederate is consuming a token encrypted with this key.</p>
</li>
<li>
<p>TLS 1.3 is not currently supported with any HSM.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="sso-and-slo-8"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#sso-and-slo-8"></a>SSO and SLO</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>When consuming SAML metadata, PingFederate does not report an error when neither the <code class="parmname">validUntil</code> nor the <code class="parmname">cacheDuration</code> attribute is included in the metadata. Note that PingFederate does reject expired SAML metadata as indicated by the <code class="parmname">validUntil</code> attribute value, if it is provided.</p>
</li>
<li>
<p>The anchored-certificate trust model cannot be used with the Single log off (SLO) redirect binding because the certificate cannot be included with the logout request.</p>
</li>
<li>
<p>If an IdP connection is configured for multiple virtual server IDs, PingFederate will always use the default virtual server ID for IdP Discovery during an SP-initiated SSO event.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="composite-adapter-configuration-8"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#composite-adapter-configuration-8"></a>Composite Adapter configuration</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>SLO is not supported when users are authenticated through a Composite Adapter instance that contains another instance of the Composite Adapter.</p>
</div>
</div>
<div class="sect3">
<h4 id="self-service-password-reset-8"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#self-service-password-reset-8"></a>Self-service password reset</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>Passwords can be reset for Microsoft Active Directory user accounts without the permission to change password.</p>
</div>
</div>
<div class="sect3">
<h4 id="oauth-8"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oauth-8"></a>OAuth</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>PingFederate does not support a case-sensitive naming convention for OAuth client ID values when client records are stored in a directory server. For example, after creating a client with an ID value of <code class="codeph">sampleClient</code>, PingFederate does not allow the creation of another client with an ID value of <code class="codeph">SampleClient</code>.</p>
</div>
<div class="paragraph">
<p>Although it’s possible to create clients using the same ID values with different casings when client records are stored in XML files, a database server, or custom storage, we recommend not doing so to avoid potential record migration issues.</p>
</div>
</div>
<div class="sect3">
<h4 id="customer-identity-and-access-management-8"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#customer-identity-and-access-management-8"></a>Customer identity and access management</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>Some browsers display a date-picker user interface for fields that have been designed for date-specific inputs. Some browsers do not. If one or more date-specific fields are defined on the registration page or the profile management page (or both), end users must enter the dates manually if their browsers do not display a date-picker user interface for those fields.</p>
</div>
</div>
<div class="sect3">
<h4 id="provisioning-8"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#provisioning-8"></a>Provisioning</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>LDAP referrals return an error and cause provisioning to fail if the <code class="parmname">user</code> or <code class="parmname">group</code> objects are defined at the DC level, and not within an OU or within the Users CN.</p>
</li>
<li>
<p>The <code class="parmname">totalResults</code> value in SCIM responses indicates the number of results returned in the current response, not the total number of estimated results on the LDAP server.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="logging-8"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#logging-8"></a>Logging</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>If a source attribute has been configured for masking in an IdP adapter or IdP connection and the source attribute is mapped to OAuth’s persistent grant <code class="parmname">USER_KEY</code> attribute, the <code class="parmname">USER_KEY</code> attribute will not be masked in the server logs. Other persistent grant attributes will be masked.</p>
</li>
<li>
<p>Even if a source attribute has been configured for masking in an IdP adapter and the source attribute is mapped as the adapter’s unique user key, the user key attribute is not masked in the server or audit logs.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="database-logging-8"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#database-logging-8"></a>Database logging</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>If a source attribute has been configured for masking in an IdP adapter or IdP connection and the source attribute is mapped to OAuth’s persistent grant <code class="parmname">USER_KEY</code> attribute, the <code class="parmname">USER_KEY</code> attribute will not be masked in the server logs. Other persistent grant attributes will be masked.</p>
</li>
<li>
<p>Even if a source attribute has been configured for masking in an IdP adapter and the source attribute is mapped as the adapter’s unique user key, the user key attribute is not masked in the server or audit logs.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="radius-nas-ip-address-8"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#radius-nas-ip-address-8"></a>RADIUS NAS-IP-Address</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>The RADIUS NAS-IP-Address is only included in Access-Request packets when the <code class="codeph">pf.bind.engine.address</code> is set with an IPv4 address. IPv6 is not supported.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="deprecated-features-8"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#deprecated-features-8"></a>Deprecated features</h3>
<div class="sect3">
<h4 id="microsoft-internet-explorer-11-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#microsoft-internet-explorer-11-4"></a>Microsoft Internet Explorer 11</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>Ping Identity commits to deliver the best experience for administrators and users. As we continue to improve our products, we encourage you to migrate off of Microsoft Internet Explorer 11. Starting with PingFederate 11.0, Internet Explorer 11 is no longer included in the PingFederate qualification process for administrators or users. For a list of supported browsers, see <a href="https://docs.pingidentity.com/pingfederate/installing_and_uninstalling_pingfederate/pf_system_requirements.html" class="xref page">System requirements</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="configcopy-tool-connection-management-service-sso-directory-service-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#configcopy-tool-connection-management-service-sso-directory-service-4"></a>Configcopy tool, Connection Management Service, SSO Directory Service</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>As of PingFederate 10.2, these features have been deprecated and will be removed in a future release.</p>
</div>
</div>
<div class="sect3">
<h4 id="oracle-directory-server-enterprise-edition-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oracle-directory-server-enterprise-edition-4"></a>Oracle Directory Server Enterprise Edition</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>As Oracle ended its Premier Support for Oracle Directory Server Enterprise Edition (ODSEE 11g) in December 2019, we no longer include ODSEE as part of the PingFederate qualification process (starting with PingFederate 10.2). We continue to qualify against <a href="https://www.oracle.com/security/identity-management/directory-services/" target="_blank" rel="noopener">Oracle Unified Directory</a> and other supported directory servers. For a full list, see <a href="https://docs.pingidentity.com/pingfederate/installing_and_uninstalling_pingfederate/pf_system_requirements.html" class="xref page">System requirements</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="snmp-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#snmp-4"></a>SNMP</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>Starting with PingFederate 10.2, monitoring and reporting through the Simple Network Management Protocol (SNMP) has been removed.</p>
</div>
</div>
<div class="sect3">
<h4 id="roles-and-protocols-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#roles-and-protocols-4"></a>Roles and protocols</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>Starting with PingFederate 10.1, roles and protocols are always enabled and no longer configurable through the administrative console and API.</p>
</div>
</div>
<div class="sect3">
<h4 id="s3_ping-discovery-protocol-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#s3_ping-discovery-protocol-4"></a>S3_PING discovery protocol</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>Starting with PingFederate 10.1, the S3_PING discovery protocol has been deprecated. Customers running on AWS infrastructure should instead use NATIVE_S3_PING.</p>
</div>
</div>
<div class="sect3">
<h4 id="red-hat-enterprise-linux-install-script-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#red-hat-enterprise-linux-install-script-4"></a>Red Hat Enterprise Linux install script</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>Starting with PingFederate 10.0, the Red Hat Enterprise Linux install script is no longer available. To install PingFederate 10.0 for Linux, you must download and extract the product distribution <code class="filepath">.zip</code> file.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.0.10 - April 2024]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-0-10-april-2024</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-0-10-april-2024</guid>
            <pubDate>Thu, 11 Apr 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-84"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-84"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="rest-datastore-security-vulnerability-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#rest-datastore-security-vulnerability-5"></a>Rest datastore security vulnerability</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-34720</span></p>
</div>
<div class="paragraph">
<p>Fixed a JSON injection vulnerability in REST datastores described in security advisory <a href="https://support.pingidentity.com/s/article/SECADV044-PingFederate-Security-Rollup" target="_blank" rel="noopener">SECADV044</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="runtime-nodes-security-vulnerability-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#runtime-nodes-security-vulnerability-5"></a>Runtime nodes security vulnerability</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-34896</span></p>
</div>
<div class="paragraph">
<p>Fixed a path traversal vulnerability in Runtime nodes described in security advisory <a href="https://support.pingidentity.com/s/article/SECADV044-PingFederate-Security-Rollup" target="_blank" rel="noopener">SECADV044</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="openid-connect-policy-management-editor-security-vulnerability-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#openid-connect-policy-management-editor-security-vulnerability-5"></a>OpenID Connect policy management editor security vulnerability</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-35081</span></p>
</div>
<div class="paragraph">
<p>Fixed a Cross-Site Scripting vulnerability in the OpenID Connect Policy Management Editor described in security advisory <a href="https://support.pingidentity.com/s/article/SECADV044-PingFederate-Security-Rollup" target="_blank" rel="noopener">SECADV044</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="slow-log-consumption-affects-performance-4"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#slow-log-consumption-affects-performance-4"></a>Slow log consumption affects performance</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33368</span></p>
</div>
<div class="paragraph">
<p>Fixed a defect that caused performance issues for PingFederate when third-party logging services were slow to consume logging events.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.0.9 (December 2023)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-0-9-december-2023</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-0-9-december-2023</guid>
            <pubDate>Tue, 26 Dec 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-85"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-85"></a>Resolved issues</h3>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-29706</span></p>
</div>
<div class="paragraph">
<p>Fixed a Server-Side Request Forgery vulnerability in the Initial Setup Wizard described in security advisory <a href="https://support.pingidentity.com/s/article/SECADV041-PingFederate-Server-Side-Request-Forgery" target="_blank" rel="noopener">SECADV041</a>.</p>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.0.8 (August 2023)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-0-8-august-2023</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-0-8-august-2023</guid>
            <pubDate>Thu, 03 Aug 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-86"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-86"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="logging-validation-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#logging-validation-3"></a>Logging validation</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34017</span></p>
</div>
<div class="paragraph">
<p>We’ve improved logging validation.</p>
</div>
</div>
<div class="sect3">
<h4 id="potential-security-vulnerability-15"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#potential-security-vulnerability-15"></a>Potential security vulnerability</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33449</span></p>
</div>
<div class="paragraph">
<p>We’ve resolved a potential security vulnerability that is described in security advisory <a href="https://support.pingidentity.com/s/article/SECADV037-PingFederate-Security-Rollup-Denial-of-Service-Information-Disclosure-Authentication-Bypass-Vulnerabilities" target="_blank" rel="noopener">SECADV037</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="potential-security-vulnerability-16"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#potential-security-vulnerability-16"></a>Potential security vulnerability</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-34017</span></p>
</div>
<div class="paragraph">
<p>We’ve resolved a potential security vulnerability that is described in security advisory <a href="https://support.pingidentity.com/s/article/SECADV037-PingFederate-Security-Rollup-Denial-of-Service-Information-Disclosure-Authentication-Bypass-Vulnerabilities" target="_blank" rel="noopener">SECADV037</a>.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.0.7 (February 2023)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-0-7-february-2023</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-0-7-february-2023</guid>
            <pubDate>Fri, 10 Feb 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-87"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-87"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="server-log-warnings-3"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#server-log-warnings-3"></a>Server log warnings</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-33037</span></p>
</div>
<div class="paragraph">
<p>We’ve added a warning to server logs if the <em class="varname">ds-pwp-state-json</em> attribute is not present in PingDirectory’s LDAP Response. This warning appears in the log every time a user interacts with the profile management page. Please enable this attribute to adhere to PingDirectory’s security configuration best practices. PingDirectory version 8.1 and later supports this attribute, and customers running older versions are encouraged to upgrade to a supported version as soon as possible.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.0.6 (February 2023)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-0-6-february-2023</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-0-6-february-2023</guid>
            <pubDate>Fri, 10 Feb 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-88"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-88"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="potential-security-vulnerability-17"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#potential-security-vulnerability-17"></a>Potential security vulnerability</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32805</span></p>
</div>
<div class="paragraph">
<p>We’ve resolved a potential security vulnerability that is described in security advisory <a href="https://support.pingidentity.com/s/article/SECADV033-Cross-Site-Request-Forgery-on-PingFederate-Local-Identity-Profiles-Endpoint" target="_blank" rel="noopener">SECADV033</a>.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.0.5 (October 2022)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-0-5-october-2022</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-0-5-october-2022</guid>
            <pubDate>Mon, 10 Oct 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-89"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-89"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="ipv6-address-issue"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#ipv6-address-issue"></a>IPV6 address issue</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-31735</span></p>
</div>
<div class="paragraph">
<p>Resolved an issue that sometimes occurred when IPV6 addresses were specified in the <strong class="uicontrol">HTTP Header for Client IP Addresses</strong> field on the <strong class="wintitle">Incoming Proxy Settings</strong> window.</p>
</div>
</div>
<div class="sect3">
<h4 id="administrative-console-login"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#administrative-console-login"></a>Administrative console login</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32001</span></p>
</div>
<div class="paragraph">
<p>PingFederate now recovers from initial connection failure when logging into the administrative console using external LDAP authentication.</p>
</div>
</div>
<div class="sect3">
<h4 id="user-registration-defect-resolution"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#user-registration-defect-resolution"></a>User registration defect resolution</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-32241</span></p>
</div>
<div class="paragraph">
<p>During user registration, PingFederate now sends all passwords to PingDirectory, resolving an issue where passwords consisting of only spaces would not properly register a PingDirectory password.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.0.4 (August 2022)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-0-4-august-2022</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-0-4-august-2022</guid>
            <pubDate>Thu, 11 Aug 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-90"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-90"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="masterkeyencryptor-and-cluster-replication"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#masterkeyencryptor-and-cluster-replication"></a>MasterKeyEncryptor and cluster replication</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-31795</span></p>
</div>
<div class="paragraph">
<p>When PingFederate uses a custom MasterKeyEncryptor that relies on an SSL call to an external service, cluster replication no longer causes cascading failures because PingFederate cannot open Java key store files.</p>
</div>
</div>
<div class="sect3">
<h4 id="rule-matching-for-fragment-nodes-and-nullpointerexception"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#rule-matching-for-fragment-nodes-and-nullpointerexception"></a>Rule matching for fragment nodes and NullPointerException</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-31929</span></p>
</div>
<div class="paragraph">
<p>When using rule matching for fragment nodes, PingFederate no longer raises a NullPointerException (NPE) if a fragment fails.</p>
</div>
</div>
<div class="sect3">
<h4 id="zero-byte-archives"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#zero-byte-archives"></a>Zero byte archives</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-31966</span></p>
</div>
<div class="paragraph">
<p>Resolved an issue that caused PingFederate to generate a zero byte archive when it couldn’t read a file in the <code class="filepath"><em class="varname">&lt;pf_install&gt;</em>/pingfederate/server/default/data</code> directory.</p>
</div>
</div>
<div class="sect3">
<h4 id="jwt-access-token-lifetimes"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#jwt-access-token-lifetimes"></a>JWT access token lifetimes</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-31989</span></p>
</div>
<div class="paragraph">
<p>When using centralized and dynamically rotating keys for OAuth and OpenID Connect, PingFederate now prevents you from setting the JWT access token lifetime to be longer than the <code class="codeph">dynamic-rotation-period-in-days</code> specified in <code class="filepath"><em class="varname">&lt;pf_install&gt;</em>/pingfederate/server/default/data/config-store/jwks-endpoint-configuration.xml</code>.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.0.3 (May 2022)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-0-3-may-2022</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-0-3-may-2022</guid>
            <pubDate>Wed, 04 May 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="resolved-issues-91"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-91"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="intermittent-failure-to-respond-after-restart-caused-by-ldap-sdk"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#intermittent-failure-to-respond-after-restart-caused-by-ldap-sdk"></a>Intermittent failure to respond after restart caused by LDAP SDK</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF30776</span></p>
</div>
<div class="paragraph">
<p>To resolve an issue in which PingFederate occasionally stopped responding after a restart, the UnboundID LDAP SDK for Java was updated to version 6.0.4.</p>
</div>
</div>
<div class="sect3">
<h4 id="tls-1-3-for-outbound-connections"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#tls-1-3-for-outbound-connections"></a>TLS 1.3 for outbound connections</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-31303</span></p>
</div>
<div class="paragraph">
<p>PingFederate now supports TLS 1.3 for outbound connections when running on Java 8 versions 8u261 and newer.</p>
</div>
</div>
<div class="sect3">
<h4 id="updated-spring-framework"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#updated-spring-framework"></a>Updated Spring Framework</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_ticket">PF-31169</span></p>
</div>
<div class="paragraph">
<p>Updated Spring Framework to version 5.3.18.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.0.2 (March 2022)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-0-2-march-2022</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-0-2-march-2022</guid>
            <pubDate>Wed, 02 Mar 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="new-features-and-enhancements-30"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#new-features-and-enhancements-30"></a>New features and enhancements</h3>
<div class="sect3">
<h4 id="updated-pingone-mfa-adapter"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#updated-pingone-mfa-adapter"></a>Updated PingOne MFA adapter</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_product">PingOne MFA</span></p>
</div>
<div class="paragraph">
<p>Updated the bundled PingOne MFA adapter to version 1.6.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="resolved-issues-92"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-92"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="ldap-connections"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#ldap-connections"></a>LDAP connections</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-30804</span></p>
</div>
<div class="paragraph">
<p>Resolved an issue that caused LDAP connections to periodically fail during provisioning.</p>
</div>
</div>
<div class="sect3">
<h4 id="bulk-export"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#bulk-export"></a>Bulk export</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-30863</span></p>
</div>
<div class="paragraph">
<p>Bulk export no longer fails to include all XML OAuth clients in the response payload.</p>
</div>
</div>
<div class="sect3">
<h4 id="single-sign-on-from-browsers-on-ios"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#single-sign-on-from-browsers-on-ios"></a>Single sign-on from browsers on iOS</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-31057</span></p>
</div>
<div class="paragraph">
<p>Resolved an issue that caused single sign-on from browsers on iOS to fail when an authentication policy terminates on Kerberos Adapter fallback that has an existing session.</p>
</div>
</div>
<div class="sect3">
<h4 id="ncipher-mode"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#ncipher-mode"></a>nCipher mode</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-31064</span></p>
</div>
<div class="paragraph">
<p>When running PingFederate in nCipher mode, now the administrative API successfully generates elliptic curve (EC) keys when the optional signatureAlgorithm field is not provided.</p>
</div>
</div>
<div class="sect3">
<h4 id="tls-1-3-for-inbound-connections"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#tls-1-3-for-inbound-connections"></a>TLS 1.3 for inbound connections</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-31112</span></p>
</div>
<div class="paragraph">
<p>PingFederate now supports TLS 1.3 for inbound connections when running on Java 8 versions 8u261 and newer.</p>
</div>
</div>
<div class="sect3">
<h4 id="symantec-vip-adapter"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#symantec-vip-adapter"></a>Symantec VIP Adapter</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-31123</span></p>
</div>
<div class="paragraph">
<p>Resolved an issue that prevented PingFederate from using the Symantec VIP Adapter.</p>
</div>
</div>
<div class="sect3">
<h4 id="ldap-related-performance"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#ldap-related-performance"></a>LDAP-related performance</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-31146</span></p>
</div>
<div class="paragraph">
<p>Resolved an LDAP-related performance issue.</p>
</div>
</div>
<div class="sect3">
<h4 id="signature-verification-for-certificate-revocation-lists"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#signature-verification-for-certificate-revocation-lists"></a>Signature verification for certificate revocation lists</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-31159</span></p>
</div>
<div class="paragraph">
<p>Resolved an issue where signature verification for certificate revocation lists could take more than 10 seconds on Windows. When LDAP-based authentication was enabled in the administrative console, this could prevent administrative users from signing on.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.0.1 (January 2022)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-0-1-january-2022</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-0-1-january-2022</guid>
            <pubDate>Wed, 05 Jan 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="sect2">
<h3 id="new-features-and-enhancements-31"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#new-features-and-enhancements-31"></a>New features and enhancements</h3>
<div class="sect3">
<h4 id="rolling-grace-period-for-refresh-tokens"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#rolling-grace-period-for-refresh-tokens"></a>Rolling grace period for refresh tokens</h4>
<div class="paragraph">
<p><span class="ping_changetype-improved">Improved</span></p>
</div>
<div class="paragraph">
<p>When PingFederate rotates a refresh token, if the client fails to get the new token, now PingFederate can accept the previous token for the short period that you specify with the <strong class="uicontrol">Refresh Token Rolling Grace Period</strong> setting.</p>
</div>
</div>
<div class="sect3">
<h4 id="performance-improvement"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#performance-improvement"></a>Performance improvement</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>Improved performance of the administrative console when a large number of OAuth clients are stored in LDAP or JDBC datastores.</p>
</div>
</div>
<div class="sect3">
<h4 id="url-region-of-the-pingone-home-button"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#url-region-of-the-pingone-home-button"></a>URL region of the PingOne home button</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span>
<span class="ping_product">PingOne</span></p>
</div>
<div class="paragraph">
<p>When configuring the URL of the PingOne home button in the PingFederate administrative console, now <code class="parmname">pf.pingone.admin.url.region</code> in <code class="filepath">run.properties</code> supports <code class="codeph">Canada</code> as a region.</p>
</div>
</div>
<div class="sect3">
<h4 id="aws-cloudhsm-client"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#aws-cloudhsm-client"></a>AWS CloudHSM client</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>PingFederate can be successfully integrated with AWS CloudHSM client version 3.4.4.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="resolved-issues-93"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-93"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="resolved-a-potential-security-vulnerability"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-a-potential-security-vulnerability"></a>Resolved a potential security vulnerability</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-30450</span></p>
</div>
<div class="paragraph">
<p>Resolved a potential security vulnerability that is described in security bulletin <a href="https://support.pingidentity.com/s/article/SECBL021-PingFederate-Password-Reset-via-Authentication-API-Mishandling" target="_blank" rel="noopener">SECBL021</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="updated-apache-log4j2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#updated-apache-log4j2"></a>Updated Apache Log4j2</h4>
<div class="paragraph">
<p><span class="ping_changetype-security">Security</span>
<span class="ping_ticket">PF-30536</span></p>
</div>
<div class="paragraph">
<p>Resolved a potential security vulnerability by updating Apache Log4j2 to version 2.17.1.</p>
</div>
</div>
<div class="sect3">
<h4 id="authenticating-pingdirectory-users"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#authenticating-pingdirectory-users"></a>Authenticating PingDirectory users</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-30557</span>
<span class="ping_product">PingDirectory</span></p>
</div>
<div class="paragraph">
<p>Resolved an issue that allowed PingDirectory users to authenticate with expired passwords.</p>
</div>
</div>
<div class="sect3">
<h4 id="certificate-revocation-list-checks"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#certificate-revocation-list-checks"></a>Certificate revocation list checks</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-30637</span></p>
</div>
<div class="paragraph">
<p>Resolved an issue that caused certificate revocation list (CRL) checks to return "<code class="msgph">issuer not found in trusted CAs store</code>" even though the issuer certificate is present.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[PingFederate 11.0 (December 2021)]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-0-december-2021</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingfederate-11-0-december-2021</guid>
            <pubDate>Wed, 01 Dec 2021 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="paragraph">
<p>New features and improvements in PingFederate 11.0.</p>
</div>
<div class="sect2">
<h3 id="new-features-and-enhancements-32"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#new-features-and-enhancements-32"></a>New features and enhancements</h3>
<div class="sect3">
<h4 id="pingone-ldap-gateway-datastore"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingone-ldap-gateway-datastore"></a>PingOne LDAP Gateway datastore</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_product">PingOne</span></p>
</div>
<div class="paragraph">
<p>PingFederate in the cloud can now connect to on-premise directory servers through the <a href="https://docs.pingidentity.com/pingone/integrations/p1_ldap_gateways.html">PingOne LDAP gateway</a>. This new capability reduces the complexity of moving to the cloud, while maintaining connectivity to on-premise end-user data.</p>
</div>
</div>
<div class="sect3">
<h4 id="pingone-unified-admin-integration"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#pingone-unified-admin-integration"></a>PingOne unified admin integration</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span>
<span class="ping_product">PingOne</span></p>
</div>
<div class="paragraph">
<p>Administrators can now open the PingOne unified admin from any configuration window in the PingFederate administrative console. To activate the new Home icon, enter the PingOne region and the environment ID in the <code class="filepath">run.properties</code> file.</p>
</div>
</div>
<div class="sect3">
<h4 id="management-of-configuration-encryption-keys"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#management-of-configuration-encryption-keys"></a>Management of configuration encryption keys</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>PingFederate maintains a set of configuration encryption keys to encrypt sensitive configuration information provided by the administrators and decrypt them later as needed. While we continue recommending customers to protect their configuration encryption keys by <a href="https://docs.pingidentity.com/pingfederate/administrators_reference_guide/pf_implement_masterkey_encrypt_aws_kms.html" class="xref page">AWS KMS</a> or custom solutions based on the PingFederate SDK (the <code class="codeph">MasterKeyEncryptor</code> interface), we are introducing two enhancements in this area.</p>
</div>
<div class="ulist">
<ul>
<li>
<p>Key rotatation: Administrators or key-management processes can now insert a new configuration encryption key into the system with one click in the administrative console or a single administrative API request. Once rotated, PingFederate starts using this new encryption key when it needs to encrypt sensitive configuration data.</p>
</li>
<li>
<p>Re-encryption of configuration data: Version 11 also comes with a new <code class="codeph">configkeymgr</code> command-line utility. Administrators can optionally scan, review, re-encrypt, and delete older configuration encryption keys in their systems. Furthermore, administrators can now choose to re-encrypt sensitive information when importing an archive from a different environment; this is most useful when administrators do not want to share configuration encryption keys between the two environments.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="secret-managers"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#secret-managers"></a>Secret Managers</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>The new Secret Managers support allows customers to store certain credentials, such as data store credentials, in external secret management systems and have PingFederate retrieve them as needed. It helps customers comply with internal IT policies or meet and exceed their industry standards. Version 11 integrates out-of-the-box with CyberArk Credential Provider. Customers can also develop custom solutions based on the PingFederate SDK (the <code class="codeph">SecretManager</code> interface), to connect to other secret management systems.</p>
</div>
</div>
<div class="sect3">
<h4 id="fapi-1-advanced-final-certifications"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#fapi-1-advanced-final-certifications"></a>FAPI 1 Advanced Final certifications</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>Ping Identity remains a solid contributor to the financial-grade API initiatives from the OpenID Foundation. We’re proud that PingFederate is a certified implementation of various FAPI 1 Advanced Final profiles, including all profiles under Australia CDR and UK Open Banking and four profiles under Brazil Open Banking. Deploy Open Banking solutions with confidence and rest assured that we will continue to invest in OAuth, OpenID Connect, and FAPI specifications. For more information about OpenID certifications, visit <a href="https://openid.net/certification/#FAPI_OPs" class="bare" target="_blank" rel="noopener">https://openid.net/certification/#FAPI_OPs</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="flexibility-in-id-token-issuance"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#flexibility-in-id-token-issuance"></a>Flexibility in ID token issuance</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>When processing an OpenID Connect hybrid flow, in addition to issuing an ID token from the token endpoint, PingFederate may also return an ID token from the authorization endpoint, depending on the requested response type. Administrators now have the flexibility to separate these two ID token issuances and configure their fulfillment differently. These enhancements allow our customers to comply with the regulatory requirements and open standards set by the Australian CDR and FAPI specifications.</p>
</div>
</div>
<div class="sect3">
<h4 id="encrypted-request-objects"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#encrypted-request-objects"></a>Encrypted request objects</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>PingFederate now supports encrypted request objects that OAuth clients send to its <a href="https://docs.pingidentity.com/pingfederate/developers_reference_guide/pf_authorization_endpoint.html" class="xref page">Authorization endpoint</a> and the <a href="https://docs.pingidentity.com/pingfederate/developers_reference_guide/pf_pushed_authoriz_request_endpoint.html" class="xref page">Pushed authorization requests endpoint</a>. As needed, administrators can make encrypted request objects mandatory. This new capability further secures the confidentiality of authentication request parameters.</p>
</div>
</div>
<div class="sect3">
<h4 id="authorization-server-issuer-identification"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#authorization-server-issuer-identification"></a>Authorization server issuer identification</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>The OAuth 2.0 Authorization Server Issuer Identification <a href="https://datatracker.ietf.org/doc/html/draft-ietf-oauth-iss-auth-resp" target="_blank" rel="noopener">draft specification</a> intends to mitigate the scenario where mix-up attacks are a potential threat to all OAuth clients interacting with multiple authorization servers. As needed, administrators can enable this optional capability.</p>
</div>
</div>
<div class="sect3">
<h4 id="better-private-key-jwt-validation"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#better-private-key-jwt-validation"></a>Better private key JWT validation</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>In the context of OAuth client authentication, when processing private key JWTs from applications, PingFederate now ensures that the issuer (<code class="codeph">iss</code>) claim value matches the client ID. This enhancement removes the need to use issuance criteria to enforce this validation requirement.</p>
</div>
</div>
<div class="sect3">
<h4 id="message-customization-in-oidc-idp-connection"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#message-customization-in-oidc-idp-connection"></a>Message customization in OIDC IdP connection</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>PingFederate 11 can now take the request parameters from the SAML 2.0 SP or the OpenID Connect relying party (OIDC RP) into account when building its OIDC authentication request to the third-party OpenID Provider (OP). This capability allows administrators to selectively configure the values in the outbound OIDC authentication requests if their use cases or the third-party OPs have the need to gather more information from the originating SP or RP.</p>
</div>
</div>
<div class="sect3">
<h4 id="multi-valued-attribute-format"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#multi-valued-attribute-format"></a>Multi-valued attribute format</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>Administrators can optionally indicate that PingFederate should always return an array for an attribute value regardless of whether the attribute contains one or multiple values. This flexibility simplifies the logic required to consume attribute values from access tokens or ID tokens.</p>
</div>
</div>
<div class="sect3">
<h4 id="streamlined-initial-setup-experience"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#streamlined-initial-setup-experience"></a>Streamlined initial setup experience</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>We’re pleased to introduce a brand new initial setup experience, where administrators can finish their initial setup in as little as four steps, rapidly making our rock-solid capabilities available after starting PingFederate for the first time.</p>
</div>
</div>
<div class="sect3">
<h4 id="individual-policy-management-by-api"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#individual-policy-management-by-api"></a>Individual policy management by API</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>Administrators can now focus solely on one policy without including other policies as part of the API request when managing an individual authentication policy through the administrative API. This simplification improves the API experience and eliminates the risk of making unexpected changes in other authentication policies.</p>
</div>
</div>
<div class="sect3">
<h4 id="console-heartbeat"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#console-heartbeat"></a>Console heartbeat</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>Monitoring the status of the console node is now more straightforward with the addition of the <code class="codeph">/pf/heartbeat.ping</code> heartbeat endpoint to the administrative port. Like its runtime counterpart, the administrative heartbeat endpoint is also capable of returning additional information. If administrators want detailed information in the responses, set the <code class="parmname">pf.heartbeat.system.monitoring</code> property to <code class="codeph">true</code> in the <code class="filepath">run.properties</code> file.</p>
</div>
</div>
<div class="sect3">
<h4 id="datastore-enhancements"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#datastore-enhancements"></a>Datastore enhancements</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>We expanded the REST API datastore with HTTP POST support. Administrators can connect to data repositories that prefer or require the HTTP POST method.</p>
</li>
<li>
<p>Administrators can add attribute options in their LDAP directory searches. This enhancement expands what PingFederate can retrieve from the directory servers that support attribute options, PingDirectory being one of them.</p>
</li>
<li>
<p>When configuring an LDAP search filter that uses one or more variables, an administrator can optionally specify default values for them, most useful in the scenarios where these variables may not contain any values at runtime.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="migration-of-templates"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#migration-of-templates"></a>Migration of templates</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>Our upgrade tools now copy customized default templates from the previous installation to the new one. This improvement preserves the end-user experience and branding, making it easier to verify and move forward with version 11 and beyond.</p>
</div>
</div>
<div class="sect3">
<h4 id="new-configuration-for-dynamic-discovery-settings"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#new-configuration-for-dynamic-discovery-settings"></a>New configuration for dynamic discovery settings</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>Previously, administrators could only define dynamic discovery settings to discover cluster membership in the <code class="filepath">server/default/conf/tcp.xml</code> file. Version 11 provides a new configuration file for these settings, <code class="filepath">jgroups.properties</code> in the <code class="filepath">bin</code> directory. This new approach streamlines future upgrade experiences. For new installations, we recommend defining dynamic discovery settings in the <code class="filepath">jgroups.properties</code> file. While upgraded environments will continue to look for dynamic discovery settings from the <code class="filepath">tcp.xml</code> file, we recommend performing a one-time migration to ease the upgrade experiences in the future.</p>
</div>
</div>
<div class="sect3">
<h4 id="email-ownership-verification-by-otp"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#email-ownership-verification-by-otp"></a>Email ownership verification by OTP</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>For customer identities, in addition to email ownership verification by one-time link, administrators can now enable email ownership verification by one-time passcode (OTP). This new option offers a modern verification experience. It also helps customers who prefer not to send hyperlinks via email to their consumers.</p>
</div>
</div>
<div class="sect3">
<h4 id="request-context-to-authentication-api-applications"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#request-context-to-authentication-api-applications"></a>Request context to authentication API applications</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>Administrators can optionally configure PingFederate to pass contextual information, such as the OAuth client ID or tracked HTTP parameters, from the sign-on requests to the authentication API applications. This allows developers to build applications that offer tailored experiences and satisfy branding requirements from their organizations based on contextual information from the sign-on requests.</p>
</div>
</div>
<div class="sect3">
<h4 id="kerberos-authentication-improvement"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#kerberos-authentication-improvement"></a>Kerberos authentication improvement</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>Administrators can now ensure Kerberos authentication remains functional for service tickets associated with older Kerberos service account passwords after updating the <strong class="uicontrol">Domain/Realm Password</strong> field with a new password in PingFederate. This optional capability increases productivity because workforce identities are no longer required to restart their Windows sessions in order to authenticate via Kerberos.</p>
</div>
</div>
<div class="sect3">
<h4 id="contextual-information-in-session-management-api-responses"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#contextual-information-in-session-management-api-responses"></a>Contextual information in Session Management API responses</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="paragraph">
<p>The Session Management API now includes IP address and User-Agent information in its responses. Clients with access to this API can learn more about their users and provide suitable offerings based on this new insight.</p>
</div>
</div>
<div class="sect3">
<h4 id="security-enhancements"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#security-enhancements"></a>Security enhancements</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>PingFederate now supports Amazon EC2 Instance Metadata Service version 2 (IMDSv2) when AWS_PING is the chosen dynamic discovery method. No PingFederate configuration changes are required, and IMDSv1 remains supported.</p>
</li>
<li>
<p>PingFederate now records administrative timed-out events in the administrator audit log (<code class="filepath">admin.log</code>).</p>
</li>
<li>
<p>The <strong class="uicontrol">Change Password</strong> and <strong class="uicontrol">Password Reset</strong> end user-facing pages now time out after 30 minutes. This is the new default behavior for new and upgraded installations. As needed, administrators can configure a different <strong class="uicontrol">Password Update Timeout</strong> value per HTML Form Adapter instance to suit the needs of their organizations.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="other-improvements-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#other-improvements-5"></a>Other improvements</h4>
<div class="paragraph">
<p><span class="ping_changetype-new">New</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>PingFederate now includes HTTP/2 support for inbound requests for better performance.</p>
</li>
<li>
<p>Administrators can optionally configure PingFederate to mask values obtained from tracked parameters in the server log. Look for the <code class="parmname">MaskTrackedParams</code> setting in the <code class="filepath">org.sourceid.saml20.domain.mgmt.impl.TrackedHttpParamManagerImpl.xml</code> file.</p>
</li>
<li>
<p>Administrators are free to enable the refresh token grant type independently on a per-client basis regardless of whether session validation is enabled in any Access Token Managers.</p>
</li>
<li>
<p>Administrators can optionally configure PingFederate to redirect end-users back to the <strong class="uicontrol">Sign On</strong> page after successfully updating their soon-to-expire password as part of their SSO requests.</p>
</li>
<li>
<p>The <strong class="uicontrol">Reuse Existing Persistent Access Grants for Grant Types</strong> authorization server setting is now overridable per client.</p>
</li>
<li>
<p>PingFederate now supports RSAES OAEP using SHA-256 and MGF1 with SHA-256 (RSA-OAEP-256) when minting outbound ID tokens or processing inbound encrypted request objects</p>
</li>
<li>
<p>Administrators can optionally restrict access to the redirectless mode per authentication API application. Additionally, administrators can further limit each application to an OAuth client to improve security around the redirectless mode of the authentication API.</p>
</li>
<li>
<p>We upgraded the framework of our administrative API documentation to Swagger 2.0.</p>
</li>
<li>
<p>PingFederate now preserves line breaks and indentations of OGNL expressions.</p>
</li>
<li>
<p>The following templates now share the following Velocity template variables, which makes branding end-user experiences easier.</p>
<table class="tableblock frame-all grid-all stretch">
<colgroup>
<col style="width: 50%;">
<col style="width: 50%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Templates</th>
<th class="tableblock halign-left valign-top">Variables</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><div class="content"><div class="ulist">
<ul>
<li>
<p><code class="filepath">identifier.first.template.html</code></p>
</li>
<li>
<p><code class="filepath">html.form.login.challenge.template.html</code></p>
</li>
<li>
<p><code class="filepath">html.form.login.template.html</code></p>
</li>
<li>
<p><code class="filepath">html.form.message.template.html</code></p>
</li>
<li>
<p><code class="filepath">html.form.password.expiring.notification.template.html</code></p>
</li>
</ul>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="ulist">
<ul>
<li>
<p><code class="codeph">$client_id</code> - The ID of the OAuth client used by the request</p>
</li>
<li>
<p><code class="codeph">$entityId</code> - The entity ID of the SP connection used by the request</p>
</li>
<li>
<p><code class="codeph">$connectionName</code> - The name of the SP connection used by the request</p>
</li>
<li>
<p><code class="codeph">$baseUrl</code> - The base URL of PingFederate instance</p>
</li>
<li>
<p><code class="codeph">$adapterId</code> - The IdP adapter ID used by the request</p>
</li>
<li>
<p><code class="codeph">$spAdapterId</code> - The SP adapter ID used by the request</p>
</li>
</ul>
</div></div></td>
</tr>
</tbody>
</table>
</li>
<li>
<p>Updated the following bundled components and third-party dependencies:</p>
<div class="ulist">
<ul>
<li>
<p>Jetty 9.4.44</p>
</li>
<li>
<p>JGroups 4.2.16</p>
</li>
<li>
<p>jose4j 0.7.9</p>
</li>
<li>
<p>Log4j 2.16.0</p>
</li>
<li>
<p>PingFederate Agentless Integration Kit 2.0.4</p>
</li>
<li>
<p>PingID Integration Kit 2.15.0</p>
</li>
<li>
<p>PingOne Integration Kit 2.4.1</p>
</li>
<li>
<p>Spring Framework 5.3.5</p>
</li>
</ul>
</div>
</li>
</ul>
</div>
</div>
</div>
<div class="sect2">
<h3 id="resolved-issues-94"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#resolved-issues-94"></a>Resolved issues</h3>
<div class="sect3">
<h4 id="cluster-dynamic-oauthopenid-connect-keys"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#cluster-dynamic-oauthopenid-connect-keys"></a>Cluster dynamic OAuth/OpenID Connect keys</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-20709</span></p>
</div>
<div class="paragraph">
<p>Resolved an issue that sometimes caused a cluster’s dynamic OAuth/OpenID Connect keys to fail to synchronize when a node restarts.</p>
</div>
</div>
<div class="sect3">
<h4 id="provisioning-9"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#provisioning-9"></a>Provisioning</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-27519</span></p>
</div>
<div class="paragraph">
<p>Resolved an issue that prevented a PingFederate provisioner from using a group of GUIDs as the source to detect new and removed records.</p>
</div>
</div>
<div class="sect3">
<h4 id="configuring-the-favicon-ico-url"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#configuring-the-favicon-ico-url"></a>Configuring the <code class="filepath">favicon.ico</code> URL</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-28074</span></p>
</div>
<div class="paragraph">
<p>Now PingFederate correctly applies customizations of <code class="filepath">response-header-runtime-config.xml</code> to the <code class="filepath">favicon.ico</code> URL.</p>
</div>
</div>
<div class="sect3">
<h4 id="retrieving-oauth-clients-from-oracle-databases"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#retrieving-oauth-clients-from-oracle-databases"></a>Retrieving OAuth clients from Oracle databases</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-28842</span></p>
</div>
<div class="paragraph">
<p>Reduced the time it takes for PingFederate to retrieve OAuth clients from Oracle databases.</p>
</div>
</div>
<div class="sect3">
<h4 id="unnecessary-dependency-error-banners"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#unnecessary-dependency-error-banners"></a>Unnecessary dependency error banners</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-29189</span></p>
</div>
<div class="paragraph">
<p>Unnecessary dependency error banners no longer appear in the administrative console when you use the administrative API to modify selectors or service provider adapters.</p>
</div>
</div>
<div class="sect3">
<h4 id="localizing-end-user-messages-from-the-authentication-api"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#localizing-end-user-messages-from-the-authentication-api"></a>Localizing end user messages from the authentication API</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-29202</span></p>
</div>
<div class="paragraph">
<p>Now you can localize end user messages from the authentication API for registration failure scenarios.</p>
</div>
</div>
<div class="sect3">
<h4 id="device-authorization-flow-using-idp-connection-oauth-attribute-mapping"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#device-authorization-flow-using-idp-connection-oauth-attribute-mapping"></a>Device authorization flow using IdP connection OAuth attribute mapping</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-29294</span></p>
</div>
<div class="paragraph">
<p>Resolved an issue that stopped PingFederate from completing a device authorization flow when using IdP connection OAuth attribute mapping.</p>
</div>
</div>
<div class="sect3">
<h4 id="multiple-sign-on-delay-template-redirects"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#multiple-sign-on-delay-template-redirects"></a>Multiple Sign-On Delay template redirects</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-29318</span></p>
</div>
<div class="paragraph">
<p>When a proxy is in front of PingFederate, the Multiple Sign-On Delay template now redirects to the correct port.</p>
</div>
</div>
<div class="sect3">
<h4 id="logging-xmlcipherdecryptelement-called-without-a-key-and-unable-to-resolve"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#logging-xmlcipherdecryptelement-called-without-a-key-and-unable-to-resolve"></a>Logging <code class="codeph">XMLCipher::decryptElement</code> called without a key and unable to resolve</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-29352</span></p>
</div>
<div class="paragraph">
<p>As a service provider (SP), when PingFederate can’t decrypt an assertion using the primary encryption certificate, it now logs the following message at the WARN level instead of the ERROR level: "<code class="codeph">XMLCipher::decryptElement called without a key and unable
                                to resolve</code>".</p>
</div>
</div>
<div class="sect3">
<h4 id="security-vulnerability"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#security-vulnerability"></a>Security vulnerability</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-29381</span></p>
</div>
<div class="paragraph">
<p>Resolved a potential security vulnerability caused by web server URI mishandling.</p>
</div>
</div>
<div class="sect3">
<h4 id="response-headers-for-pf-ws-and-pf-scim-endpoints"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#response-headers-for-pf-ws-and-pf-scim-endpoints"></a>Response headers for <code class="codeph">/pf-ws</code> and <code class="codeph">/pf-scim</code> endpoints</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-29392</span></p>
</div>
<div class="paragraph">
<p>Introduced the ability to add response headers to the <code class="codeph">/pf-ws</code> and <code class="codeph">/pf-scim</code> endpoints.</p>
</div>
</div>
<div class="sect3">
<h4 id="upgrade-utility"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#upgrade-utility"></a>Upgrade utility</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-29470</span></p>
</div>
<div class="paragraph">
<p>Fixed the upgrade utility so that, in non-interactive mode, it retains cipher related settings that are different from the default settings in the source version. PingFederate changes to new default settings on upgrade only if the settings have not been changed from the defaults in the source install.</p>
</div>
</div>
<div class="sect3">
<h4 id="custom-template-specified-for-the-html-form-adapter"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#custom-template-specified-for-the-html-form-adapter"></a>Custom template specified for the HTML Form Adapter</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-29509</span></p>
</div>
<div class="paragraph">
<p>Resolved an issue that caused PingFederate to render the default <code class="filepath">forgot-password-error.html</code> template instead of the custom template specified in the <strong class="uicontrol">Password Reset Error Template</strong> field for the HTML Form Adapter.</p>
</div>
</div>
<div class="sect3">
<h4 id="partial-matches-for-resource-uris-with-oauth-2-0-token-exchange"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#partial-matches-for-resource-uris-with-oauth-2-0-token-exchange"></a>Partial matches for resource URIs with OAuth 2.0 Token Exchange</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-29668</span></p>
</div>
<div class="paragraph">
<p>Resolved an issue that prevented the use of partial matches for resource URIs with OAuth 2.0 Token Exchange and produced the error message: "<code class="codeph">Unable to find a token generation policy instance to issue
                                a token</code>".</p>
</div>
</div>
<div class="sect3">
<h4 id="adding-attributes-to-data-source-lookups"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#adding-attributes-to-data-source-lookups"></a>Adding attributes to data source lookups</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-29795</span></p>
</div>
<div class="paragraph">
<p>Now, when administrators add an attribute to a data source lookup but do not use the attribute anywhere, such as for contract mapping or issuance criteria, the attribute persists in the administrative console and API.</p>
</div>
</div>
<div class="sect3">
<h4 id="microsoft-active-directory-ldif-script-for-persistent-grant-storage"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#microsoft-active-directory-ldif-script-for-persistent-grant-storage"></a>Microsoft Active Directory LDIF script for persistent grant storage</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-29847</span></p>
</div>
<div class="paragraph">
<p>The Microsoft Active Directory LDIF script for persistent grant storage now creates an index for the <code class="parmname">accessGrantGuid</code> attribute.</p>
</div>
</div>
<div class="sect3">
<h4 id="notification-publisher"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#notification-publisher"></a>Notification publisher</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-29870</span></p>
</div>
<div class="paragraph">
<p>Resolved the following notification publisher issues:</p>
</div>
<div class="ulist">
<ul>
<li>
<p>When the SMTP server queues a message but has not sent it yet, the log now indicates that the message was queued, not that it was sent.</p>
</li>
<li>
<p>PingFederate now respects the <strong class="uicontrol">Connection Timeout</strong> setting for the notification publisher’s SMTP server.</p>
</li>
<li>
<p>Deprecated the <strong class="uicontrol">Retry Attempt</strong> and <strong class="uicontrol">Retry Delay</strong> fields for the notification publisher’s SMTP server and removed them from the administrative console. PingFederate can still handle API configurations with those fields but they do nothing.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="target-resources-that-dont-start-with-http-or-https"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#target-resources-that-dont-start-with-http-or-https"></a>Target resources that don’t start with <code class="codeph">http://</code> or <code class="codeph">https://</code></h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-30002</span></p>
</div>
<div class="paragraph">
<p>Now target resources that don’t start with <code class="codeph">http://</code> or <code class="codeph">https://</code> are also available for mapping and issuance criteria.</p>
</div>
</div>
<div class="sect3">
<h4 id="response-code-for-an-invalid-transport-method"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#response-code-for-an-invalid-transport-method"></a>Response code for an invalid transport method</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-30039</span></p>
</div>
<div class="paragraph">
<p>Now various endpoints return <code class="codeph">400 Bad Request </code>instead of <code class="codeph">500 Internal Server Error</code> when they receive requests with an invalid transport method. For example, calling the ACS endpoint with a <code class="codeph">GET</code> instead of a <code class="codeph">POST</code> now returns <code class="codeph">400 Bad Request</code>.</p>
</div>
</div>
<div class="sect3">
<h4 id="custom-idp-adapters-that-use-the-class-for-filterable-dropdown-controls"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#custom-idp-adapters-that-use-the-class-for-filterable-dropdown-controls"></a>Custom IDP adapters that use the class for filterable dropdown controls</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-30232</span></p>
</div>
<div class="paragraph">
<p>The administrative console no longer shows an error message when you try to create an instance of a custom IDP adapter that uses the class for filterable dropdown controls, <code class="codeph">ConnectionSelectionFieldDescriptor</code>.</p>
</div>
</div>
<div class="sect3">
<h4 id="memory-usage-during-certificate-revocation-list-crl-parsing"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#memory-usage-during-certificate-revocation-list-crl-parsing"></a>Memory usage during certificate revocation list (CRL) parsing</h4>
<div class="paragraph">
<p><span class="ping_changetype-fixed">Fixed</span>
<span class="ping_ticket">PF-30272</span></p>
</div>
<div class="paragraph">
<p>Reduced memory usage during certificate revocation list (CRL) parsing, which speeds up CRL retrieval and avoids memory exhaustion in the case of very large CRLs.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="known-issues-and-limitations-10"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#known-issues-and-limitations-10"></a>Known issues and limitations</h3>
<div class="sect3">
<h4 id="administrative-console-and-administrative-api-9"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#administrative-console-and-administrative-api-9"></a>Administrative console and administrative API</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>/sp/idpConnections: For identity provider (IdP) connections, the administrative API connection support is limited to Browser SSO, WS-Trust STS, and OAuth Assertion Grant connections. As a result, when updating an IdP connection using the administrative API, it is possible to lose inbound provisioning settings previously configured using the administrative console.</p>
</li>
<li>
<p>/bulk: Only resource types currently supported by the administrative API are included in the exported data. Resources not yet supported include:</p>
<div class="ulist">
<ul>
<li>
<p>Identity Store Provisioners</p>
</li>
<li>
<p>Inbound provisioning settings from IdP connections</p>
</li>
<li>
<p>SMS Provider settings</p>
</li>
</ul>
</div>
</li>
<li>
<p>Previously, the administrative API did not accurately reflect a <strong class="uicontrol">Persistent Grant Max Lifetime</strong> setting of 29 days (or shorter) with the selection of the <strong class="uicontrol">Grants Do Not Timeout Due To Inactivity</strong> option. As a result, if you have configured such OAuth authorization server settings and have generated a bulk export in version 10.0 through 10.0.2, we recommend that you re-generate a new bulk export after upgrading to version 10.0.3 (or a more recent version). The newly exported data does not contain the aforementioned flaw, and you can safely import it to version 10.0.3 (or a more recent version).</p>
</li>
<li>
<p>When enabling mutual TLS certificate-based authentication, administrators often configure a list of acceptable client certificate issuers. When an administrator uses a browser to access the console or the administrative API documentation, PingFederate returns to the browser the list of acceptable issuers as part of the TLS handshake. If the browser’s client certificate store contains multiple client certificates, the browser often presents to the user only the certificates whose issuer matches one of the acceptable issuers. However, when PingFederate runs in a Java 11 environment, Chrome presents to the administrator all its configured client certificates, regardless of whether the issuer matches one of the acceptable issuers or not.</p>
</li>
<li>
<p>Prior to toggling the status of a connection with the administrative API, an administrator must ensure that any expired certificates or no longer available attributes are replaced with valid certificates or attributes; otherwise, the update request fails.</p>
</li>
<li>
<p>When creating or updating a child instance of a hierarchical plugin, the administrative API retains objects with an <code class="codeph">"inherited": false</code> name/value pair (or without such name/value pair altogether), ignores those with a value of <code class="codeph">true</code>, and returns a 200 HTTP status code. No error messages are returned for the ignored objects.</p>
</li>
<li>
<p>Using the browser’s navigation mechanisms (for example, the <strong class="uicontrol">Back</strong> button) causes inconsistent behavior in the administrative console. Use the navigation buttons provided at the bottom of windows in the PingFederate console.</p>
</li>
<li>
<p>Using the PingFederate console in multiple tabs on one browser might cause inconsistent behavior which could corrupt its configuration.</p>
</li>
<li>
<p>If authenticated to the PingFederate administrative console using certificate authentication, a session that has timed out might not appear to behave as expected. Normally (when using password authentication), when a session has timed out and a user attempts some action in the console, the browser is redirected to the login page, and then back to the administrative console after authentication is complete. Similar behavior applies for certificate authentication, in principle. However, because the browser might automatically resubmit the certificate for authentication, the browser might redirect to the administrative console and not the login page.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="tlsv1-3-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#tlsv1-3-5"></a>TLSv1.3</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>For Java versions that don’t support TLSv1.3 (meaning versions earlier than 8u261), PingFederate fails on start up with a <code class="codeph">NoSuchAlgorithmException</code> exception. To resolve this error, remove <code class="codeph">TLSv1.3</code> from the following settings in the <code class="filepath">run.properties</code> file:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><code class="parmname">pf.tls.client.protocols</code></p>
</li>
<li>
<p><code class="parmname">pf.tls.runtime.server.protocols</code></p>
</li>
<li>
<p><code class="parmname">pf.tls.admin.server.protocols</code></p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="tls-cipher-suite-customization-9"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#tls-cipher-suite-customization-9"></a>TLS cipher suite customization</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>PingFederate’s TLS cipher suites can be customized by modifying <code class="filepath">com.pingidentity.crypto.SunJCEManager.xml</code> (or a similarly-named file if BCFIPS or a hardware security module (HSM) is configured). After updating the file and replicating, all cluster nodes must be restarted for the change to take effect.</p>
</div>
</div>
<div class="sect3">
<h4 id="updating-java-8-to-java-11"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#updating-java-8-to-java-11"></a>Updating Java 8 to Java 11</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>Updating Java version 8 to version 11 results in an error when PingFederate is already installed and running. To work around this issue, uninstall and reinstall the PingFederate Windows service by running the <code class="filepath">UninstallPingFederateService.bat</code> and <code class="filepath">InstallPingFederateService.bat</code> files located in <code class="filepath"><em class="varname">&lt;pf_install&gt;</em>/pingfederate/sbin/wrapper</code>.</p>
</div>
</div>
<div class="sect3">
<h4 id="hardware-security-modules-hsm-2"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#hardware-security-modules-hsm-2"></a>Hardware security modules (HSM)</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>For Entrust HSMs or AWS CloudHSM, PingFederate must be deployed with Oracle Server JRE 8 or Amazon Corretto 8.</p>
</li>
<li>
<p>For Entrust HSMs, it is not possible to use an elliptic curve (EC) certificate as an SSL server certificate.</p>
</li>
<li>
<p>For keys stored in Thales HSMs, JWT token decryption fails when using RSAES OAEP with AES-CBC-192 or AES-CBC-256. This issue only arises if PingFederate is configured with static OAuth and OpenID Connect keys and is consuming a token encrypted with one of these keys.</p>
</li>
<li>
<p>When PingFederate is configured in hybrid mode with a Thales HSM, it is not possible to export a locally-stored EC key pair.</p>
</li>
<li>
<p>When PingFederate is configured in hybrid mode with a Thales HSM, JWT token decryption using ECDH-ES may fail. This issue only arises if PingFederate is configured with static OAuth and OpenID Connect keys, a static key is stored locally, and PingFederate is consuming a token encrypted with this key.</p>
</li>
<li>
<p>TLS 1.3 is not currently supported with any HSM.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="sso-and-slo-9"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#sso-and-slo-9"></a>SSO and SLO</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>When consuming SAML metadata, PingFederate does not report an error when neither the <code class="parmname">validUntil</code> nor the <code class="parmname">cacheDuration</code> attribute is included in the metadata. Note that PingFederate does reject expired SAML metadata as indicated by the <code class="parmname">validUntil</code> attribute value, if it is provided.</p>
</li>
<li>
<p>The anchored-certificate trust model cannot be used with the SLO redirect binding because the certificate cannot be included with the logout request.</p>
</li>
<li>
<p>If an IdP connection is configured for multiple virtual server IDs, PingFederate will always use the default virtual server ID for IdP Discovery during an SP-initiated SSO event.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="composite-adapter-configuration-9"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#composite-adapter-configuration-9"></a>Composite Adapter configuration</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>SLO is not supported when users are authenticated through a Composite Adapter instance that contains another instance of the Composite Adapter.</p>
</div>
</div>
<div class="sect3">
<h4 id="self-service-password-reset-9"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#self-service-password-reset-9"></a>Self-service password reset</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>Passwords can be reset for Microsoft Active Directory user accounts without the permission to change password.</p>
</div>
</div>
<div class="sect3">
<h4 id="oauth-9"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oauth-9"></a>OAuth</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>PingFederate does not support a case-sensitive naming convention for OAuth client ID values when client records are stored in a directory server. For example, after creating a client with an ID value of <code class="codeph">sampleClient</code>, PingFederate does not allow the creation of another client with an ID value of <code class="codeph">SampleClient</code>.</p>
</div>
<div class="paragraph">
<p>Although it’s possible to create clients using the same ID values with different casings when client records are stored in XML files, a database server, or custom storage, we recommend not doing so to avoid potential record migration issues.</p>
</div>
</div>
<div class="sect3">
<h4 id="customer-identity-and-access-management-9"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#customer-identity-and-access-management-9"></a>Customer identity and access management</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>Some browsers display a date-picker user interface for fields that have been designed for date-specific inputs. Some browsers do not. If one or more date-specific fields are defined on the registration page or the profile management page (or both), end users must enter the dates manually if their browsers do not display a date-picker user interface for those fields.</p>
</div>
</div>
<div class="sect3">
<h4 id="provisioning-10"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#provisioning-10"></a>Provisioning</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>LDAP referrals return an error and cause provisioning to fail if the <code class="parmname">user</code> or <code class="parmname">group</code> objects are defined at the DC level, and not within an OU or within the Users CN.</p>
</li>
<li>
<p>The <code class="parmname">totalResults</code> value in SCIM responses indicates the number of results returned in the current response, not the total number of estimated results on the LDAP server.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="logging-9"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#logging-9"></a>Logging</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>If a source attribute has been configured for masking in an IdP adapter or IdP connection and the source attribute is mapped to OAuth’s persistent grant <code class="parmname">USER_KEY</code> attribute, the <code class="parmname">USER_KEY</code> attribute will not be masked in the server logs. Other persistent grant attributes will be masked.</p>
</li>
<li>
<p>Even if a source attribute has been configured for masking in an IdP adapter and the source attribute is mapped as the adapter’s unique user key, the user key attribute is not masked in the server or audit logs.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="database-logging-9"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#database-logging-9"></a>Database logging</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="ulist">
<ul>
<li>
<p>If a source attribute has been configured for masking in an IdP adapter or IdP connection and the source attribute is mapped to OAuth’s persistent grant <code class="parmname">USER_KEY</code> attribute, the <code class="parmname">USER_KEY</code> attribute will not be masked in the server logs. Other persistent grant attributes will be masked.</p>
</li>
<li>
<p>Even if a source attribute has been configured for masking in an IdP adapter and the source attribute is mapped as the adapter’s unique user key, the user key attribute is not masked in the server or audit logs.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="radius-nas-ip-address-9"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#radius-nas-ip-address-9"></a>RADIUS NAS-IP-Address</h4>
<div class="paragraph">
<p><span class="ping_changetype-issue">Issue</span></p>
</div>
<div class="paragraph">
<p>The RADIUS NAS-IP-Address is only included in Access-Request packets when the <code class="codeph">pf.bind.engine.address</code> is set with an IPv4 address. IPv6 is not supported.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="deprecated-features-9"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#deprecated-features-9"></a>Deprecated features</h3>
<div class="sect3">
<h4 id="microsoft-internet-explorer-11-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#microsoft-internet-explorer-11-5"></a>Microsoft Internet Explorer 11</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>Ping Identity commits to deliver the best experience for administrators and users. As we continue to improve our products, we encourage our customers to migrate off of Microsoft Internet Explorer 11. Starting with PingFederate 11.0, Internet Explorer 11 is no longer included in the PingFederate qualification process for administrators or users. For a list of supported browsers, see <a href="https://docs.pingidentity.com/pingfederate/installing_and_uninstalling_pingfederate/pf_system_requirements.html" class="xref page">System requirements</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="configcopy-tool-connection-management-service-sso-directory-service-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#configcopy-tool-connection-management-service-sso-directory-service-5"></a>Configcopy tool, Connection Management Service, SSO Directory Service</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>As of PingFederate 10.2, these features have been deprecated and will be removed in a future release.</p>
</div>
</div>
<div class="sect3">
<h4 id="oracle-directory-server-enterprise-edition-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#oracle-directory-server-enterprise-edition-5"></a>Oracle Directory Server Enterprise Edition</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>As Oracle ended its Premier Support for Oracle Directory Server Enterprise Edition (ODSEE 11g) in December 2019, we no longer include ODSEE as part of the PingFederate qualification process (starting with PingFederate 10.2). We continue to qualify against <a href="https://www.oracle.com/security/identity-management/directory-services/" target="_blank" rel="noopener">Oracle Unified Directory</a> and other supported directory servers. For a full list, see <a href="https://docs.pingidentity.com/pingfederate/installing_and_uninstalling_pingfederate/pf_system_requirements.html" class="xref page">System requirements</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="snmp-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#snmp-5"></a>SNMP</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>Starting with PingFederate 10.2, monitoring and reporting through the Simple Network Management Protocol (SNMP) has been removed.</p>
</div>
</div>
<div class="sect3">
<h4 id="roles-and-protocols-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#roles-and-protocols-5"></a>Roles and protocols</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>Starting with PingFederate 10.1, roles and protocols are always enabled and no longer configurable through the administrative console and API.</p>
</div>
</div>
<div class="sect3">
<h4 id="s3_ping-discovery-protocol-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#s3_ping-discovery-protocol-5"></a>S3_PING discovery protocol</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>Starting with PingFederate 10.1, the S3_PING discovery protocol has been deprecated. Customers running on AWS infrastructure should instead use NATIVE_S3_PING.</p>
</div>
</div>
<div class="sect3">
<h4 id="red-hat-enterprise-linux-install-script-5"><a class="anchor" href="https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#red-hat-enterprise-linux-install-script-5"></a>Red Hat Enterprise Linux install script</h4>
<div class="paragraph">
<p><span class="ping_changetype-info">Info</span></p>
</div>
<div class="paragraph">
<p>Starting with PingFederate 10.0, the Red Hat Enterprise Linux install script is no longer available. To install PingFederate 10.0 for Linux, you must download and extract the product distribution <code class="filepath">.zip</code> file.</p>
</div>
</div>
</div>
</div>
]]></description>
        </item>
        <item>
            <title><![CDATA[Previous releases]]></title>
            <link>https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#previous_releases</link>
            <guid isPermaLink="false">https://docs.pingidentity.com/pingfederate/release_notes/pf_release_notes.html#previous_releases</guid>
            <pubDate>Fri, 01 Jan 2021 00:00:00 GMT</pubDate>
            <description><![CDATA[

<div class="sectionbody">
<div class="paragraph">
<p>Find information about enhancements and issues resolved in previous releases of PingFederate in the <a href="https://docs.pingidentity.com/archive/" target="_blank" rel="noopener">Ping Documentation Archive</a>.</p>
</div>
</div>
]]></description>
        </item>
    </channel>
</rss>