401 несанкционированная ошибка перед попыткой получить токен доступа в Spring Security Oauth 2JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 401 несанкционированная ошибка перед попыткой получить токен доступа в Spring Security Oauth 2

Сообщение Anonymous »

Я получаю несанкционированную ошибку 401 перед попыткой получить токен доступа в Spring Security oauth2.

У меня есть как сервер (сервер авторизации и ресурсов), так и клиентские приложения. Эти приложения созданы с использованием приложений sparklr2 и tonr2.

Я обошел форму входа в оба приложения. Это означает, что он не запрашивает имя пользователя и пароль в начале или оба приложения. Я использовал собственные классы и установил роли пользователя как «ROLE_USER» для обоих приложений.

Это означает, что он не запрашивает имя пользователя и пароль в начале или оба приложения. это моя трассировка стека ошибок:

Код: Выделить всё

 SEVERE: Servlet.service() for servlet [mvc-dispatcher] in context with path [/Client] threw exception [Request processing failed;  nested exception is error="access_denied", error_description="Error requesting access token."] with root cause org.springframework.web.client.HttpClientErrorException:  4 0 1   U n a u t h o r i z e d < b r   / > a t   o r g . s p r i n g f r a m e w o r k . w e b . c l i e n t . D e f a u l t R e s p o n s e E r r o r H a n d l e r . h a n d l e E r r o r ( D e f a u l t R e s p o n s e E r r o r H a n d l e r . j a v a : 8 8 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . s e c u r i t y . o a u t h 2 . c l i e n t . t o k e n . O A u t h 2 A c c e s s T o k e n S u p p o r t $ A c c e s s T o k e n E r r o r H a n d l e r . h a n d l e E r r o r ( O A u t h 2 A c c e s s T o k e n S u p p o r t . j a v a : 2 4 3 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . w e b . c l i e n t . R e s t T e m p l a t e . h a n d l e R e s p o n s e E r r o r ( R e s t T e m p l a t e . j a v a : 5 5 6 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . w e b . c l i e n t . R e s t T e m p l a t e . d o E x e c u t e ( R e s t T e m p l a t e . j a v a : 5 1 4 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . w e b . c l i e n t . R e s t T e m p l a t e . e x e c u t e ( R e s t T e m p l a t e . j a v a : 4 7 9 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . s e c u r i t y . o a u t h 2 . c l i e n t . t o k e n . O A u t h 2 A c c e s s T o k e n S u p p o r t . r e t r i e v e T o k e n ( O A u t h 2 A c c e s s T o k e n S u p p o r t . j a v a : 1 3 6 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . s e c u r i t y . o a u t h 2 . c l i e n t . t o k e n . g r a n t . c o d e . A u t h o r i z a t i o n C o d e A c c e s s T o k e n P r o v i d e r . o b t a i n A c c e s s T o k e n ( A u t h o r i z a t i o n C o d e A c c e s s T o k e n P r o v i d e r . j a v a : 1 9 8 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . s e c u r i t y . o a u t h 2 . c l i e n t . t o k e n . A c c e s s T o k e n P r o v i d e r C h a i n . o b t a i n N e w A c c e s s T o k e n I n t e r n a l ( A c c e s s T o k e n P r o v i d e r C h a i n . j a v a : 1 4 2 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . s e c u r i t y . o a u t h 2 . c l i e n t . t o k e n . A c c e s s T o k e n P r o v i d e r C h a i n . o b t a i n A c c e s s T o k e n ( A c c e s s T o k e n P r o v i d e r C h a i n . j a v a : 1 1 8 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . s e c u r i t y . o a u t h 2 . c l i e n t . O A u t h 2 R e s t T e m p l a t e . a c q u i r e A c c e s s T o k e n ( O A u t h 2 R e s t T e m p l a t e . j a v a : 2 2 1 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . s e c u r i t y . o a u t h 2 . c l i e n t . O A u t h 2 R e s t T e m p l a t e . g e t A c c e s s T o k e n ( O A u t h 2 R e s t T e m p l a t e . j a v a : 1 7 3 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . s e c u r i t y . o a u t h 2 . c l i e n t . O A u t h 2 R e s t T e m p l a t e . c r e a t e R e q u e s t ( O A u t h 2 R e s t T e m p l a t e . j a v a : 1 0 5 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . w e b . c l i e n t . R e s t T e m p l a t e . d o E x e c u t e ( R e s t T e m p l a t e . j a v a : 5 0 5 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . s e c u r i t y . o a u t h 2 . c l i e n t . O A u t h 2 R e s t T e m p l a t e . d o E x e c u t e ( O A u t h 2 R e s t T e m p l a t e . j a v a : 1 2 8 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . w e b . c l i e n t . R e s t T e m p l a t e . e x e c u t e ( R e s t T e m p l a t e . j a v a : 4 7 2 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . w e b . c l i e n t . R e s t T e m p l a t e . g e t F o r O b j e c t ( R e s t T e m p l a t e . j a v a : 2 3 7 ) < b r   / > a t   c o m . s e b i t . s e c u r i t y . c l i e n t . o a u t h 2 . c o n t r o l l e r . H e l l o C o n t r o l l e r . w e l c o m e P a g e ( H e l l o C o n t r o l l e r . j a v a : 3 6 ) < b r   / > a t   s u n . r e f l e c t . N a t i v e M e t h o d A c c e s s o r I m p l . i n v o k e 0 ( N a t i v e   M e t h o d ) < b r   / > a t   s u n . r e f l e c t . N a t i v e M e t h o d A c c e s s o r I m p l . i n v o k e ( U n k n o w n   S o u r c e ) < b r   / > a t   s u n . r e f l e c t . D e l e g a t i n g M e t h o d A c c e s s o r I m p l . i n v o k e ( U n k n o w n   S o u r c e ) < b r   / > a t   j a v a . l a n g . r e f l e c t . M e t h o d . i n v o k e ( U n k n o w n   S o u r c e ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . w e b . m e t h o d . s u p p o r t . I n v o c a b l e H a n d l e r M e t h o d . i n v o k e ( I n v o c a b l e H a n d l e r M e t h o d . j a v a : 2 1 5 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . w e b . m e t h o d . s u p p o r t . I n v o c a b l e H a n d l e r M e t h o d . i n v o k e F o r R e q u e s t ( I n v o c a b l e H a n d l e r M e t h o d . j a v a : 1 3 2 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . w e b . s e r v l e t . m v c . m e t h o d . a n n o t a t i o n . S e r v l e t I n v o c a b l e H a n d l e r M e t h o d . i n v o k e A n d H a n d l e ( S e r v l e t I n v o c a b l e H a n d l e r M e t h o d . j a v a : 1 0 4 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . w e b . s e r v l e t . m v c . m e t h o d . a n n o t a t i o n . R e q u e s t M a p p i n g H a n d l e r A d a p t e r . i n v o k e H a n d l e M e t h o d ( R e q u e s t M a p p i n g H a n d l e r A d a p t e r . j a v a : 7 4 5 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . w e b . s e r v l e t . m v c . m e t h o d . a n n o t a t i o n . R e q u e s t M a p p i n g H a n d l e r A d a p t e r . h a n d l e I n t e r n a l ( R e q u e s t M a p p i n g H a n d l e r A d a p t e r . j a v a : 6 8 6 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . w e b . s e r v l e t . m v c . m e t h o d . A b s t r a c t H a n d l e r M e t h o d A d a p t e r . h a n d l e ( A b s t r a c t H a n d l e r M e t h o d A d a p t e r . j a v a : 8 0 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . w e b . s e r v l e t . D i s p a t c h e r S e r v l e t . d o D i s p a t c h ( D i s p a t c h e r S e r v l e t . j a v a : 9 2 5 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . w e b . s e r v l e t . D i s p a t c h e r S e r v l e t . d o S e r v i c e ( D i s p a t c h e r S e r v l e t . j a v a : 8 5 6 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . w e b . s e r v l e t . F r a m e w o r k S e r v l e t . p r o c e s s R e q u e s t ( F r a m e w o r k S e r v l e t . j a v a : 9 5 3 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . w e b . s e r v l e t . F r a m e w o r k S e r v l e t . d o G e t ( F r a m e w o r k S e r v l e t . j a v a : 8 4 4 ) < b r   / > a t   j a v a x . s e r v l e t . h t t p . H t t p S e r v l e t . s e r v i c e ( H t t p S e r v l e t . j a v a : 6 2 1 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . w e b . s e r v l e t . F r a m e w o r k S e r v l e t . s e r v i c e ( F r a m e w o r k S e r v l e t . j a v a : 8 2 9 ) < b r   / > a t   j a v a x . s e r v l e t . h t t p . H t t p S e r v l e t . s e r v i c e ( H t t p S e r v l e t . j a v a : 7 2 8 ) < b r   / > a t   o r g . a p a c h e . c a t a l i n a . c o r e . A p p l i c a t i o n F i l t e r C h a i n . i n t e r n a l D o F i l t e r ( A p p l i c a t i o n F i l t e r C h a i n . j a v a : 3 0 5 ) < b r   / > a t   o r g . a p a c h e . c a t a l i n a . c o r e . A p p l i c a t i o n F i l t e r C h a i n . d o F i l t e r ( A p p l i c a t i o n F i l t e r C h a i n . j a v a : 2 1 0 ) < b r   / > a t   o r g . a p a c h e . t o m c a t . w e b s o c k e t . s e r v e r . W s F i l t e r . d o F i l t e r ( W s F i l t e r . j a v a : 5 1 ) < b r   / > a t   o r g . a p a c h e . c a t a l i n a . c o r e . A p p l i c a t i o n F i l t e r C h a i n . i n t e r n a l D o F i l t e r ( A p p l i c a t i o n F i l t e r C h a i n . j a v a : 2 4 3 ) < b r   / > a t   o r g . a p a c h e . c a t a l i n a . c o r e . A p p l i c a t i o n F i l t e r C h a i n . d o F i l t e r ( A p p l i c a t i o n F i l t e r C h a i n . j a v a : 2 1 0 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . s e c u r i t y . w e b . F i l t e r C h a i n P r o x y $ V i r t u a l F i l t e r C h a i n . d o F i l t e r ( F i l t e r C h a i n P r o x y . j a v a : 3 3 0 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . s e c u r i t y . w e b . a c c e s s . i n t e r c e p t . F i l t e r S e c u r i t y I n t e r c e p t o r . i n v o k e ( F i l t e r S e c u r i t y I n t e r c e p t o r . j a v a : 1 1 8 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . s e c u r i t y . w e b . a c c e s s . i n t e r c e p t . F i l t e r S e c u r i t y I n t e r c e p t o r . d o F i l t e r ( F i l t e r S e c u r i t y I n t e r c e p t o r . j a v a : 8 4 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . s e c u r i t y . w e b . F i l t e r C h a i n P r o x y $ V i r t u a l F i l t e r C h a i n . d o F i l t e r ( F i l t e r C h a i n P r o x y . j a v a : 3 4 2 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . s e c u r i t y . o a u t h 2 . c l i e n t . f i l t e r . O A u t h 2 C l i e n t C o n t e x t F i l t e r . d o F i l t e r ( O A u t h 2 C l i e n t C o n t e x t F i l t e r . j a v a : 5 7 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . s e c u r i t y . w e b . F i l t e r C h a i n P r o x y $ V i r t u a l F i l t e r C h a i n . d o F i l t e r ( F i l t e r C h a i n P r o x y . j a v a : 3 4 2 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . s e c u r i t y . w e b . a c c e s s . E x c e p t i o n T r a n s l a t i o n F i l t e r . d o F i l t e r ( E x c e p t i o n T r a n s l a t i o n F i l t e r . j a v a : 1 1 3 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . s e c u r i t y . w e b . F i l t e r C h a i n P r o x y $ V i r t u a l F i l t e r C h a i n . d o F i l t e r ( F i l t e r C h a i n P r o x y . j a v a : 3 4 2 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . s e c u r i t y . w e b . s e s s i o n . S e s s i o n M a n a g e m e n t F i l t e r . d o F i l t e r ( S e s s i o n M a n a g e m e n t F i l t e r . j a v a : 1 0 3 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . s e c u r i t y . w e b . F i l t e r C h a i n P r o x y $ V i r t u a l F i l t e r C h a i n . d o F i l t e r ( F i l t e r C h a i n P r o x y . j a v a : 3 4 2 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . s e c u r i t y . w e b . a u t h e n t i c a t i o n . A n o n y m o u s A u t h e n t i c a t i o n F i l t e r . d o F i l t e r ( A n o n y m o u s A u t h e n t i c a t i o n F i l t e r . j a v a : 1 1 3 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . s e c u r i t y . w e b . F i l t e r C h a i n P r o x y $ V i r t u a l F i l t e r C h a i n . d o F i l t e r ( F i l t e r C h a i n P r o x y . j a v a : 3 4 2 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . s e c u r i t y . w e b . s e r v l e t a p i . S e c u r i t y C o n t e x t H o l d e r A w a r e R e q u e s t F i l t e r . d o F i l t e r ( S e c u r i t y C o n t e x t H o l d e r A w a r e R e q u e s t F i l t e r . j a v a : 1 5 4 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . s e c u r i t y . w e b . F i l t e r C h a i n P r o x y $ V i r t u a l F i l t e r C h a i n . d o F i l t e r ( F i l t e r C h a i n P r o x y . j a v a : 3 4 2 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . s e c u r i t y . w e b . s a v e d r e q u e s t . R e q u e s t C a c h e A w a r e F i l t e r . d o F i l t e r ( R e q u e s t C a c h e A w a r e F i l t e r . j a v a : 4 5 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . s e c u r i t y . w e b . F i l t e r C h a i n P r o x y $ V i r t u a l F i l t e r C h a i n . d o F i l t e r ( F i l t e r C h a i n P r o x y . j a v a : 3 4 2 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . s e c u r i t y . w e b . a u t h e n t i c a t i o n . w w w . B a s i c A u t h e n t i c a t i o n F i l t e r . d o F i l t e r ( B a s i c A u t h e n t i c a t i o n F i l t e r . j a v a : 1 5 0 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . s e c u r i t y . w e b . F i l t e r C h a i n P r o x y $ V i r t u a l F i l t e r C h a i n . d o F i l t e r ( F i l t e r C h a i n P r o x y . j a v a : 3 4 2 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . s e c u r i t y . w e b . a u t h e n t i c a t i o n . p r e a u t h . A b s t r a c t P r e A u t h e n t i c a t e d P r o c e s s i n g F i l t e r . d o F i l t e r ( A b s t r a c t P r e A u t h e n t i c a t e d P r o c e s s i n g F i l t e r . j a v a : 9 4 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . s e c u r i t y . w e b . F i l t e r C h a i n P r o x y $ V i r t u a l F i l t e r C h a i n . d o F i l t e r ( F i l t e r C h a i n P r o x y . j a v a : 3 4 2 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . s e c u r i t y . w e b . c o n t e x t . r e q u e s t . a s y n c . W e b A s y n c M a n a g e r I n t e g r a t i o n F i l t e r . d o F i l t e r I n t e r n a l ( W e b A s y n c M a n a g e r I n t e g r a t i o n F i l t e r . j a v a : 5 0 ) < b r   / > a t   o r g . s p r i n g f r a m e w o r k . w e b . f i l t e r . O n c e P e r R e q u e s t F i l t e r . d o F i l t e r ( O n c e PerRequestFilter.java:107)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:192)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:160)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:343)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:260)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1041)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:603)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Это мой файл web.xml в моем серверном приложении:

Код: Выделить всё

  
spring
org.springframework.web.servlet.DispatcherServlet

1



spring
/



org.springframework.web.context.ContextLoaderListener




contextConfigLocation
/WEB-INF/spring-servlet.xml



springSecurityFilterChain
org.springframework.web.filter.DelegatingFilterProxy

contextAttribute
org.springframework.web.servlet.FrameworkServlet.CONTEXT.spring




springSecurityFilterChain
/*

Это мой файл Spring-servlet.xml на стороне сервера:
Это мой web.xml на стороне клиента:

Код: Выделить всё

  
mvc-dispatcher
org.springframework.web.servlet.DispatcherServlet

1


mvc-dispatcher
/


org.springframework.web.context.ContextLoaderListener



contextConfigLocation
/WEB-INF/mvc-dispatcher-servlet.xml,  /WEB-INF/spring-security.xml


springSecurityFilterChain
org.springframework.web.filter.DelegatingFilterProxy



springSecurityFilterChain
/*

Это мой файл Spring-security.xml на стороне клиента:
Это мой сервлет mvc-dispatcher на стороне клиента:
После того, как я позвоню

"/Client/index"

он ​​успешно обходит формы входа (на стороне сервера и клиента) и успешно вызывает

"/Authorization/oauth/authorize"

Он успешно добавляет client_id, response_type, область действия, redirect_uri и параметры состояния.

Доступ подтвержден, и появляется страница одобрения. После того, как я нажал кнопку «Авторизовать», я получаю ошибку 401 несанкционированного доступа.

Будем благодарны за любую помощь.

Подробнее здесь: https://stackoverflow.com/questions/247 ... urity-oaut
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»