Skip to content

Add NGTS configuration + NGTS client#788

Open
SgtCoDFish wants to merge 1 commit intomasterfrom
ngts-flags
Open

Add NGTS configuration + NGTS client#788
SgtCoDFish wants to merge 1 commit intomasterfrom
ngts-flags

Conversation

@SgtCoDFish
Copy link
Copy Markdown
Contributor

@SgtCoDFish SgtCoDFish commented Mar 24, 2026

This will add initial support for NGTS. Auth is based on the existing Venafi Cloud client using a keypair.

I'm not really able to test this effectively because of various issues with the test env, but I think this is safe enough to merge as-is because it's not customer-facing yet (needs helm chart support before this is realistically usable)

Note there are several TODOs in this PR. They need to be clarified before we can expose this functionality to customers, but I think they're fine for now.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

NB: this is pretty much copy+pasted from client_venafi_cloud.go because the logic is nearly identical. I refactored some of the shared logic out (util.go) but mostly this is the same thing with different names

This will add initial support for NGTS. Auth is based on the existing
Venafi Cloud client using a keypair.

Signed-off-by: Ashley Davis <ashley.davis@cyberark.com>
// NGTSClient is a Client implementation for uploading data readings to NGTS
// using service account keypair authentication. It follows the Private Key JWT
// authentication pattern (RFC 7521 + RFC 7523).
type NGTSClient struct {
Copy link
Copy Markdown
Contributor

@inteon inteon Apr 1, 2026

Choose a reason for hiding this comment

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

Why are we creating a new client? Can't we reuse the CMSaaS client? The dataplane endpoints should be identical & the authentication using built-in SA should be the same.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

  • Easier this way to be confident that the existing client is unaffected, meaning the review (which is the bottleneck) is easier
  • The pattern already exists of creating new clients for new backends.
  • Easier to develop the NGTS client independently and make changes to it going forwards if it's separate. In a high-pressure and quick-to-change environment, I value that flexibility

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