Storage Transfer Service policies#402
Conversation
🔍 Documentation Check FailedStatus: ❌ CHECKS FAILED ❌ No documentation changes found - please update docs for your assigned service Please add or update documentation in the |
🔍 Policy Check ResultsStatus: ❌ CHECKS FAILED Test Output |
🔍 Policy Check ResultsStatus: ✅ All checks passed Test Output |
There was a problem hiding this comment.
Hi @Mohmaed-AA00, rosource_json is missing in your documentation. Please ensure to include them. Example for reference:

🔍 Policy Check ResultsStatus: ❌ CHECKS FAILED Test Output |
This reverts commit 50e85cb.
🔍 Policy Check ResultsStatus: ✅ All checks passed Test Output |
jinglong857
left a comment
There was a problem hiding this comment.
Hi @Mohmaed-AA00, please complete your documentation and include the resource_json file in docs. Even your markdown is incomplete.
🔍 Policy Check ResultsStatus: ✅ All checks passed Test Output |
🔍 Policy Check ResultsStatus: ✅ All checks passed Test Output |
jinglong857
left a comment
There was a problem hiding this comment.
Hi @Mohmaed-AA00, Thank you for providing the documentation but the json files must document all resource arguments, not just security-relevant ones. For attributes with no security impact, include them with security_impact: false and a rationale explaining why no policy was implemented. Do not delete them. Look at how other resources in the project handle this Please also address feedback mentioned below.
| { | ||
| "condition": "Storage Transfer agent pool name must not use disallowed values.", | ||
| "attribute_path": ["name"], | ||
| "values": ["nc"], |
There was a problem hiding this comment.
The policy blacklists only the single value "nc". "nc" is the test resource label, not a meaningful unsafe pool name. A real name policy would enforce an approved naming convention, for example a pattern_blacklist for names starting with "goog" (which the Terraform docs explicitly prohibit), or a whitelist of approved name patterns.
| { | ||
| "condition": "Storage Transfer job must not use an unapproved AWS IAM role ARN.", | ||
| "attribute_path": ["transfer_spec", 0, "aws_s3_data_source", 0, "role_arn"], | ||
| "values": ["arn:aws:iam::123456789012:role/unsafe-role"], |
There was a problem hiding this comment.
The blacklist contains only one specific ARN: "arn:aws:iam::123456789012:role/unsafe-role". Would be better to use a whitelist of approved ARN patterns
| "security_impact": null, | ||
| "rationale": null, | ||
| "compliant": null, | ||
| "security_impact": false, |
There was a problem hiding this comment.
name.security_impact: false contradicts an implemented policy. A policy was implemented for name, so security_impact should be true.
🔍 Policy Check ResultsStatus: ❌ CHECKS FAILED Test Output |
jinglong857
left a comment
There was a problem hiding this comment.
Hi @Mohmaed-AA00 , the auto policy check failed. Please address it and address my earlier feedback regarding documentation. Do not delete arguments that are not security relevant, include them with security_impact: false and rationale explaining why no policy was implemented.
🔍 Policy Check ResultsStatus: ✅ All checks passed Test Output |
jinglong857
left a comment
There was a problem hiding this comment.
Hi @Mohmaed-AA00 , you still haven't addressed my earlier feedback regarding your documentation. Include all arguments in your documentation, if they are not security relevant provide rationale why, do not omit them. Additionally, ensure your documentation matches your terraform configuration and policy implementation. If you're not sure how document is done, please refer to the upskilling guide.
No description provided.