Wpis z mikrobloga

Siema mirki, dalej mam problem z springiem boot i zabezpieczaniem endpointów
W tutorialach często widzę taki kawał kodu

@Override
protected void configure(HttpSecurity http) throws Exception {
// ...
.antMatchers("/protectedbyrole").hasRole("USER")
.antMatchers("/protectedbyauthority").hasAuthority("READ_PRIVILEGE")

Okej, wydaje się łatwe, tylko jak nadać Entity user role i authority? Nie mogę tego nigdzie znaleźć. Nie chcę trzymać userów "in memory", chcę by to było pole w bazie i uprawnienia również tam siedziały.
#java #spring
Przykładowe entity user

@Entity
public class User {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Integer id;

private String name, email;

@Override
public String toString() {
return "User{" +
"id=" + id +
", name='" + name + '\'' +
", email='" + email + '\'' +
'}';
}

public Integer getId() {
return id;
}

public void setId(Integer id) {
this.id = id;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public String getEmail() {
return email;
}

public void setEmail(String email) {
this.email = email;
}
}
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

via Wykop Mobilny (Android)
  • 0
@TMBRK: ciezka sprawa z porządnym tutorialem do security, na poczatku roku też to męczyłem.
Z tego co pamiętam user musi implementowac UserDetails i overridowac jego metody i potem robisz endpointa login, gdzie ustawiasz go jako aktywnego w spring context czy cos, jak się zgadza hasło i potem spring juz sobie go pobiera.
(Przynajmniej ja tak zrobiłem i działa xD)
Sorki że tak niejasno pisze, ale już późno i piwkuję sobie
  • Odpowiedz