Piszę aplikację SPA AngularJS, która wywołuje Rest full web service. Back-end jest napisany na JAX-RS
, wdrożony na Tomcat 7
. Używam HTTPS, SSL
do przesyłania danych z SPA
do JAX-RS
Angular JS SPA z uwierzytelnianiem LDAP
wymagań
- muszę zrobić uwierzytelniania LDAP. (Poślę nazwę użytkownika & hasło do usługi internetowej i powinien dokonać uwierzytelnienia)
- muszę zrobić zarządzanie sesją użytkownika (ponieważ, gdy uwierzytelniony użytkownik wysyła żądanie do usługi internetowej, użytkownik nie musi ponownie uwierzytelnić)
problemy
Myślę, że są dwa sposoby prowadzenia uwierzytelniania LDAP:
- Uwierzytelnianie LDAP za pomocą rdzenia java http://docs.oracle.com/javase/jndi/tutorial/ldap/security/ldap.html
- Użyj zabezpieczenia Spring (nie jestem tego obeznany i nie jestem pewien, czy jest to możliwe. Myślę, że powinienem wysłać nazwę użytkownika & hasło, aby odpocząć. Usługa odpoczynku zostanie wyposażona w bibliotekę bezpieczeństwa sprężyn i będzie można korzystać z funkcji uwierzytelniania. Mam rację?)
Zarządzaj sesjami użytkowników. Po uwierzytelnieniu użytkownika należy go gdzieś zapisać, aby użytkownik mógł wykonywać operacje do momentu wygaśnięcia jego logowania. Jak mogę to zrobić?
Który sposób powinienem wybrać? W jaki sposób należy wykonać uwierzytelnianie LDAP podczas uwierzytelniania i zarządzania sesją ?
Czy ktoś może dać żadnej sugestię lub przykład łączy?
Dziękujemy! Czytałem ten artykuł, ale nadal nie jest jasne, dlaczego powinienem zapisać token w pliku cookie zamiast prostego identyfikatora sesji (zwrócony z serwera). Czy to jest bezpieczniejsze? – mariami
JWT nie są "bezpieczniejsze", ale stanowią lepszy sposób reprezentowania informacji uwierzytelniających. Nadal musisz się upewnić, że używasz plików cookie w bezpieczny sposób. Napisałem artykuł na temat aplikacji na jedną stronę i JWT, można go znaleźć tutaj: https://stormpath.com/blog/token-auth-spa/ – robertjd