docs: PRD for aws/credentials identity with credential_process#1795
docs: PRD for aws/credentials identity with credential_process#1795
Conversation
Add comprehensive Product Requirements Document for supporting AWS credential_process as a first-class credential source for aws/user identities. Enables integration with external credential helpers (Okta CLI, aws-sso-cli, aws-vault, custom scripts) following AWS SDK standard. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
|
Warning Rate limit exceeded@osterman has exceeded the limit for the number of commits or files that can be reviewed per hour. Please wait 4 minutes and 36 seconds before requesting another review. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. 📒 Files selected for processing (1)
✨ Finishing touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Dependency Review✅ No vulnerabilities or license issues found.Scanned FilesNone |
Change architectural approach from extending aws/user to introducing new aws/credentials identity kind for external credential processes. Key rationale: - aws/user is semantically tied to IAM Users (calls GetSessionToken, prompts for MFA) - External processes (aws-sso-cli, Okta) return already-temporary credentials - New aws/credentials kind uses credentials as-is without transformation - Cleaner separation of concerns and simpler implementation Updated examples to use aws/credentials and clarified comparison with aws/user. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
Update aws/user example to use Atmos !env YAML function instead of
{{getenv}} Go template syntax for consistency with Atmos conventions.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Move generic corporate credential helper to Example 1 as the primary use case. Reorder remaining examples to show various third-party tools (Okta, aws-sso-cli, aws-vault, custom scripts) as implementations of the same pattern. This better reflects the GitHub issue request: organizations with existing custom credential tooling that want to integrate with Atmos. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #1795 +/- ##
==========================================
+ Coverage 70.66% 70.67% +0.01%
==========================================
Files 451 451
Lines 42397 42397
==========================================
+ Hits 29958 29966 +8
+ Misses 9911 9903 -8
Partials 2528 2528
Flags with carried forward coverage won't be shown. Click here to find out more. 🚀 New features to boost your workflow:
|
Summary
Adds comprehensive Product Requirements Document for introducing a new
aws/credentialsidentity kind that obtains AWS credentials from external processes using the AWS SDK'scredential_processstandard. Enables seamless integration with external credential helpers (aws-sso-cli, Okta CLI, aws-vault, custom SAML tools, etc.).Why a New Identity Kind?
aws/credentialsinstead of extendingaws/user:The
aws/useridentity kind is semantically tied to IAM Users and performs IAM User-specific operations:GetSessionTokento generate temporary credentialsSemantic mismatch with credential_process:
GetSessionTokenagain would fail (can't get session token from session credentials)Solution: New
aws/credentialsidentity kindaws/userfor its intended purpose (IAM Users with long-lived credentials)Identity Kind Comparison
aws/user(existing)aws/credentials(new)aws-useraws-credentialsUse Case from GitHub Issue
User's organization sources temporary AWS credentials from an external process and wants to use Atmos's
credential_processstandard to integrate with their existing tooling.Configuration Examples
Generic External Process (GitHub Issue Use Case)
Comparison with aws/user
Identity Chaining
Additional Example Tools
PRD includes examples for common credential helper tools:
🤖 Generated with Claude Code