-
Notifications
You must be signed in to change notification settings - Fork 50
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
should support KMS signing #445
Comments
Signing (private) key identificationThe discussion that maybe makes sense at this point is private key abstraction in general -- in other words how to decide which Signer to use and how to initialize that signer. Since we don't have a solution for this, we end up with having to change code when the keytype changes: SSLibSigner(key_dict) # here key_dict is expected to include public and private key
GPGSigner(gpg_key_id)
KMSSigner.from_keyref(keyref, key_dict) If there was a global way to identify a private key (privkeyref) that we can load from configuration, we could just have a single call that just works: I wonder if the simple "privkeyref" string approach in the linked PR would actually work in general? The idea here is that the public key is provided -- we only need the private key details from the private key storage:
The point of keeping this as "just a string" is to make it easy to load the private key identifier from configuration and get a Signer without modifying code (this should make it easy to expose all of this via CLI tools if needed) |
I've moved the private key id proposal to #447 |
This is done now I suppose: Google Cloud KMS is supported and working fine. Other KMS implementations can be added. |
Signing using a KMS would be useful: as an example a TUF repository could sign metadata with online keys without having access to the private key material.
The implementation should not be difficult but there are a couple of tricky bits:
I have a draft PR #442
The text was updated successfully, but these errors were encountered: