ben zhang
815ef9bbc4
Fix cancellation of macOS user-verification prompts ( #53790 )
...
## Why
Keychain signing reconstructs its own authentication context, so invalidating the caller's context does not reliably cancel the context that owns the biometric prompt.
## What changed
Evaluate the stored key's access-control policy explicitly with `LAContext` before signing. On cancellation, invalidate that context and wait for its authorization callback before releasing the lifecycle lock, rejecting any late success. Reload the key with the authorized context and disable further interaction so signing cannot open another prompt.
## Testing
Update unit tests to cover waiting for cancellation completion and rejecting completed authorization after cancellation. Add an ignored macOS hardware test and setup instructions covering persisted Secure Enclave key reuse, signature verification, cancellation, retry signing, and cleanup.
GitOrigin-RevId: 4ea9756430c5649654e95e047d1666617503072c
2026-10-13 22:40:57 +00:00
..
2026-10-12 13:39:54 +00:00
2026-10-07 12:47:04 +00:00
2026-10-09 13:15:39 +00:00
2026-10-08 05:29:11 +00:00
2026-09-30 00:51:39 +00:00
2026-10-13 22:21:31 +00:00
2026-10-11 15:57:06 +00:00
2026-10-13 19:36:44 +00:00
2026-10-13 22:21:31 +00:00
2026-10-08 20:11:43 +00:00
2026-10-06 17:26:19 +00:00
2026-10-12 11:24:22 +00:00
2026-10-12 15:43:27 +00:00
2026-09-18 00:25:37 +00:00
2026-10-06 23:44:17 +00:00
2026-09-23 00:47:34 +00:00
2026-10-09 21:29:36 +00:00
2026-10-07 22:11:14 +00:00
2026-09-30 18:49:29 +00:00
2026-10-13 19:36:44 +00:00
2026-10-01 22:32:29 +00:00
2026-09-29 13:58:09 +00:00
2026-09-29 03:32:19 +00:00
2026-10-10 08:51:21 +00:00
2026-10-10 08:51:21 +00:00
2026-10-08 19:15:17 +00:00
2026-10-10 02:14:13 +00:00
2026-10-13 15:24:00 +00:00
2026-09-25 00:20:02 +00:00
2026-09-24 01:50:36 +00:00
2026-10-13 16:23:44 +00:00
2026-10-13 19:55:22 +00:00
2026-10-10 01:25:00 +00:00
2026-10-13 22:21:31 +00:00
2026-10-06 23:28:55 +00:00
2026-09-23 22:20:34 +00:00
2026-10-13 19:28:21 +00:00
2026-10-08 20:11:43 +00:00
2026-10-13 16:57:54 +00:00
2026-10-13 20:40:38 +00:00
2026-10-13 20:40:38 +00:00
2026-10-13 20:40:38 +00:00
2026-10-13 16:15:41 +00:00
2026-10-13 18:15:50 +00:00
2026-10-07 11:18:05 +00:00
2026-10-01 09:52:54 +00:00
2026-10-07 17:59:22 +00:00
2026-10-13 17:22:34 +00:00
2026-10-01 15:57:03 +00:00
2026-10-13 15:05:16 +00:00
2026-10-10 01:25:00 +00:00
2026-10-13 12:51:12 +00:00
2026-10-09 15:13:29 +00:00
2026-10-08 16:19:09 +00:00
2026-09-29 22:24:09 +00:00
2026-10-09 15:29:50 +00:00
2026-10-08 20:11:43 +00:00
2026-10-10 19:43:24 +00:00
2026-10-08 20:11:43 +00:00
2026-10-07 18:32:50 +00:00
2026-10-02 23:26:27 +00:00
2026-10-06 01:46:33 +00:00
2026-10-09 22:11:30 +00:00
2026-10-12 23:46:16 +00:00
2026-10-13 10:21:42 +00:00
2026-10-06 21:29:35 +00:00
2026-10-10 01:14:28 +00:00
2026-10-13 22:21:31 +00:00
2026-10-10 02:54:59 +00:00
2026-10-12 18:53:49 +00:00
2026-10-07 22:11:14 +00:00
2026-10-13 16:23:44 +00:00
2026-10-13 17:54:31 +00:00
2026-10-07 07:57:14 +00:00
2026-10-09 22:11:30 +00:00
2026-09-24 18:08:31 +00:00
2026-10-08 16:19:09 +00:00
2026-10-13 22:07:59 +00:00
2026-10-10 01:25:00 +00:00
2026-10-02 00:46:14 +00:00
2026-10-12 17:52:12 +00:00
2026-10-13 07:32:21 +00:00
2026-10-10 01:25:00 +00:00
2026-10-10 01:25:00 +00:00
2026-10-13 22:21:31 +00:00
2026-10-01 18:05:05 +00:00
2026-10-13 22:40:57 +00:00
2026-10-10 01:25:00 +00:00
2026-10-01 15:57:03 +00:00
2026-09-23 04:25:28 +00:00
2026-09-22 23:37:39 +00:00
2026-10-08 01:12:16 +00:00
2026-10-12 16:58:24 +00:00
2026-09-23 00:47:07 +00:00
2026-10-01 15:57:03 +00:00
2026-10-07 22:11:14 +00:00
2026-10-13 22:40:57 +00:00
2026-10-13 16:15:41 +00:00
2026-10-12 13:39:54 +00:00