Commit 2eaeabf
committed
[install] Stop resetting TCC grants on a Developer ID rebuild
A changed cdhash only invalidates a grant when the cdhash IS the
designated requirement, which is the ad-hoc case the check was written
for. A Developer ID signature's requirement is identifier plus Team ID
and is stable across rebuilds, so the grant survives one.
Resetting regardless meant re-granting Accessibility after every single
install — the exact cost that signing properly is supposed to remove.
Observed doing it twice within an hour of the switch to a Developer ID
build, each time telling the user that ad-hoc signing was the reason
while the bundle carried a full chain and a secure timestamp.
Solves: Accessibility re-prompt on every reinstall of a signed build
Tests: the ad-hoc check must precede and return before the tccutil call;
verified live — a forced cdhash mismatch on the signed bundle now
reports the grants carry over instead of clearing them1 parent 93be7cf commit 2eaeabf
2 files changed
Lines changed: 42 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
328 | 328 | | |
329 | 329 | | |
330 | 330 | | |
| 331 | + | |
| 332 | + | |
| 333 | + | |
| 334 | + | |
| 335 | + | |
| 336 | + | |
| 337 | + | |
| 338 | + | |
| 339 | + | |
| 340 | + | |
| 341 | + | |
| 342 | + | |
| 343 | + | |
| 344 | + | |
331 | 345 | | |
332 | 346 | | |
333 | 347 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
109 | 109 | | |
110 | 110 | | |
111 | 111 | | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
0 commit comments