Skip to content

Conversation

pruivo
Copy link
Contributor

@pruivo pruivo commented Oct 9, 2025

Closes #43311

The examples were regenerated from the Keycloak Benchmark repository.

Closes keycloak#43311

Signed-off-by: Pedro Ruivo <1492066+pruivo@users.noreply.github.com>
@pruivo
Copy link
Contributor Author

pruivo commented Oct 9, 2025

@ahus1 @ryanemerson, when you get a chance, please review. Thank you.

Signed-off-by: Pedro Ruivo <1492066+pruivo@users.noreply.github.com>
@pruivo pruivo marked this pull request as ready for review October 9, 2025 11:04
@pruivo pruivo requested review from a team as code owners October 9, 2025 11:04
<3> Specify the URL to your custom {project_name} image. If your image is optimized, set the `startOptimized` flag to `true`.
<4> Enable additional features for multi-cluster support like the loadbalancer probe `/lb-check`.
<5> To be able to analyze the system under load, enable the metrics endpoint.
<6> Specify the `ConfigMap` name with the Amazon Aurora PostgreSQL database certificate bundle.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

s/with/that contains/

include::../examples/generated/keycloak.yaml[tag=keycloak]
----
<1> The database connection pool initial, max and min size should be identical to allow statement caching for the database.
<1> Secure database connection with `sslmode=verify-full` and `sslrootcert`.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"Secure the database connection with the sslmode=verify-full and sslrootcert properties."

Secure the connection by adding the following properties to your connection URL:
* `sslmode=verify-full`: Forces TLS and verifies the server's identity against the trusted certificate.
* `sslrootcert=/path/to/certificate`: The path to the server's public certificate file on the client machine.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nitpick, but should the explanation come after the example source? Same applies to the Aurora section.

Copy link
Contributor

@ahus1 ahus1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for the PR. Please also update deploy-keycloak.adoc which contains the docs for the single-cluster setup.

[TIP]
.Secure Your PostgreSQL Connection
====
To achieve the highest level of security, you must configure your PostgreSQL server to use TLS and perform full server certificate verification from the client.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There might be other options that some people might consider more secure, like for example mTLS. So I suggest a rephrase:

Suggested change
To achieve the highest level of security, you must configure your PostgreSQL server to use TLS and perform full server certificate verification from the client.
To secure your database connection, configure your PostgreSQL server to use TLS and perform full server certificate verification on the client side.

[TIP]
.Secure Your Aurora PostgreSQL Connection
====
Amazon Aurora PostgreSQL **17.0+** enables TLS by default.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Amazon Aurora PostgreSQL **17.0+** enables TLS by default.
Amazon Aurora PostgreSQL 17.0 or later requires TLS connections by default.

====
Amazon Aurora PostgreSQL **17.0+** enables TLS by default.
While this secures the connection, for the **highest level of security**, you must perform full server certificate verification. To do this:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
While this secures the connection, for the **highest level of security**, you must perform full server certificate verification. To do this:
While this encrypts the connection, you must still perform a full server certificate verification. To do this, perform the following steps:

Signed-off-by: Pedro Ruivo <1492066+pruivo@users.noreply.github.com>
@pruivo
Copy link
Contributor Author

pruivo commented Oct 9, 2025

@ahus1 @ryanemerson updated. Thank you

@ahus1 ahus1 merged commit 48f1978 into keycloak:main Oct 9, 2025
56 checks passed
@pruivo pruivo deleted the t_43311 branch October 9, 2025 13:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Update docs to include PostgreSQL SSL certificate
3 participants