Przechowuj i udostępniaj pliki za pomocą pakietu JavaScript SDK
Codzienne przepływy aura.storage z regułami dostępu obserwowanymi w odniesieniu do działającego stosu.
1. Wiadra
Wiadro grupuje pliki i decyduje, czy są one publiczne. Tworzenie i usuwanie segmentów wymaga klucza service_role. Do ich wystawienia potrzebny jest zalogowany użytkownik lub klucz service_role; sam klucz publiczny otrzymuje 403.
Wiadro akceptuje również fileSizeLimit (w bajtach) i allowedMimeTypes. Przesyłanie, które jest zbyt duże, zwraca 413, a niedozwolony typ zwraca 400.
2. Przesyłaj, pobieraj, wyświetlaj listę i usuwaj
Czego się spodziewać:
- Przesyłanie istniejącej ścieżki zwraca
409, chyba że przekażeszupsert: true. - Przesyłanie wymaga zalogowanego użytkownika lub klucza
service_role. Sam klucz publiczny otrzymuje403, nawet w przypadku segmentu publicznego. - Ścieżka z
..została odrzucona z400. - Ścieżki są współdzielone w zasobniku. Jeśli inny użytkownik ma już ścieżkę, otrzymasz
409. Umieść pliki każdego użytkownika w jego własnym folderze, na przykład${user.id}/….
3. Udostępnij plik
Obydwa linki zostały pobrane bez klucza i zwróciły plik. Podpisane łącze przestaje działać po expires_in sekundach. Aby przeglądarka mogła przesyłać dane bez klucza, serwer wysyła createSignedUploadUrl(path) (wywołanie service_role).
4. Kto i co może zrobić
| Działanie | Klucz publiczny | Zalogowany użytkownik | service_role |
|---|---|---|---|
| Przeczytaj plik w zasobniku publicznym | Tak | Tak | Tak |
| Przeczytaj, wypisz plik w prywatnym wiadrze | NIE | tylko jego właściciel | Tak |
| Wgrywać | NIE | Tak | Tak |
| Zastąp lub usuń plik | NIE | tylko jego właściciel | Tak |
| Lista wiader | NIE | Tak | Tak |
| Twórz i usuwaj segmenty | NIE | NIE | Tak |
Właścicielem jest użytkownik, który przesłał plik. W rzeczywistości drugi użytkownik nie mógł wyświetlić, pobrać ani usunąć pliku pierwszego użytkownika w prywatnym zasobniku, a także nie mógł go zastąpić.
5. Przenieś i skopiuj z serwera
Zmiana rozmiaru obrazu jest opisana w w dokumencie dotyczącym przechowywania.