Jak zintegrować użytkownika LDAP z tabelą PERSON stworzoną przez Spring Security w Grails?
Tworzymy aplikację Grails, w której chcemy, aby użytkownik logował się przy użyciu swoich poświadczeń Active Directory. Dodatkowo chcemy dać właścicielowi biznesowemu tej aplikacji możliwość kontrolowania, kto ma dostęp do określonych linków (działań). Z tego powodu używamy następujących wtyczek w naszej aplikacji Grails:
Spring Security CoreSpring Security LDAPSpring Security UIPonieważ chcemy umożliwić użytkownikowi biznesowemu tworzenie dostosowanych ról z określonymi uprawnieniami (czynnościami) w razie potrzeby, uważamy, że najlepszą konfiguracją zabezpieczeń Spring jestPodejście oparte na bazie danych requestmap
Do tej pory osiągnęliśmy następujące wyniki:
Możemy pomyślnie uwierzytelnić się w usłudze Active Directory.Udało nam się również utworzyć różne mapowania żądań dla różnych ról (ROLE_XXX) za pośrednictwem interfejsu UI wtyczki spring-security-uiProblemy / pytania
Spring-core-plugin tworzył następujące tabele:
OSOBAAUTORYTETPERSON_AUTHORITYŻĄDANIESą to tabele, które obsługują tworzenie ról, przypisywanie adresów URL do ról. Jednak tabela Person_Authoritity, jak wskazuje nazwa konwencji, ma wiele do wielu relacji między OSOBĄ a UPRAWNIENIEM (ROLĄ), ponieważ osoba może potencjalnie mieć więcej niż jedną rolę. Moim problemem jest to, że nie mam osoby, ponieważ osoba już istnieje w Active Directory (źródło zewnętrzne) i nie została utworzona w aplikacji.
Czy istnieje sposób, aby uwierzytelniony użytkownik był OSOBĄ? Sprężynowe rozwiązanie bezpieczeństwa wymaga wiersza lub obiektu osoby, ale wolisz się do niego odwoływać.
Zadałem również pytanie tutaj:
Dzięki,