2

開発中に、自分のアプリケーションを再起動しなければならないことがよくあります。その結果、手動でログインするという余分な手順が必要になります。

ブートストラップにメソッド呼び出し springSercurityService.reauthenticate('myuser') を追加できると思っていましたが、成功していません

アプリケーションの起動後にコントローラーで同じことを行うと正常に動作するため、ブートストラップでは機能しません。明らかなエラーは見られずにコードをデバッグしました。

4

3 に答える 3

2

私は同じ問題に遭遇し、それをどのように解決したかは、ログインし直すのを非常に簡単にするブックマークレット (またはカスタム ブラウザの「検索エンジン」) を使用することでした。同じページ。サーバーを再起動した後、ページを更新するだけで、ログイン ページにリダイレクトされます。ブックマークレット (または「検索エンジン」) をアクティブにするだけで、ログインして作業中のページにリダイレクトされます。

この設定方法を示す詳細なブログ投稿があります。

于 2012-04-22T15:11:06.437 に答える
0

もう 1 つのオプションは、環境が開発環境の場合にデフォルト ユーザーでログインするサーブレット フィルターを追加することです。

于 2012-04-22T17:12:17.963 に答える
0

開発モードでログインする必要がないようにするだけの場合は、interceptUrlMap プロパティを設定できます。このプロパティを使用すると、ログインを求められない方法で開発モードを設定できます。

import grails.plugins.springsecurity.SecurityConfigType

grails.plugins.springsecurity.securityConfigType = SecurityConfigType.InterceptUrlMap

environments {
    development {
        grails.plugins.springsecurity.interceptUrlMap = [
            '/**':              ['IS_AUTHENTICATED_ANONYMOUSLY']
        ]
    }

}
于 2012-04-22T11:27:16.893 に答える