После решения всех authentication related problems в моем первом веб-приложении Spring я теперь застрял в авторизации.@ Необеспеченные броски AccessDeniedException, хотя роли правильные
Конфигурация с использованием @Secured
аннотаций довольно проста, поэтому я не думаю, что совершил ошибку здесь. Кроме того, я использую Active Directory с помощью поставщика проверки подлинности LDAP и назначаю роли по группам AD, так что это тоже не проблема.
Так вот краткое описание моей проблемы:
- необеспеченные действия работы
- Действия с использованием
@Secured("IS_AUTHENTICATED_FULLY")
работы - Действия, используя что-то вроде
@Secured("GROUP_*")
не работают
При вызове защищенного действия вызывается org.springframework.security.AccessDeniedException
. Вот отрывок из журналов:
DEBUG: org.springframework.security.intercept.AbstractSecurityInterceptor - Secure object: ReflectiveMethodInvocation: public org.springframework.web.servlet.ModelAndView de.dillinger.resources.controllers.HostsController.index(); target is of class [de.dillinger.resources.controllers.HostsController]; ConfigAttributes: [GROUP_IT]
DEBUG: org.springframework.security.intercept.AbstractSecurityInterceptor - Previously Authenticated: org.springf[email protected]2a5333d9: Principal: [email protected]: Username: di32001; Password: [PROTECTED]; Enabled: true; AccountNonExpired: true; credentialsNonExpired: true; AccountNonLocked: true; Granted Authorities: GROUP_ITS, GROUP_ITS-IT, GROUP_INTERNET, GROUP_SYSTEMGRUPPE, GROUP_IT; Password: [PROTECTED]; Authenticated: true; Details: [email protected]: RemoteIpAddress: 127.0.0.1; SessionId: 773943FFB14E512872BB6CE25F46C00A; Granted Authorities: GROUP_ITS, GROUP_ITS-IT, GROUP_INTERNET, GROUP_SYSTEMGRUPPE, GROUP_IT
Как вы можете видеть, что действие требует GROUP_IT
роль и мой пользовательский объект имеет эту привилегию. Я действительно не знаю, что вызывает эту проблему.
Является боб избирателю необходимо при настройке аутентификации LDAP с использованием ''? У образца LDAP его нет. Я проверю это, когда снова буду работать. –
Koraktor
Для авторизации необходим избиратель. – rodrigoap
Отлично, спасибо за пояснения и пример кода. Я проверю это завтра. – Koraktor