Хранилище секретов принимает недоступный файл за отсутствующий
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 76/100
Research direction
Read src/Bydlo.Platform/SecretStores.cs at FileSecretStoreBase.LoadAsync (lines 31–47) and trace how secret file reads handle missing files and access errors. Add or locate tests for FileSecretStoreBase that distinguish a missing secret from an inaccessible one; done when missing files return ProfileSecrets.Empty and access failures raise SecretAccessException.
Written by the indexing model from the issue text.
Description
#375 добавил SecretAccessException при ошибках чтения, но FileSecretStoreBase.LoadAsync по-прежнему начинает с File.Exists. Этот API возвращает false также при ошибках доступа к пути, поэтому выполнение может вернуть ProfileSecrets.Empty до попытки чтения.
Сценарий: сохранён профиль HTTP с паролем, а каталог хранилища временно недоступен для процесса. File.Exists возвращает false. BackupArchive.HasRequiredSecrets допускает пустой набор для HTTP, и экспорт может завершиться архивом без существующих учётных данных. Восстановление также может принять пустой набор за достоверный снимок для отката.
Ожидается прямое чтение файла с возвратом Empty только при подтверждённом отсутствии (FileNotFoundException/DirectoryNotFoundException), а прочие ошибки доступа должны давать SecretAccessException. Добавить проверку различия между отсутствующим и недоступным секретом.
Код: https://github.com/endercodezz/BYDLO/blob/3363f21/src/Bydlo.Platform/SecretStores.cs#L31-L47
- Dominant language
- C#
- Stars
- 5
- Forks
- 1
- Avg merge
- 46m
- Merged PRs (30d)
- 179
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from endercodezz/BYDLO
-
dependencies go P3
Difficulty 5/5 Over a week Newbie friendliness 20/100
endercodezz/BYDLO#430 ·
Maintainers usually reply within 1 day
-
dependencies P3
Difficulty 4/5 3-5 days Newbie friendliness 48/100
endercodezz/BYDLO#429 ·
Maintainers usually reply within 1 day
-
dependencies github_actions P3
Difficulty 4/5 3-5 days Newbie friendliness 55/100
endercodezz/BYDLO#428 ·
Maintainers usually reply within 1 day
-
dependencies github_actions good first issue P3
Difficulty 3/5 1-2 days Newbie friendliness 52/100
endercodezz/BYDLO#427 ·
Maintainers usually reply within 1 day
-
dependencies P3
Difficulty 3/5 1-2 days Newbie friendliness 48/100
endercodezz/BYDLO#426 ·
Maintainers usually reply within 1 day
All issues in endercodezz/BYDLO
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
NethermindEth/nethermind#15684 ·
Maintainers usually reply within 1 day
-
area/ai-assistant squad/flyt
Difficulty 2/5 1-3 hours Newbie friendliness 83/100
Altinn/altinn-studio#21798 ·
Maintainers usually reply within 1 day
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
arastella625/DAORework#181 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 77/100
BEagle1984/silverback#280 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 63/100