問題タブ [spring-security]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
2260 参照

java - Spring Web App を tomcat 5.5 から tomcat 6.0 に移行する際の問題

Tomcat 5.5で正常に動作しているSpring Webアプリケーションがあります。同じ Web アプリを tomcat 6 コンテナーにデプロイしようとしたところ、いくつかの問題が発生しました。

私が経験した主な 2 つの問題は、jstl のコンテナーの構成と、Spring セキュリティ ログインを適切に機能させることに関するものです。

ここから $CATALINA_HOME/lib ディレクトリに jstl-1.2.jar ライブラリを含めることで、jstl 構成の問題を解決したと思います(ただし、これを機能させる方法を見つけるのが非常に難しいのは奇妙に思えますが) )。

現在の主な問題は、フォーム ベースの認証を使用してログインしようとすると、ログイン フォームが「j_spring_security_check」に送信されるときに HTTP 404 エラーが発生することです。

春のセキュリティ ドキュメントに従って web.xml ファイルにフィルターを設定しましたが、Tomcat がこれを期待どおりに呼び出していないようです。

私の構成には確かに基本的なものが欠けているので、誰かがここで経験を共有できることを願っています。

ありがとう。

更新:ここでの回答に基づいてトラブルシューティングを行っているときに、最終的に tomcat 6.0.18 の新しいコピーをダウンロードし、WEB-INF/lib ディレクトリに jstl-1.2.jar ファイルがあることを確認しました。面白いことに、アプリは正常に動作しているようです。

私は少し困惑していますが、エラーの原因となった 2 つの tomcat インストールの違いを追跡し、ここにさらなる更新を投稿しようと思います。

この人たちへの応答をありがとう。

0 投票する
5 に答える
13282 参照

java - Spring と Hibernate を使用した優れたサンプル アプリケーションは何ですか?

Spring と Hibernate を一緒に使用するためのクイック ジャンプ スタートが必要で、変更および拡張するサンプル コードを探していました。Struts2 と Spring Security の統合のボーナス ポイント。

0 投票する
4 に答える
16571 参照

spring - 単体テストでのSpring組み込みLDAPサーバー

現在、単体テストに組み込み LDAP サーバーを使用しようとしています。

Spring Security では、指定された ldif からロードされたいくつかのサンプル データを含むタグを使用して、テスト用の組み込み LDAP サーバーをすばやく定義できます。

Spring LDAP を使用して LDAP 操作を実行し、ユーザー サービス オブジェクトの通常の CRUD 機能をテストすることを考えています。

ただし、実行中のテストごとに、組み込みサーバーのエントリが同じ一貫した状態 (すべて削除して ldif エントリをリロードするようなもの) であることを確認する方法はありますか?

私は次のことを考えました:1)メソッドがコンテキストを汚すことを示し、組み込みLDAPサーバーの再作成を強制します。これは、メソッドごとにサーバーを再起動する必要があるため、苦痛に聞こえます2)テスト組織でテストエントリを作成します、それらをバインド解除して、そこにあるldifファイルに単純にロードできるようにします。

私は 2 を好みますが、Spring LDAP には、ldif ファイルのコンテンツを読み込んで送信するための適切なヘルパーがないようです。

春の組み込み LDAP サーバーを使用して LDAP テストを実行する方法、または私が言及した 2 つの可能な解決策について何か提案はありますか?

ありがとう

0 投票する
1 に答える
778 参照

java - tomcat 404 エラー ハンドラで ACEGI 認証が利用可能に

Tomcat 5.5.26 にデプロイされた webapp で spring と acegi を使用しています。

ユーザーが 404 ページにログインしているかどうかを確認して、ログインしている場合は名前を表示し、そうでない場合はログイン リンクを表示できるようにします。

REQUEST ディスパッチャーのフィルターに HttpSessionContextIntegrationFilter があります。ERRORディスパッチャーにもあります。

