feat: flag S3 buckets without a full public access block

Open Beginner friendly
#136 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
65/100
Issue type
Feature
Clarity
Clearly specified
Activity status
Active
Tech stack
aws, rust
Domain
cloud, security

Research direction

The issue points to src/app/findings.rs and the docs/recipes/add-a-finding.md recipe; read the recipe first and check whether blocker #135 has merged. Add the model predicate and finding rule, with tests for Some(true), Some(false), and None, then update docs/findings-roadmap.md and add a minor changeset. Done when the required Rust checks pass.

Written by the indexing model from the issue text.

Description

good first issue size: XS

Why

A bucket without all four public access block settings on is one bad policy away from public.

Follow docs/recipes/add-a-finding.md.

Steps

  1. Predicate: public access block is Some(false). None means unknown and must stay quiet.
  2. Rule s3_public_access_block_missing (Hygiene, High).
  3. Tests for Some(true), Some(false), and None.

Where to look

  • src/app/findings.rs

Done when

  • Predicate on the model with unit tests (one firing case, one quiet case)
  • Rule added to FINDING_RULES with tests in src/app/findings.rs
  • docs/findings-roadmap.md lists the rule under Current Findings
  • Changeset added (minor)
  • cargo fmt --all, cargo clippy --all-targets -- -D warnings, and cargo test --all pass, with output pasted in the PR

Check against AWS

Optional. Unit tests are enough for this issue.

Blocked by

#135. Start this after that is merged.

Size: XS. Read docs/recipes/README.md before starting.

Dominant language
Rust
Stars
2
Forks
0
Avg merge
4h 8m
Merged PRs (30d)
8

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from fells-code/seamless-glance

All issues in fells-code/seamless-glance

Similar issues

More Rust issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.