2017-11-13 24 views
0

私はGrailsアプリケーションを構築していますが、spring-security-core-3.2.0とspring-security-rest/2.0.0を使用しています。すべて正常に動作しており、私は自分のweb-appにログインすることができます。また、JWTトークンを使用してRESTfulな方法で認証/通信することもできます。しかし、REST呼び出しでは、私はまだJSESSIONIDトークンを取得しています。 RESTはステートレスなので、私はセッションを期待しません。私はこれの構成オプションを見つけることができないようです。 RESTful呼び出しのためにセッションが作成されないようにする方法はありますか?Grails Spring Security REST - セッションクッキーの取得

これは私がセッションを取得しています参照してどのようにされています

headers.txtの検査
curl -D headers.txt -H "Content-Type: application/json" -X POST -d '{"username":"xxxxx","password":"xxxxxx"}' http://xxxx:8080/api/login 

、私は以下を参照してください。

HTTP/1.1 200 
Cache-Control: no-store 
Pragma: no-cache 
Set-Cookie: JSESSIONID=3004A67F66933E639E68D79FA1E1CA88; Path=/; HttpOnly 
Content-Type: application/json;charset=UTF-8 
Content-Length: 2247 
Date: Sun, 12 Nov 2017 16:57:40 GMT 

答えて

0

私はすべての場所の文書で答えを見つけました。 :-)

これは、すべてのフィルタチェーンとどのステートメントがステートレスで、どのステートメントがステートレスであるべきかについてです。

[pattern: '/api/**', 
    filters: 'JOINED_FILTERS,-anonymousAuthenticationFilter,-exceptionTranslationFilter,-authenticationProcessingFilter,-securityContextPersistenceFilter,-rememberMeAuthenticationFilter' 
] 

全設定:

grails.plugin.springsecurity.filterChain.chainMap = [ 
    [pattern: '/assets/**',  filters: 'none'], 
    [pattern: '/**/js/**',  filters: 'none'], 
    [pattern: '/**/css/**',  filters: 'none'], 
    [pattern: '/**/images/**', filters: 'none'], 
    [pattern: '/**/favicon.ico', filters: 'none'], 
    [pattern: '/api/**', 
     filters: 'JOINED_FILTERS,-anonymousAuthenticationFilter,-exceptionTranslationFilter,-authenticationProcessingFilter,-securityContextPersistenceFilter,-rememberMeAuthenticationFilter' 
    ], 
    [pattern: '/**',    filters: 'JOINED_FILTERS'] 
] 
私はgrails.plugin.springsecurity.filterChain.chainMapにapplication.groovyするには、次のマップを追加しました
関連する問題