-
Notifications
You must be signed in to change notification settings - Fork 487
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(iam auth): allow iam roles anywhere auth profile #3591
Conversation
Signed-off-by: Samantha Coyle <[email protected]>
Signed-off-by: Samantha Coyle <[email protected]>
Signed-off-by: Samantha Coyle <[email protected]>
Signed-off-by: Samantha Coyle <[email protected]>
Signed-off-by: Samantha Coyle <[email protected]>
Signed-off-by: Samantha Coyle <[email protected]>
Signed-off-by: Samantha Coyle <[email protected]>
Signed-off-by: Samantha Coyle <[email protected]>
Signed-off-by: Samantha Coyle <[email protected]>
Signed-off-by: Samantha Coyle <[email protected]>
Signed-off-by: Samantha Coyle <[email protected]>
Signed-off-by: Samantha Coyle <[email protected]>
Signed-off-by: Samantha Coyle <[email protected]>
Signed-off-by: Sam <[email protected]>
Signed-off-by: Samantha Coyle <[email protected]>
Signed-off-by: Samantha Coyle <[email protected]>
Signed-off-by: Samantha Coyle <[email protected]>
Signed-off-by: Samantha Coyle <[email protected]>
Signed-off-by: Samantha Coyle <[email protected]>
Signed-off-by: Samantha Coyle <[email protected]>
Signed-off-by: Samantha Coyle <[email protected]>
I'm trying to inject mocked creds to make conformance tests pass for some of the aws components, but not too familiar with their setup. Clearly I need to adjust this further bc they're all failing... maybe add an IAM role on the terraform for IAM roles anywhere? or inject mock creds somewhere else? I had to do that for the unit tests for some of them... 🫠 I will come back to this tomorrow morning.
|
Signed-off-by: Samantha Coyle <[email protected]>
Signed-off-by: Samantha Coyle <[email protected]>
Signed-off-by: Samantha Coyle <[email protected]>
Complete Build MatrixThe build status is currently not updated here. Please visit the action run below directly. Commit ref: d8af3c0 |
Components certification testCommit ref: d8af3c0 ❌ Some certification tests failedThese tests failed:
|
Components conformance testCommit ref: d8af3c0 ❌ Some conformance tests failedThese tests failed:
|
Signed-off-by: Samantha Coyle <[email protected]>
/ok-to-test |
Components conformance testCommit ref: 37021c5 ❌ Some conformance tests failedThese tests failed:
|
Components certification testCommit ref: 37021c5 ❌ Some certification tests failedThese tests failed:
|
Complete Build MatrixThe build status is currently not updated here. Please visit the action run below directly. Commit ref: 37021c5 |
Signed-off-by: Samantha Coyle <[email protected]>
Signed-off-by: Sam <[email protected]>
this is ready for review please. All certification/conformance tests that are failing are unrelated, and flaky / failing in other PRs. |
Signed-off-by: Samantha Coyle <[email protected]>
Signed-off-by: Samantha Coyle <[email protected]>
/ok-to-test |
Complete Build MatrixThe build status is currently not updated here. Please visit the action run below directly. Commit ref: 3d4da39 |
Components certification testCommit ref: 3d4da39 ❌ Some certification tests failedThese tests failed:
|
Components conformance testCommit ref: 3d4da39 ❌ Some conformance tests failedThese tests failed:
|
Signed-off-by: Samantha Coyle <[email protected]>
Signed-off-by: Samantha Coyle <[email protected]>
Signed-off-by: Samantha Coyle <[email protected]>
/ok-to-test |
Complete Build MatrixThe build status is currently not updated here. Please visit the action run below directly. Commit ref: cde5a10 |
Components certification testCommit ref: cde5a10 ❌ Some certification tests failedThese tests failed:
|
Components conformance testCommit ref: cde5a10 ❌ Some conformance tests failedThese tests failed:
|
Description
The overall logic for this auth profile + it's proper rotation is completed. I just need to update to add a mock for the authprovider clients, update the rest of the existing tests, and wrap up adding new ones.
Summary: Add an auth profile for using AWS IAM Roles Anywhere. This leverages x.509 certificates to establish trust between an AWS account and a trusted certificate authority. Here, we can use the Dapr SVID very nicely.
I had to do an overhaul on the existing AWS IAM setup because now it is the case that there is the existing static IAM auth with things like accesskeys, secretkeys, etc. However, now, I'm adding temporary auth that Dapr is responsible for rotating. Default expiration time with AWS for IAM Roles Anywhere session durations is 1hour, so that is our default with a rotation when we've hit half of that time in a goroutine if that auth profile is picked up. If a user sets a session duration for timeout, then we will not rotate the credentials.
This applies to all existing AWS components.
I plan to add for Postgres + Kafka in a secondary PR since this one is already so beefy.
Issue reference
We strive to have all PR being opened based on an issue, where the problem or feature have been discussed prior to implementation.
Please reference the issue this PR will close: #[issue number]
Checklist
Please make sure you've completed the relevant tasks for this PR, out of the following list: