RestoreTableToPointInTime is unimplemented and denies on a different action than the service
Los mantenedores suelen responder en 2 días
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 48/100
- Tipo de issue
- Error
- Claridad
- Bastante claro
- Estado de actividad
- Activo
- Stack tecnológico
- rust
- Área
- authorization, backend, databases
Línea de trabajo
Start with handle_restore_table_to_point_in_time in crates/engine/src/backup.rs and trace how restore authorization is ordered for source and target table ARNs. Compare the no-policy deny and authorized-caller validation behavior with the DynamoDB cases described in the issue. Done means the deny identifies the target table’s item action and invalid index source ARNs return the stated validation message; implementing restore itself may require broader design work.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
What ExtendDB does
handle_restore_table_to_point_in_time in crates/engine/src/backup.rs returns ValidationException with the message Point-in-time recovery restore is not yet supported without reading SourceTableArn. For a caller with no policy, ExtendDB denies on dynamodb:RestoreTableToPointInTime on the source table's base ARN.
What DynamoDB does
For a caller with no policy and an index SourceTableArn, DynamoDB denies on dynamodb:Scan on the target table, because it checks the target item actions first. For an authorized caller with an index source, DynamoDB returns ValidationException with the message Invalid Request: Table ARN is invalid.. Measured on 2026-10-22 for a caller with no policy and for an admin.
Effect
An authorized restore fails on ExtendDB because the feature is not implemented. For a no-policy caller the deny names dynamodb:RestoreTableToPointInTime on the source where the service names dynamodb:Scan on the target, so a policy calibrated to the service's deny sees a different action and resource. The error code matches the service for the no-policy case. The action, the resource, and the authorized-caller message do not.
Suggested fix
Implement point-in-time restore. Until then, authorize the target table's item actions before the restore action, so the deny names the same action and resource the service names, and return Invalid Request: Table ARN is invalid. after authorization for a source ARN that is not a table.
- Lenguaje dominante
- Rust
- Estrellas
- 517
- Forks
- 60
- Merge medio
- 2 d 15 h
- PR fusionados (30 d)
- 24
Preparar el entorno
- Incluye un Dockerfile o un archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de ExtendDB/extenddb
-
[storage.cassandra] accepts unknown keys silentlyPosiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
Los mantenedores suelen responder en 2 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 2 días
-
documentation
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
Los mantenedores suelen responder en 2 días
-
UpdateTable GSI create on an undefined key attribute: sentence differs from the servicePosiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abiertobug
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
Los mantenedores suelen responder en 2 días
-
UpdateTable: the missing StreamViewType sentence differs from the servicePosiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abiertobug
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
Los mantenedores suelen responder en 2 días
Todos los issues de ExtendDB/extenddb
Issues similares
-
units: No `#` in rustdoc headingAbierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 67/100
rust-bitcoin/rust-bitcoin#7089 · 1 comentario · 1 reacción ·
Los mantenedores suelen responder en 2 días
-
area/tools bug session-analysis
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 1 día
-
[Bug]: Python OpenTelemetrySectionConfig has no file_sinksQuizá libre de nuevo Un pull request para esta issue se cerró sin fusionarse. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
NVIDIA/NeMo-Relay#1514 ·
Los mantenedores suelen responder en 1 día
-
prompting proposal tool triaged
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
can1357/oh-my-pi#17041 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
README crane example out of dateAbierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 84/100
nix-community/fenix#262 ·