Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Documentation for TLS certificate rotation feature #2165

Open
wants to merge 5 commits into
base: dev
Choose a base branch
from

Conversation

tonbut
Copy link
Contributor

@tonbut tonbut commented Mar 5, 2025

@tonbut tonbut added the dev label Mar 5, 2025
@NataliaIvakina NataliaIvakina self-assigned this Mar 5, 2025
@tonbut tonbut requested a review from NataliaIvakina March 7, 2025 12:57
@neo-technology-commit-status-publisher
Copy link
Collaborator

This PR includes documentation updates
View the updated docs at https://neo4j-docs-operations-2165.surge.sh

Updated pages:

@@ -1108,6 +1108,44 @@ Beware that the SSL debug option logs a new statement every time a client connec
To avoid that scenario, make sure this setting is only enabled for a short term duration.
====
[role=label--new-2025.03]
[[certificate-rotation]]
== Certificates rotation
Copy link
Collaborator

Choose a reason for hiding this comment

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

Do we need to specify here: TLS certificates rotation?

[source, properties]
----
dbms.security.tls_reload=true (default is false)
Copy link
Collaborator

Choose a reason for hiding this comment

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

if this setting needs to be set up to true during the cluster deployment, I think we have to mention it on other pages where we talk how to deploy cluster in Neo4j. https://neo4j.com/docs/operations-manual/current/clustering/setup/deploy/.
Do we need to update pages in the Docker and Kubernetes sections?

Copy link
Collaborator

Choose a reason for hiding this comment

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

One more question: Do we need to mention this setting above https://neo4j.com/docs/operations-manual/current/security/ssl-framework/#ssl-configuration? where we talk about SSL configuration settings

Copy link
Contributor Author

Choose a reason for hiding this comment

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

We could mention it on https://neo4j.com/docs/operations-manual/current/clustering/setup/deploy/ but I don't think we should - it's an optional feature and we don't mention SSL setup anywhere else on that page. I guess same applies to Docker and Kubernetes sections.

I don't think it needs to go above the other settings - again this is an optional feature and isn't required knowledge to fully understand and deploy the SSL configuration

[source]
----
dbms.reloadTLSCertificates()
Copy link
Collaborator

Choose a reason for hiding this comment

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

Is this a new procedure? Our test didn't show yet that we miss a procedure on our page https://neo4j.com/docs/operations-manual/current/procedures/. But looks like we need to add in this procedure there

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Yes it's a new procedure but not merged yet. I'll add it to this page too once we agree the name.

dbms.reloadTLSCertificates()
----
. New settings will take effect immediately, however existing connections will not be pre-emptively terminated.
Copy link
Collaborator

Choose a reason for hiding this comment

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

I think I need more details here. Does this mean that new connections will use new certificates, but the existing connections (established before the update) will continue using the old certificates until they expire?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Yes exactly. It will not terminate existing connection. But any new connections will use the new certificates

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Even expired certificates won't cause a connection to terminate. The certificates are only used during the connection negotiation stage

@recrwplay
Copy link
Contributor

This PR includes documentation updates
View the updated docs at https://neo4j-docs-operations-2165.surge.sh

Updated pages:

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.

4 participants