-
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
feat: Adds AWS KMS signing. #609
Conversation
Very cool! Thanks for the contribution, @ianhundere! From a quick glance the code looks great. May I ask you to fix ci failures?
Your code looks fine for a prototype. We can polish later, e.g. with #594 and #593.
Did you test this somewhere? Would you mind providing some details about how to setup AWS KMS to use AWSSigner? |
…tent with the actual signing algorith being passed to aws kms.
Appreciate the feedback, @lukpueh. Just pushed a commit that ensures the keytype and scheme passed in import_ are consistent with the actual signing algorithm, tests were passing / correct signing algo was being passed, but the
Yeah, I ensured that all the appropriate values were where they should be and that all tests passed. I also tested both rsa and ecdsa keys. I'll implement your feedback over the weekend, cheers / thanks. 🍻 |
…S KMS to use AWSSigner.
…: Unpacking a string is disallowed [misc].
…g and adjusts test coverage to pass for windows builds.
…lib into add-aws-support
@lukpueh Okay, documentation updated and all
|
…me and updates docstrings.
@lukpueh added one last change to cleanup
|
Thanks again for the very valuable contribution! The AWS KMS interaction looks great. 💯 I did have a hard time, though, to follow your signing scheme detection code. It looks like you are putting a lot of effort into making the I have two comments about that:
Apologies, if I am missing something. Also, happy to discuss this in person. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Here's a couple of docs and style -related comments. Definitely no blockers, but if you have time, it would be nice to fix them.
awesome, this is terrific feedback and was really helpful. i just implemented your suggestions above, but i'll go ahead and push the rest of your feedback in one commit, should have them up shortly. |
@lukpueh okay, all suggestions implemented, much prettier to look at now. 😅 thanks again for the feedback. 🙂 edit: i had some failing tests, resolved them...now it should be good. 🚀 |
…keytype_and_scheme.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the quick updates, this looks great!
I like that you just let the user decide, which scheme to use. We can make enhancements later, like cross-check with the schemes that are actually supported, or pick a reasonable default from the supported schemes, etc.
I left a few final comments. Otherwise, I think this is ready to merge, and we can take a stab at testing in a follow-up PR (#612).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks!
Description of the changes being introduced by the pull request:
This pull request adds AWS signer implementation.
though currently the func that gets the scheme and keytype just provides a default signing algorithm for each respective key spec specifically for RSA keys.I added logic to the sign func that parses the correct signing algorithm which is a bit messy, but I had trouble trying to pull the scheme in from the test elsewhere and didn't want to muddy the way things were done compared to the gcp/azure implementations.I also redacted the necessary information in the test, but I also see that the azure test isn't currently being used in pipelines.
Please verify and check that the pull request fulfils the following requirements: