私の問題:
プラグインの認証メカニズムを使用せずに、Grails アプリケーションで Spring Security プラグインのアクセス制御/承認メカニズムを使用したいと考えています。私が見つけたさまざまな Grails Spring Security プラグインの例 (このようなもの) は、これら 2 つの機能を組み合わせています。アクセス制御を行う簡単な方法はありますか?
バックグラウンド:
- 役割ベースのアクセス制御を既存のアプリに追加したいと考えています。コントローラーに注釈を付けるか、アクセス制御を設定するために Config.groovy マップ アプローチを使用したいと考えています。
- アプリには既にユーザー ドメイン クラスがあります。
- ユーザー ドメイン クラスは、BCrypt を使用してパスワードの暗号化を既に処理しています。
- アプリには「ロール」ドメイン クラスがありません。
- ログインとログアウトを処理するためのコントローラー アクション、ビュー、およびビジネス ロジックが既にあります。これをプラグインの実装に置き換えることに興味はありません。
正しい軌道に乗っていますが、あまり役に立ちません:
この他の質問で説明されているように、これが可能であることはわかっています。しかし、その質問とその回答は、生のSpring Securityフレームワークを使用してJavaアプリでそれを行う方法を説明しています。Grails Spring Security プラグインの最新バージョン (この記事の執筆時点では 1.2.7.3) と互換性のある方法でこれを行う方法を説明してくれる人が欲しいです。プラグインによってすでに処理されている車輪を再発明したくありません。
さらに、この例ではこれを行う方法を説明していますが、Spring Security 2.x を使用する古いバージョンのプラグインに基づいているため、古くなっているように見えます。また、アプリの 1 つの部分に対してのみカスタム認証を使用しますが、Spring Security プラグインのドメイン クラスを別の場所で使用しているように見えます。
どうやってするの?
誰かが私のためにアプローチをレイアウトできますか? Role ドメイン クラスを作成する必要があると思います。その後、カスタム認証オブジェクトなどが含まれると思います。しかし、プラグインの既存のコードを使用するようにフックするにはどうすればよいでしょうか?