Skip to content

Conversation

@jfreden
Copy link

@jfreden jfreden commented Nov 10, 2025

This adds documentation for the RCS Strong Verification feature added in elastic/elasticsearch#136299, elastic/elasticsearch#134137, elastic/elasticsearch#134893, elastic/elasticsearch#135674 and elastic/elasticsearch#134604.

Related settings docs PR: elastic/elasticsearch#137822

@github-actions
Copy link

🔍 Preview links for changed docs

Copy link
Collaborator

@shainaraskas shainaraskas left a comment

Choose a reason for hiding this comment

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

couple of comments.

consider swapping steps 4 and 5 in the list of tasks (so all of the relationship tasks are done before the user/role tasks):
image

we might hint that these steps can be undertaken paired with steps 2 and 3 (because you'll be on those machines anyway setting up the trust relationship)

tagging in @eedugon as well because this is in the remote clusters space and Edu has been doing some work to refactor these docs. Just want to make sure we're not doing anything that would conflict with that work (edu: do you think this needs to be added to any of the other tutorials? not sure which ones piggyback on core elasticsearch remote cluster features)



## Remote cluster strong verification [remote-cluster-strong-verification]
preview::[]
Copy link
Collaborator

Choose a reason for hiding this comment

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

this is the syntax used for the new docs system. we also want to specify which stack version contains this functionality because these docs are cumulative

Suggested change
preview::[]
```{applies_to}
deployment:
self: preview 9.3
```

Comment on lines +442 to +448
1. The local cluster signs the request headers with its configured private key and sends the signature and certificate chain as header
in the request to the remote cluster
2. The remote cluster verifies that the API key is valid
3. If the API key has a certificate identity pattern configured, the remote cluster extracts the Distinguished Name (DN) from the
certificate chain's leaf certificate and matches it against the certificate identity pattern
4. The remote cluster validates that the provided certificate chain is trusted
5. The remote cluster validates the signature and checks that the certificate is not expired
Copy link
Collaborator

Choose a reason for hiding this comment

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

Suggested change
1. The local cluster signs the request headers with its configured private key and sends the signature and certificate chain as header
in the request to the remote cluster
2. The remote cluster verifies that the API key is valid
3. If the API key has a certificate identity pattern configured, the remote cluster extracts the Distinguished Name (DN) from the
certificate chain's leaf certificate and matches it against the certificate identity pattern
4. The remote cluster validates that the provided certificate chain is trusted
5. The remote cluster validates the signature and checks that the certificate is not expired
1. The local cluster signs the request headers with its configured private key and sends the signature and certificate chain as header
in the request to the remote cluster.
2. The remote cluster verifies that the API key is valid.
3. If the API key has a certificate identity pattern configured, the remote cluster extracts the Distinguished Name (DN) from the
certificate chain's leaf certificate and matches it against the certificate identity pattern.
4. The remote cluster validates that the provided certificate chain is trusted.
5. The remote cluster validates the signature and checks that the certificate is not expired.

```
::::{note}
Replace my_remote_cluster with your remote cluster alias and the paths with actual paths
Copy link
Collaborator

Choose a reason for hiding this comment

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

Suggested change
Replace my_remote_cluster with your remote cluster alias and the paths with actual paths
Replace `my_remote_cluster` with your remote cluster alias, and the paths with the paths to your certificate and key files.

Note that you only need to create this user on the local cluster.


## Remote cluster strong verification [remote-cluster-strong-verification]
Copy link
Collaborator

Choose a reason for hiding this comment

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

There are a lot more settings specified in your reference PR. how does someone know from this procedure when to use those additional settings?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants