docs: explain tfstate trust policy security model and quota limits#870
Open
docs: explain tfstate trust policy security model and quota limits#870
Conversation
- Remove quota increase as a default/required step - Explain why wildcard patterns are used (IAM 4096 char hard limit) - Document the two-way security handshake model - Show how to request quota increase if customizations require it
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Documents the IAM role trust policy security model for the
tfstate-backendcomponent.Changes
Explains why wildcard patterns are required: IAM trust policies have a hard limit of 4096 characters (max quota). Listing every role and permission set by explicit ARN would exceed this limit for organizations with multiple accounts.
Documents the two-way security handshake: Wildcards in trust policies are secure because:
aws:PrincipalOrgIDcondition)sts:AssumeRoleon the specific tfstate roleShows how to request quota increase (if needed): For customizations that approach the 2048 default limit, documents the quota increase command (auto-approved up to 4096).
Context
Initial investigation attempted to replace wildcards with explicit ARNs for stricter least-privilege. However:
The two-way handshake model maintains security while staying within IAM limits.