• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Autoryzacja w React vs fake data base

Aruba Cloud VPS - 50% taniej przez 3 miesiące!
0 głosów
455 wizyt
pytanie zadane 2 lipca 2019 w JavaScript przez lukja Nowicjusz (200 p.)

Dostałem do zrobienia projekt. Sklep internetowy w React. Z racji tego, że uczę się frontendu dostałem "gotowy" backend (a przynajmniej tak mi się wydawało), w postaci fakowej bazy danych (link). Dostałem również dane do tej bazy. 

Poniżej mam todosy do wykonania.
- Password should be kept securely in case our database is compromised.
- The passwords we provide you in our current database should be encrypted and then stored in the DB.
- New users will always have role user (only current admin can have this role)
- After registration, and logging in they have access to the "Shop" page, "Cart" page and "Orders" page.

Ten backend to nie jest backend tylko baza danych. Czy mając Reacta i tą bazę mogę wykonać powyższe zadania?

Tzn czy mogę szyfrować hasła i zapisywać je w bazie danych? I później również z poziomu Reacta logować się i wyświetlać wartość strony warunkowaną tym czy użytkownik to user czy admin?

Z góry dzięki!

1 odpowiedź

+1 głos
odpowiedź 2 lipca 2019 przez Tomek Sochacki Ekspert (227,490 p.)
wybrane 2 lipca 2019 przez lukja
 
Najlepsza

Tzn czy mogę szyfrować hasła i zapisywać je w bazie danych?

Nie, takie operacji robi back-end i koniec kropka. Ty z frontu tylko wysyłasz dane, mogą sobie byc jakos zaszyfrowane itp. to nie ma znaczenia tutaj, ostateczne szyfrowanie i zapis zawsze ale to zawsze robi back-end. Jeśli dają Ci API to musisz mieć endpoint to zapisu usera, jeśli go nie ma to ja bym napisał wprost, że taka operacja musi być robiona w API i client-side to nie miejsce na takie rzeczy.

I później również z poziomu Reacta logować się i wyświetlać wartość strony warunkowaną tym czy użytkownik to user czy admin?

To już jak najbardziej właśnie zabawa client-side. Możesz zrobić sobie warunki na froncie decydujące o tym, jaki content wyświetlić. Natomiast info o tym czy to user zwykły czy admin musi być z back-endu, ja preferuję np. jakąs flagę przy danych usera. Natomiast tak czy inaczej nawet jeśli masz w response flagę admin to i tak każdy strzał jako admin musi być zabezpieczony w API wcześniejszym sprawdzeniem, czy na pewno jesteś kontem admina.

 

Co do tego dostępu jako zalogowany to najprościej to chyba zrobić po normalnemu, czyli zrobić odpowiednie guardy na routingu.

komentarz 2 lipca 2019 przez lukja Nowicjusz (200 p.)
Dzięki, za mega szybką odpowiedź!

Co byś polecił w takim wypadku? Napisać sobie jakiś prosty backend w Node.js?

Albo Firebase od googla? Czytam właśnie, że tam też jest autoryzacja.
1
komentarz 2 lipca 2019 przez Tomek Sochacki Ekspert (227,490 p.)
po pierwsze to jasno napisz gdzie w komentarzu czydo cos, ze takie zapisy do bazy i szyfrowanie to sprawa api, aby widzieli, że wiesz co i jak.

i teraz pytanie, w sumie jesli napiszesz, że klient może być ryzykowny itp. to ten firebase moze być, napisz, że uzywasz go w celach pokazania, że umiesz pracować z API itp. takie coś jak dlachcesz mnie bylobyto spoko.

api wTwoja nodzie tez może być tylko w sumie ten firebase może nawet lepiej pokze, ze umiesz szukać różnych rozwiązań i czytac dojumentacje takich narzedzi... wg mnie lepszy firebase jak na zadanie pewnie rekrutacyjbe?
komentarz 2 lipca 2019 przez lukja Nowicjusz (200 p.)
Zrobię tak jak piszesz :)

Tak na zadanie rekrutacyjne.

 

Dzięki wielkie raz jeszcze.
1
komentarz 2 lipca 2019 przez Tomek Sochacki Ekspert (227,490 p.)
pamietaj, że w takich zadaniach mniej chodzi o sam kod, a bardziej o umiejętność podejscia do problemu :) i czasami niektore zadania są troche podchwytliwe

Podobne pytania

0 głosów
1 odpowiedź 204 wizyt
0 głosów
0 odpowiedzi 129 wizyt
pytanie zadane 6 lipca 2017 w JavaScript przez Konrad Fx Mądrala (6,910 p.)
0 głosów
3 odpowiedzi 446 wizyt
pytanie zadane 9 lutego 2020 w Algorytmy przez michal Mądrala (5,560 p.)

93,163 zapytań

142,174 odpowiedzi

321,912 komentarzy

62,490 pasjonatów

Advent of Code 2024

Top 15 użytkowników

  1. 453p. - dia-Chann
  2. 453p. - Marcin Putra
  3. 447p. - Łukasz Piwowar
  4. 443p. - CC PL
  5. 431p. - Łukasz Eckert
  6. 428p. - rafalszastok
  7. 423p. - Michal Drewniak
  8. 423p. - Adrian Wieprzkowicz
  9. 418p. - rucin93
  10. 410p. - Piotr Aleksandrowicz
  11. 408p. - ksalekk
  12. 402p. - Mariusz Fornal
  13. 401p. - Dawid128
  14. 383p. - Hubert Chęciński
  15. 340p. - ssynowiec
Szczegóły i pełne wyniki

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Wprowadzenie do ITsec, tom 1 Wprowadzenie do ITsec, tom 2

Można już zamawiać dwa tomy książek o ITsec pt. "Wprowadzenie do bezpieczeństwa IT" - mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy aż 15% zniżki! Dziękujemy ekipie Sekuraka za fajny rabat dla naszej Społeczności!

...