Chris Lu
f5d26b803b
s3tables: Fix ListTables authorization and policy parsing
...
Make ListTables authorization consistent with GetTable/CreateTable:
1. ListTables authorization now evaluates policies instead of owner-only checks:
- For namespace listing: checks namespace policy AND bucket policy
- For bucket-wide listing: checks bucket policy
- Uses CanListTables permission framework
2. Remove owner-only filter in listTablesWithClient that prevented policy-based
sharing of tables. Authorization is now enforced at the handler level, so all
tables in the namespace/bucket are returned to authorized callers (who have
access either via ownership or policy).
3. Add flexible PolicyDocument.UnmarshalJSON to support both single-object and
array forms of Statement field:
- Handles: {"Statement": {...}}
- Handles: {"Statement": [{...}, {...}]}
- Improves AWS IAM compatibility
This ensures cross-account table listing works when delegated via bucket/namespace
policies, consistent with the authorization model for other operations.
2026-01-28 18:27:37 -08:00
..
2026-01-28 14:34:07 -08:00
2026-01-07 13:06:08 -08:00
2026-01-18 14:54:03 -08:00
2026-01-17 22:10:15 -08:00
2025-12-13 19:04:12 -08:00
2026-01-07 13:06:08 -08:00
2026-01-04 11:24:43 -08:00
2026-01-28 18:27:37 -08:00
2024-07-04 11:00:41 -07:00
2026-01-23 20:12:59 -08:00
2026-01-26 22:59:43 -08:00
2026-01-12 10:45:24 -08:00
2026-01-27 07:45:24 -08:00
2026-01-03 22:08:34 -08:00
2025-11-26 12:24:02 -08:00
2025-12-29 20:17:23 -08:00
2026-01-12 10:45:24 -08:00
2025-10-30 21:06:00 -07:00
2026-01-21 18:36:24 -08:00
2026-01-21 18:36:24 -08:00
2026-01-03 10:09:59 -08:00
2025-12-14 18:48:39 -08:00
2026-01-07 13:06:08 -08:00
2026-01-16 11:12:28 -08:00
2025-12-20 15:25:47 -08:00
2025-08-11 10:31:01 -07:00
2025-12-29 20:17:23 -08:00
2025-12-04 14:51:37 -08:00
2025-11-18 23:18:35 -08:00
2026-01-07 13:06:08 -08:00
2025-12-18 17:44:27 -08:00
2026-01-07 13:06:08 -08:00
2025-11-18 23:18:35 -08:00
2025-12-22 23:19:50 -08:00
2024-07-04 11:00:41 -07:00
2026-01-23 16:41:51 -08:00
2025-12-13 14:33:46 -08:00
2025-12-27 12:25:33 -08:00
2026-01-12 10:45:24 -08:00
2025-08-22 01:15:42 -07:00
2026-01-07 13:06:08 -08:00
2025-11-13 16:10:46 -08:00
2026-01-23 16:41:51 -08:00
2025-08-30 11:15:48 -07:00
2026-01-16 11:12:28 -08:00
2026-01-16 11:12:28 -08:00
2025-11-13 16:10:46 -08:00
2025-12-26 13:21:15 -08:00
2026-01-12 10:45:24 -08:00
2025-11-18 23:18:35 -08:00
2025-11-12 22:14:50 -08:00
2025-11-12 22:14:50 -08:00
2026-01-12 10:45:24 -08:00
2026-01-16 11:12:28 -08:00
2025-08-21 08:28:07 -07:00
2025-10-23 20:10:12 -07:00
2025-08-21 08:28:07 -07:00
2025-11-18 23:18:35 -08:00
2025-10-23 20:10:12 -07:00
2025-11-18 23:18:35 -08:00
2025-08-22 01:15:42 -07:00
2025-08-21 08:28:07 -07:00
2025-08-21 08:28:07 -07:00
2025-08-22 01:15:42 -07:00
2025-11-18 23:18:35 -08:00
2025-08-21 08:28:07 -07:00
2025-10-23 20:10:12 -07:00
2025-10-08 23:12:03 -07:00
2025-10-27 23:04:55 -07:00
2025-11-18 23:18:35 -08:00
2025-11-28 13:28:17 -08:00
2026-01-26 13:38:15 -08:00
2025-10-23 20:10:12 -07:00
2025-11-18 23:18:35 -08:00
2025-12-23 14:48:50 -08:00
2025-10-27 23:04:55 -07:00
2026-01-07 13:06:08 -08:00
2025-10-13 18:05:17 -07:00
2026-01-07 13:06:08 -08:00
2025-12-30 12:40:59 -08:00
2026-01-16 11:12:28 -08:00
2025-10-29 13:43:27 -07:00
2026-01-07 13:06:08 -08:00
2025-12-17 00:09:13 -08:00
2026-01-16 11:12:28 -08:00
2025-08-21 08:28:07 -07:00
2026-01-16 11:12:28 -08:00
2026-01-26 22:59:43 -08:00
2026-01-16 11:12:28 -08:00
2025-08-21 08:28:07 -07:00
2026-01-07 13:06:08 -08:00
2026-01-07 13:06:08 -08:00
2025-12-24 19:07:08 -08:00
2025-08-22 01:15:42 -07:00
2025-08-21 08:28:07 -07:00
2025-10-24 01:45:22 -07:00
2026-01-26 22:59:43 -08:00
2026-01-26 22:59:43 -08:00
2026-01-07 13:06:08 -08:00
2025-07-13 16:21:36 -07:00
2026-01-07 13:06:08 -08:00
2025-11-18 23:18:35 -08:00
2025-12-27 00:09:14 -08:00
2026-01-07 13:06:08 -08:00
2026-01-22 16:56:35 -08:00
2025-12-24 19:07:08 -08:00
2025-11-28 13:28:17 -08:00
2026-01-26 14:44:30 -08:00
2026-01-26 14:44:30 -08:00
2025-12-24 19:07:08 -08:00
2026-01-17 18:40:48 -08:00
2026-01-02 15:52:37 -08:00
2025-12-22 15:50:13 -08:00
2025-12-30 14:54:37 -08:00
2026-01-22 16:56:35 -08:00
2025-12-26 13:21:15 -08:00
2025-12-24 19:07:08 -08:00
2025-12-24 19:07:08 -08:00
2025-11-21 14:48:41 -08:00
2026-01-21 16:36:18 -08:00
2025-07-19 00:49:56 -07:00
2025-12-24 19:07:08 -08:00
2025-11-26 11:29:55 -08:00
2026-01-22 14:07:24 -08:00
2025-07-18 02:19:50 -07:00
2025-07-18 22:25:58 -07:00
2025-12-29 23:54:00 -08:00
2025-11-20 11:42:22 -08:00
2025-12-06 21:37:25 -08:00
2026-01-21 16:36:18 -08:00
2024-04-27 07:39:22 -07:00
2025-11-18 23:18:35 -08:00
2025-07-02 18:03:17 -07:00
2025-12-09 10:24:35 -08:00
2025-12-18 21:19:44 -08:00
2026-01-27 07:45:24 -08:00
2026-01-26 22:59:43 -08:00
2026-01-28 00:55:39 -08:00
2025-12-28 14:07:58 -08:00
2025-12-28 14:07:58 -08:00
2025-11-18 23:18:35 -08:00
2025-11-18 23:18:35 -08:00
2025-11-18 23:18:35 -08:00
2026-01-07 13:06:08 -08:00
2026-01-07 13:06:08 -08:00
2026-01-12 10:45:24 -08:00
2026-01-28 12:09:15 -08:00
2026-01-07 13:06:08 -08:00
2026-01-07 13:06:08 -08:00
2025-12-24 19:07:08 -08:00
2024-07-04 11:00:41 -07:00
2025-08-14 20:38:03 -07:00
2025-09-17 19:04:51 -07:00
2025-07-28 02:49:43 -07:00
2025-07-28 02:49:43 -07:00