Security w aplikacji webowej

Security w aplikacji webowej
WE
  • Rejestracja:około 7 lat
  • Ostatnio:ponad 5 lat
  • Postów:53
0

Cześć,
piszę z pytaniem gdzie dobrze poczytać/złapać informacje o tym jak dobrze postawić Security swojej apki (rejestracja, hashowanie haseł, dostępy dla ról, walidacje, jakieś tokeny (JWT np.) żeby to solidnie stworzyć w Javie. Może być to na bazie Spring Security, ale mogą być też pomysły jak samemu poniekąd takie Security dobrze postawić.

Z góry dzięki.

Belka
  • Rejestracja:prawie 8 lat
  • Ostatnio:5 dni
  • Lokalizacja:PL
  • Postów:452
0

https://www.baeldung.com/security-spring

Zerknij, dużo fajnych artykułów. Ogólnie raczej solidna stronka, aż dziw że nie natrafiłeś na nią szukając samodzielnie w google, bo u mnie często się pojawia na górze w wynikach wyszukiwania.

Charles_Ray
  • Rejestracja:około 17 lat
  • Ostatnio:około 2 godziny
  • Postów:1880
0

Polecam ten tutorial, kiedyś był w formie 6-częściowej, teraz single page: https://spring.io/guides/tutorials/spring-security-and-angular-js/


”Engineering is easy. People are hard.” Bill Coughran
danek
  • Rejestracja:ponad 10 lat
  • Ostatnio:8 miesięcy
  • Lokalizacja:Poznań
  • Postów:797
0

To co wyżej, tylko to jest dopiero wierzchołek góry lodowej. Tak na prawdę, przy czymś większym szybko gotowe mechanizmy przestają wystarczać (np potrzebujesz jakichś ról w określonym konktekście). Często z gotowymi rozwiązaniami też jest ten problem, że są spoko póki działają :P

Co do tego jak to robić dobrze: czytaj, oglądaj nagrania z prezentacji i przede wszystkim jeśli masz czas: eksperymentuj i wrzucaj potem kod do oceny ;) Sam właśnie staram się wymyślić jak zrobić zarządzanie dostępami w apikacji zupełnie nie springowej (można by powiedzieć 'ręcznie') i jest to też fajna forma nauki.


Spring? Ja tam wole mieć kontrole nad kodem ᕙ(ꔢ)ᕗ
Haste - mała biblioteka do testów z czasem.
Charles_Ray
  • Rejestracja:około 17 lat
  • Ostatnio:około 2 godziny
  • Postów:1880
0
danek napisał(a):

To co wyżej, tylko to jest dopiero wierzchołek góry lodowej. Tak na prawdę, przy czymś większym szybko gotowe mechanizmy przestają wystarczać (np potrzebujesz jakichś ról w określonym konktekście). Często z gotowymi rozwiązaniami też jest ten problem, że są spoko póki działają :P

Co do tego jak to robić dobrze: czytaj, oglądaj nagrania z prezentacji i przede wszystkim jeśli masz czas: eksperymentuj i wrzucaj potem kod do oceny ;) Sam właśnie staram się wymyślić jak zrobić zarządzanie dostępami w apikacji zupełnie nie springowej (można by powiedzieć 'ręcznie') i jest to też fajna forma nauki.

Nie zgodzę się. Takie Spring Security spokojnie ogrywa 90% przypadków. Po drugie, z security jest jak ze współbieżnością - lepiej nie pisać tego samemu, bo można się sparzyć. Polecam poczytać aktualną listę bugów w Spring Security (co by nie mówić bardzo dojrzały projekt), żeby zobaczyć, ile rzeczy może pójść nie tak :) https://github.com/spring-projects/spring-security/issues?utf8=%E2%9C%93&q=is%3Aissue+is%3Aopen+SEC+in%3Atitle+


”Engineering is easy. People are hard.” Bill Coughran
danek
  • Rejestracja:ponad 10 lat
  • Ostatnio:8 miesięcy
  • Lokalizacja:Poznań
  • Postów:797
0

@Charles_Ray: do rejestracji, hashowania haseł, dostępu do odpowiednich metod przez odpowiednie osoby, JWT wcale nie jest potrzebna taka kobyła jak spring ;) Zwłaszcza, że często chcesz mieć 'role' userów nie tylko w kontekscie globalnym (całej aplikacji), a jej jakiegoś wycinka więc i tak musisz to opakować w jakąś swoją logikę.


Spring? Ja tam wole mieć kontrole nad kodem ᕙ(ꔢ)ᕗ
Haste - mała biblioteka do testów z czasem.
WE
  • Rejestracja:około 7 lat
  • Ostatnio:ponad 5 lat
  • Postów:53
0

Właśnie tego się z lekka obawiam czy te gotowe rzeczy Springowe pozwolą mi na wszystko co chcę. W zasadzie to będzie prosta apka, bo endpointów nie będzie wiele przez to, że cały clue tego wszystkiego będzie wykonywał się z tyłu - asynchronicznie. No, ale będę musiał pooglądać jakieś prezentacje, pomysły Springowego Security i jakoś przetworzyć na swoje zapotrzebowania. Ogólnie jakie są teraz standardy zabezpieczeń webówek? Co się stosuje?

danek
  • Rejestracja:ponad 10 lat
  • Ostatnio:8 miesięcy
  • Lokalizacja:Poznań
  • Postów:797
0

Stosuje się rozwiązanie adekwatne do problemu, a nie na odwrót ;)
Co konkretnie chcesz zrobić?


Spring? Ja tam wole mieć kontrole nad kodem ᕙ(ꔢ)ᕗ
Haste - mała biblioteka do testów z czasem.
WE
  • Rejestracja:około 7 lat
  • Ostatnio:ponad 5 lat
  • Postów:53
0

Ogólnie w skrócie to będzie scrappowało HTML, korzystało z RSS, zewnętrznych gotowych API serwisów i pobierało dane rzeczy do mnie, pozostała rzecze to typowe funkcje społecznościowe jakichś portali: rejestracja, logowanie, komentarze, subskrypcja po serwisie/tagu, przeglądanie wyciagniętych rzeczy. Do tego podział na role, gdzie niektóre role będą miały większe uprawnienia niż zwykły user, a user niepotwierdzony to READ ONLY. W sumie takie podstawowe rzeczy - nic zaawansowanego. Główne clue to to asynchroniczne korzystania z zew. serwisów, scrappowanie i extract RSS.

danek
  • Rejestracja:ponad 10 lat
  • Ostatnio:8 miesięcy
  • Lokalizacja:Poznań
  • Postów:797
0

Front będzie osobną aplikacją?


Spring? Ja tam wole mieć kontrole nad kodem ᕙ(ꔢ)ᕗ
Haste - mała biblioteka do testów z czasem.
WE
  • Rejestracja:około 7 lat
  • Ostatnio:ponad 5 lat
  • Postów:53
0

Zapewne tak, to będzie jakiś angular/react.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.