Aplikacia do zarządzania bibliografią. Umożliwia:
- dodawanie plików
- pobieranie dodanych plików
- dodawanie pozycji bibliograficznych
- usuwanie pozycji bibliograficznych
- pokazywanie plików przypiętych do pozycji bibliograficznych
Przechowuje dane o użytkownikach, ich plkach i pozycjach bibliograficznych. Umożliwia autoryzację przez JWT. JWT musi być przesyłany w nagłówku Authorization wg schematu:
Bearer jwt
Backend aplikacji działą pod tym adresem
Strona internetowa aktualnie pozwala na:
- utworzenie nowego użytkownika
- logowanie
- udostępnianie plików
- wyświetlanie inormacji o posiadnych plikach
Aplikacja mobilna umożliwia logowanie oraz listowanie bibliografii i plików
W celu uruchomienia aplikacji lokalnie należy w głównym folderze projektu uruchomić skrypt
start.sh
Po wykonaniu tych komend strona powinna działać pod tym adresem
Serwer aplikacji jest udokumentowany w Swaggerze. Dokumentacja jest dostępna pod adresem
- Strona internetowa działająca nawet w przeglądarkach niebługujących js
- Strona internetowa wykrywa rozszerzenie pliku i jeżeli jest to np pdf to podaje pełną nazwę rozszerzenia.
Aktualnie obsługiwane są
- dokumenty Worda
- OpenDocument(arkusze, dokumenty)
- Wszystkie dane wejściowe są walidowane
- Hasła przechowywane w bazie są hashowane za pomocą bcrypt o mocy 12(212 iteracji).
- Spowolnienie przetwarzania prośby o logowanie (poprzez hashowanie z dużą ilością iteracji)
- Kontrola siły hasła. Hasło musi mieć entropię przynajmniej
15 i musi spełniac poniższe warunki:
- Musi mieć przynajmniej 6 znaków
- Musi zawierać przynajmniej jedną wielką literę
- Musi zawierać przynajmniej jedną małą literę
- Musi zawierać przynajmniej jedną cyfrę
- nie może zawierać specjalnych znaków takich jak /<>{}'
- Po niepoprawnej próbie logowania podawana jest jedynie inforamcja, że dane nie były poprawne ale nie jest stwierdzane czy to nazwa użytkownika była niepoprawna czy hasło
TODO
- możliwość zmiany hasła
- udostępnianie publiczne plików