Commit fd15768
authored
docs: OIDC-preferred + GitHub App token recommendations (Phases 2 + 3) (#25)
Closes #8 and #9. Documentation-only; no code change.
## Phase 2 (#8) — OIDC for AWS credentials
README's 'How to start' step 1 now leads with GitHub OIDC as the
preferred path and relegates static IAM access keys to a 'legacy'
Option B. Rationale: static keys don't rotate, live in GitHub
secrets indefinitely (permanent attack surface), and can't be
scoped to a specific repo/branch/environment. OIDC issues
short-lived STS tokens per run, scoped by repo/branch/environment.
Includes:
- A Terraform example for the trust-relationship IAM role with
a repo-scoped 'sub' StringLike condition.
- The minimum permissions policy (unchanged — attaches to role
or user).
- A workflow snippet showing 'permissions: id-token: write' and
'role-to-assume' instead of access-key secrets.
No changes to the action's code — it already reads AWS creds from
env, which configure-aws-credentials@v6 populates identically under
both paths.
## Phase 3 (#9) — GitHub token type preferences
README's 'How to start' step 2 replaced. Three token options
ordered by preference:
- A (preferred): GitHub App installation token via
actions/create-github-app-token. No human identity, short-lived,
minimal permission (Repository Administration: read/write).
- B: fine-grained PAT scoped to specific repos with just Repository
Administration. Better than classic PAT but still tied to a
human.
- C (deprecated): classic PAT with 'repo' scope. Over-permissive
and human-tied; kept in docs as a fallback for environments
that don't allow Apps or fine-grained PATs.
No code change — the action accepts any token that has permission
to manage self-hosted runners on the target repo. Docs change
only.
## Not included in this PR
- Phase 2's optional 'role-to-assume' input on the action itself
(so consumers don't need the separate configure-aws-credentials
step). Deferred — the current dual-step pattern is standard and
works fine. Convenience feature, not urgency.
Signed-off-by: yuriyryabikov <22548029+kurok@users.noreply.github.com>1 parent 6bb148b commit fd15768
1 file changed
Lines changed: 93 additions & 6 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
64 | 64 | | |
65 | 65 | | |
66 | 66 | | |
67 | | - | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
68 | 116 | | |
69 | | - | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
70 | 126 | | |
71 | 127 | | |
72 | 128 | | |
| |||
136 | 192 | | |
137 | 193 | | |
138 | 194 | | |
139 | | - | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
| 198 | + | |
| 199 | + | |
| 200 | + | |
| 201 | + | |
| 202 | + | |
| 203 | + | |
| 204 | + | |
| 205 | + | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
| 212 | + | |
| 213 | + | |
| 214 | + | |
| 215 | + | |
| 216 | + | |
| 217 | + | |
| 218 | + | |
| 219 | + | |
| 220 | + | |
| 221 | + | |
| 222 | + | |
| 223 | + | |
| 224 | + | |
| 225 | + | |
| 226 | + | |
| 227 | + | |
140 | 228 | | |
141 | | - | |
142 | | - | |
143 | | - | |
| 229 | + | |
| 230 | + | |
144 | 231 | | |
145 | 232 | | |
146 | 233 | | |
| |||
0 commit comments