Siemka, mamy taką sytuację:
Mamy serwer z frontem, mamy osobny serwer backendowy i osobno autoryzację przez firebase'a.
I teraz chcielibyśmy umożliwić zalogowanym użytkownikom pobieranie plików z tego backendu.
Jak to najlepiej rozwiązać? Czy najprostszym sposobem będzie weryfikacja ID Tokenu z firebase'a na backendzie, zwrócenie nowego krótkotrwałego tokenu (np. 1s) i download pliku z linku z tokenem w parametrze? Czy może to jakoś inaczej powinno wyglądać? Lub jest jakiś inny łatwiejszy sposób?
Czy dobrze rozumiem że problem jest taki że chcecie dać faktycznie link
(więc tym samym nie ma jak przemycić tokena, co najwyzej cookie)? Może zrobić sobie cookie w którym będzie ten ID token i w backendzie odczytać sobie to cookie i zweryfikować? Bo nic innego z kliknięcia w link nie pójdzie do serwera.
Alternatywa taka jak napisałeś, jakieś krótko żyjące ID za pomocą którego user może ściągnąć plik.
@Shalom: Nie musi być to stricte link, chodzi niemniej o to, żeby użytkownik finalnie skutek był taki sam czyt. żeby użytkwonik mógł pobrać plik (ale bez takich cudów, że trzeba byłoby czekać aż cały blob się załaduje i dopiero wtedy zacząć zapis na dysk). Z cookie chcieliśmy akurat zrezygnować na rzecz JWT, ze względu na CORS'y z którymi mieliśmy masę problemów :/
- Nie wiem co ma CORS do cookies :)
- Niestety nie widzę innych opcji za bardzo. W przypadku linku (czy innej podobnej akcji) jedyne co leci razem z requestem to cookies i parametry więc jedynie tam możesz coś ulokować.