コード パスは、リクエストが私のアプリに入り、REQUEST ディスパッチャーを介して、既に適用されていることを記録する HttpSessionContextIntegrationFilter に到達し、ユーザー コンテキストを設定してからフィルター チェーンを続行し、ユーザー コンテキストをクリアするように見えます。その後、ERROR ディスパッチャーを下りますが、HttpSessionContextIntegrationFilter はこの要求に対して既に実行されているため何もしません。したがって、404 ページに到達すると、コンテキストで認証が行われません (出し入れしないでください。

0 投票する
1 に答える
2423 参照

java - 「org.springframework.security.annotation.Jsr250MethodDefinitionSource」が見つかりません

Spring Security でメソッド セキュリティを構成すると、上記のエラーが表示されます (以下のスタック トレースを参照)。Tomcat 6 ランタイムを使用して、Eclipse 3.4 で Spring 2.5.6、Spring Security 2.0.4 を実行しています。これを機能させるために何を見るべきかについての提案が必要です。

私のセキュリティ構成ファイルは次のとおりです。

そして、例外スタック トレース:

0 投票する
3 に答える
2074 参照

java - サーバー側 API での権限チェック

私たちの製品はクライアント サーバー アーキテクチャ上に構築されており、サーバーは Java で実装されています (Spring フレームワークで POJO を使用しています)。サーバーには 2 つの API レベルがあります。

  • REST Web サービスを使用する外部 API - 外部クライアントおよび他のサーバーとの統合に役立ちます。
  • 純粋な Java クラスを使用する内部 APIは、内部の実際のコード (ビジネス ロジックが API 呼び出しを何度も呼び出すため) や、社内外で開発され、製品の一部として展開されたプラスインとの統合に役立ちます。外部 REST API も内部 API を使用します。

最下位の API レベルでアクセスを制御したかったため、内部 API にアクセス許可チェック (Spring セキュリティを使用) を実装しました。

しかし、ここで問題が発生します。API レベルで定義されているいくつかの操作は、現在ログインしているユーザーに対して禁止されていると見なされますが、サーバー自体によってスムーズに実行される必要があります。たとえば、一部のエンティティの削除はユーザーに対して禁止されている可能性がありますが、サーバーは、ユーザーが実行した他の操作の副作用としてこのエンティティを削除したい場合があり、これを許可したいと考えています。

では、実際にログインしているユーザーには禁止されている可能性のある操作を (ある種のスーパーユーザー モードで) サーバーが実行できるようにする最善の方法は何でしょうか?

私が見ているように、いくつかのオプションがあり、それぞれに長所と短所があります。

  1. 外部レベル API (REST) でパーミッション チェックを実装します。プラグインがパーミッション チェックをバイパスするため、問題があります。
  2. リクエストが許可された後、現在のスレッドのパーミッション チェックを無効にします。危険すぎるため、禁止すべきサーバー アクションが多すぎる可能性があります。
  3. 特権モードで操作を実行するように内部 API レベルに明示的に要求します (Java セキュリティ フレームワークの PrivilegedAction と同様) - 冗長すぎます。

上記のアプローチはどれも理想的ではないため、この問題に対するベストプラクティスのアプローチは何ですか?

ありがとう。

0 投票する
6 に答える
32271 参照

java - 人間のためのJAAS

JAASを理解するのに苦労しています。それはすべて、本来あるべきよりも複雑に思えます(特にSunのチュートリアル)。Struts + Spring + Hibernateとカスタムユーザーリポジトリに基づくJavaアプリケーションでセキュリティ(認証+承認)を実装する方法についての簡単なチュートリアルまたは例が必要です。ACEGIを使用して実装できます。

0 投票する
4 に答える
26033 参照

spring - Spring Security: 初期ターゲット URL を取得する方法

制限付き URL に春のセキュリティを使用しています。同じページで、サインアップとログインのページを提供しようとしています。

ログイン時の春のセキュリティは、制限されたページに移動します。ただし、サインアップ後に制限されたページにリダイレクトできるように、ターゲットURLをサインアッププロセスに渡そうとしています。

ユーザーがリダイレクトされた実際の URL を取得する方法。

何か案は?

0 投票する
1 に答える
4710 参照

spring-security - Spring Security: 「ワンタイム パスワード」と「秘密の質問」のカスタム認証プロバイダー

Spring Security を使用しており、「ワンタイム パスワード」と「セキュリティの質問」に認証プロバイダーを使用したいと考えています。ワンタイムパスワードとセキュリティ質問の失敗回数には制限があります。

これまでのところ、認証プロバイダーは正常に動作していますが、エンドユーザーにとっては、間違った「ワンタイム パスワード」を入力したか、許容される失敗の制限を超えたかを知ることができて便利です。しかし、認証プロバイダー内で AuthenticationException をスローする可能性しかありません。

何か案は?

ありがとう、ラルフ