問題タブ [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 投票する
2 に答える
4608 参照

spring - 複数のセキュリティ:カスタム認証プロバイダー

applicationContext.xml では、複数の security:custom-authentication-provider を定義することが有効です。

例えば

<bean id="dummyAuthenticationProvider" class="com.user.sample.gwtspring.server.security.JDBCDummyAuthenticationProvider"> <security:custom-authentication-provider /> </bean>

<bean id="dummyAuthenticationProvider2" class="com.user.sample.gwtspring.server.security.OpenIdDummyAuthenticationProvider2"> <security:custom-authentication-provider /> </bean>

両方ともauthenticationManager内に登録されますか? ダミーのAuthenticationProvider2をopenIdとして使用することを考えています。applicationContext.xml 内に他にどのようなメタ構成を配置する必要がありますか?

0 投票する
2 に答える
8030 参照

java - spring 認証プロバイダー VS 認証処理フィルター

春の認証プロバイダーと認証処理フィルターの両方も authenticationManager に登録する必要がありますか?

custom-authentication-provider タグを使用できる認証プロバイダー

しかし、春の認証プロバイダーと認証処理フィルターの違いは何ですか?

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

session - ログインページはSSLを使用し、暗号化されていないページには暗号化されたセッションCookieが表示されません(Grails、Acegi)

セットアップ:Grails 1.1、Acegi /SpringSecurityプラグイン

ユーザーにSSL経由でログインしてもらいたいので、channelConfig.secure[]リストに'/ login / **'がありますが、それ以外のほとんどすべてがchannelConfig.insecure[]にあります。/ loginのすべてのリクエストはhttps://にリダイレクトされ、他のすべてのリクエストはhttp://にリダイレクトされます。

私の問題は、ログインプロセスがCookieを「暗号化された接続のみで送信」に設定するため、ログインページが/ homeにリダイレクトされると、ホームページにCookieが表示されず、ランディングページにリダイレクトされることです。再度ログインしようとすると、ログインページにCookieが表示され、リダイレクトされます...など。

このページでSecurityConfigについて調べて、SSLで作成されたCookieを暗号化されていないHTTPで読み取ることを許可するオプションがあるかどうかを確認しましたが、何も見つかりませんでした。ログインCookieを暗号化されていないコントローラーで利用できるようにするために設定できるオプションはありますか?

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

java - SpringSecurityのプログラムによる使用

プレゼンテーション層にWicketAuthProjectでWicketを使用しているため、SpringSecurityと統合しました。これは、Wicketが認証のために呼び出すメソッドです。

Spring Security XML構成の内容(内部)は次のとおりです。

セクション2.3.6。リファレンスドキュメントのセッション固定攻撃保護は次のように述べています。

セッション固定攻撃は、悪意のある攻撃者がサイトにアクセスしてセッションを作成し、別のユーザーに同じセッションでログインするように誘導する可能性がある潜在的なリスクです(セッション識別子をパラメーターとして含むリンクを送信することにより、例)。Spring Securityは、ユーザーがログインしたときに新しいセッションを作成することで、これを自動的に保護します。この保護が不要な場合、または他の要件と競合する場合は、のsession-fixation-protection属性を使用して動作を制御できます。 3つのオプションがあります:

  • mergeSession-新しいセッションを作成し、既存のセッション属性を新しいセッションにコピーします。これがデフォルトです。
  • none-何もしないでください。元のセッションは保持されます。
  • newSession-既存のセッションデータをコピーせずに、新しい「クリーンな」セッションを作成します。

認証は機能しますが、Spring Securityにかなり慣れていないので、いくつか質問があり、答えが必要です。

  • 通常、ログインの場合、認証情報をPOSTして、SpringSecurityj_spring_security_checkに実際の認証コードを実行させます。セッション固定攻撃から保護したいのですが、プログラムログインを実行したときに取得できますか?そうでない場合、それを取得するために私は何をしなければなりませんか?
  • プログラムによるログアウトを実行するにはどうすればよいですか?
  • プログラムによるログインとログアウトを使用するので、SpringがこれらのURLをインターセプトしないようにするにはどうすればよいですか?

更新: セッション固定攻撃からの保護のために、SessionUtilsクラスのメソッドを署名を使用して呼び出す必要があるようですstartNewSessionIfRequired(HttpServletRequest request, boolean migrateAttributes, SessionRegistry sessionRegistry)

渡す必要のあるSessionRegistryインスタンスを取得するにはどうすればよいですか?そのエイリアスIDを作成する方法、またはそのIDまたは名前を取得する方法が見つかりません。

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

spring - Blazeds と Spring セキュリティ、remember-me をこの組み合わせで使用できますか?

私は Spring Blzeds 統合の最新リリースを使用しています。これには、宛先オブジェクトでの呼び出しをより簡単に保護するためのいくつかの機能があります。ただし、Flex 側から ChannelSet ログイン アプローチを使用する基本的なセットアップでは、ページが更新されるたびに認証情報 (セッション) が失われます。私が使用している構成は次のとおりです。

永続的なセッションを取得できるように、これを構成/実装する別の方法はありますか (覚えておいてください)。標準の HTTP POST (フォームなど) を介してフレックスからログインを行い、リモート オブジェクト呼び出しを保護するために同じレベルの粒度を取得することは可能ですか?

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

java - 開発モードのSpringセキュリティ事前認証

アプリケーションを開発している間、さまざまな役割を持つさまざまなユーザーとしてすばやくログインして、アプリケーションがどのように表示されるかを確認できると非常に便利です。

ユーザー名を入力してパスワードを入力するのは面白くなく、時間の無駄です。私がしたいのは:

  • 利用可能なユーザー名のリストを含むページ/パネルを追加します。
  • ユーザー名をクリックすると、Springセキュリティのイベントが生成され、パスワードを入力しなくても、ユーザーを認証済みとして認識できます。
  • リンクをクリックした後、私は指定されたユーザーとして認証されます。

注意:パスワードはハッシュ化され、フォームを使用してプレーンテキストで送信されるため、リンクにパスワードをエンコードすることはできません。

明らかに、この機能は開発時にのみ存在します。

どうすればこれを達成できますか?

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

java - Springセキュリティで複数のセキュリティコンテキストを持つことはできますか?

アプリケーションのフレックス部分にPreAuthenticatedProcessingFilterEntryPointを使用するセキュリティコンテキスト定義が1つあります。アプリケーションの別の部分にhtmlフォームで標準フォームログインを使用する別の定義を作成するにはどうすればよいですか?これが私が現在持っているものです:

私がやりたいのは、管理サイトにあるURLに別の認証プロバイダーを使用することです。現在私が持っているのはflexアプリケーション用です。したがって、管理URLのセキュリティで別のuserDetailsS​​erviceBeanを使用する必要があります。

0 投票する
2 に答える
11138 参照

spring - X509 フィルター (Spring Security) に証明書を取得する方法は?

証明書の CN 以外の情報を抽出する必要があります。現在、標準の UserDetails loadUserByUsername(String arg) のみを取得します。ここで、arg は証明書の CN です。X509Certificate オブジェクトを取得する必要があります。出来ますか?

春のセキュリティxmlファイル:

0 投票する
2 に答える
886 参照

php - PHP用のAcegiのようなものはありますか?

Java の世界では、Acegiは Spring ベースの強力なセキュリティ フレームワークであり、認証と承認を簡単に管理できます。AFAIU、OpenID、Facebook Connect、LDAP、NTLM、KerberosなどをGrails経由でサポートしています。それがどのように機能するかに興味がある場合は、このチュートリアルの図を見てください

とにかく、これはすべてクールですが、私は PHP アプリケーション (CodeIgniter、FWIW を使用) を開発しており、PHP に似たものを探していますか?