Jak użyć rest przy logowaniu security basic?

Jak użyć rest przy logowaniu security basic?
  • Rejestracja: dni
  • Ostatnio: dni
0

Cześć robię logowanie przy użyciu security basic, nigdy wcześniej nie pracowałem ze Springiem. Robię back-end i kolega front-end potrzebuje zrobić kontroler który będzie pobierał login i hasło. Jak napisać taki kontroler? Umiem napisać taki żeby zwracał widok jsp albo pobierał z jsp dane ale nie wiem jak zrobić żeby działał czysto back-endowo, zebym uzyc rest? Zeby pierw wyswitlił okno do logowania a pozniej pobral login i haslo

Shalom
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Space: the final frontier
  • Postów: 26433
0

Nie do końca rozumiem pytanie. Przecież skoro używanie spring security to wystarczy że zaimplementujesz sobie UserDetailsService i skonfigurujesz poprawnie Spring Security żeby go używać. Żadnych kontrolerów pisać nie musisz.
Pierwszy link z google:
http://www.javablog.eu/java/implementacja-uwierzytelniania-w-spring-security/ ;]

  • Rejestracja: dni
  • Ostatnio: dni
0

czyli nie potrzebuje kontrolera zeby przetworzyć zadanie logowani które przyjdzie od front-endu ? Mam zrobioną rejestracje. Mam kotroler, DAO, service i model. Dane zapsuja mi się do bazy ( login i haslo) przez Hibernate. Jak mogę pobrać login i haslo w momencie logowania? Czy mogę zrobić to na poziomie XML ? Przepraszam za takie banalne pytania ale springiem zajelem sie od 1,5 tyg

Shalom
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Space: the final frontier
  • Postów: 26433
0

Czy ten artykuł który podałem gryzie? o_O Nawet na niego nie zerknąłeś!
No całkiem XMLem to nie, ale wystarczy ze napiszesz sobie UserDetailsProvider który będzie sie zajmował sprawdzeniem czy user sie moze zalogować.
W xmlu będziesz miał:

Kopiuj
<authentication-manager>
    <authentication-provider user-service-ref='myUserDetailsService' />
</authentication-manager>
 
<bean id="myUserDetailsService" class="pakiet.MyUserDataService" />

Implementujesz tą jedna klasę i voila!

  • Rejestracja: dni
  • Ostatnio: dni
0

Dziękuję za odpowiedz. A jak mogę to zmienić żeby działał z rest-em?

Kopiuj
  
    @RequestMapping(value = "new", method = RequestMethod.GET )
    public String getRegistrationForm(Model model){
        log.info("View registrationForm ");
        model.addAttribute("account", new AccountForm());
        return "users/registartionForm";
        
    }
    
    
    @RequestMapping(value = "", method = RequestMethod.POST)
    public String postRegistrationForm(@ModelAttribute("account")
                                       @Valid AccountForm form,
                                       BindingResult bindingResult){
        convertPasswordError(bindingResult);
        accountService.registerAccount(toAccount(form), form.getPassword(), bindingResult);
        log.info("Create registration : ", form);
        return  "redirect:registration_ok";
    }
    
    private Account toAccount(AccountForm form){
            Account account = new Account();
            account.setEmail(form.getEmail());
            return account;

              }
Shalom
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Space: the final frontier
  • Postów: 26433
0

Nie bardzo rozumiem pytanie. Co to u ciebie znaczy "działać z restem"? Żeby nie generować widoku tylko zwrócić jsona jakiegoś? W Spring 4 masz nową adnotacje @RestController
http://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/web/bind/annotation/RestController.html
Jeśli używasz wcześniejsze wersji Springa to musisz dodać @ResponseBody do sygnatury metody która ma zwracać tego jsona.

  • Rejestracja: dni
  • Ostatnio: dni
0

wlasnie mi o to chodziło dziękuje. A w samym kodzie muszę coś zmieniać, oprócz dodania @...?

Shalom
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Space: the final frontier
  • Postów: 26433
0

Jeśli pchasz same stringi to nie musisz. Jakbyś chciał serializować obiekty jako jsona to musisz to odpowiednio skonfigurować.
Tutaj masz przykład: https://github.com/Pharisaeus/SpringScaffoldApplication/blob/master/src/main/webapp/WEB-INF/spring-context.xml

  • Rejestracja: dni
  • Ostatnio: dni
0

dziekuej

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.