問題タブ [pre-authentication]
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.
wcf - Digest PreAuthentication のために WCF の基になる Request (WebRequest または HTTPRequest) オブジェクトにアクセスします。
WCF サービスを介してエンティティ オブジェクトを公開しています。エンティティを取得するために、WCF を介していくつかの要求を行います。100 近くまたはそれ以上です。最近、ダイジェスト認証に切り替えたところ、すべてのサーバー リクエストが 401 を発行していることに気付きました。これにより、サーバーに 2 倍の負荷がかかり、非常に大きな「投稿」があるため、追加のトラフィック ラグが発生します。目標は、サーバーからの Challenge(401) を 1 つだけ持つことであり、サーバーが 401 を発行しないように、残りの要求に Auth ヘッダーを含める必要があります。 401 を完全に排除することはできませんが、少なくともすべてのリクエストでそれらを回避します。サーバーとクライアントの両方を制御するため、すべてのリクエストに含まれる Digest Auth ヘッダーを送信します。.NET 2.0 webservices Style Web Reference Proxy/Client (SOAPHttpClientProtocol を継承する) には Pre-Authenticate プロパティがあり、Auth ヘッダーを要求に含めることができますが、WCF Services Web Reference クライアント (ChannelFactory を使用する) には存在しません。だ。このプロパティが設定されている場合と設定されていない場合では、要求/応答トラフィックに明確な違いがあります。これはダイジェスト認証 (基本ではない) であるため、ClientMessageInspector を使用して BeginRequest 中に手動で Auth ヘッダーを追加することはできません。このプロパティが設定されている場合と設定されていない場合では、要求/応答トラフィックに明確な違いがあります。これはダイジェスト認証 (基本ではない) であるため、ClientMessageInspector を使用して BeginRequest 中に手動で Auth ヘッダーを追加することはできません。このプロパティが設定されている場合と設定されていない場合では、要求/応答トラフィックに明確な違いがあります。これはダイジェスト認証 (基本ではない) であるため、ClientMessageInspector を使用して BeginRequest 中に手動で Auth ヘッダーを追加することはできません。
Preauthenticate が設定された .NET 2.0 Style Web Reference Client を使用した Fiddler トレース。401 は 1 つだけで、残りのリクエストには Auth ヘッダーがあることに注意してください。

WCF スタイル サービス参照クライアントでトレースします。リクエストごとに、サーバーから 401 が生成されました。

2 つのオプションが表示されます。
- クライアント コードを .NET 2.0 スタイルの Web 参照クライアントを使用するように切り替えます。カスタムの障害処理を行っているため、これは大きな動きとなります。
- WCF ChannelFactory の WebRequest または HTTPRequest オブジェクトにアクセスし、PreAuthenticate プロパティを設定する方法を見つけます。実際の WebRequest オブジェクトにアクセスするには??
他のオプションはありますか??
redirect - Websphere 8 + Spring Security preAuthentication + 保護されたリソースへの認証されていないリクエストの後にログインページにリダイレクトしない
認証されていないユーザーによる、ローテーションされたリソースへのリクエストの後、login.jsp ページへのリダイレクトに問題があります。私の JSF 2 Web アプリは WAS 8.5 にデプロイされ、カスタム データベース レルムを使用してカスタム セキュリティ ドメインを設定し、Spring-Security フレームワークを使用した従来の preAuthenticated シナリオの下に立っています。JBoss 6.1.0 ではすべて正常に動作すると述べています!!! さて、私は古典的なフォームベースのログイン(j2ee標準)でアプリをセットアップしました:
Spring Securityガイドが示すように、従来のセキュリティ制約構成によるページの保護:
私の Spring セキュリティは次のように表示されます。
ご覧のとおり、 org.springframework.security.web.authentication.preauth.websphere.WebSpherePreAuthenticatedProcessingFilterをオーバーロードしました。これは、doAuthentication() メソッドが匿名リクエストの場合、WAS から「UNAUTHENTICATED」に等しいプリンシパル値を返し、Spring AbstractPreAuthenticatedProcessingFilter クラスがプリンシパルに一致することに注意したためです。次のようにnullで:
その結果、ユーザーが匿名の場合、return ステートメントは実行されません。
しかし、これは私の問題を解決しません...保護されたリソースに対して認証されていないユーザー要求が行われた場合、コンテナー (WAS) を login.jsp ページにリダイレクトしたいと思います。私の構成が欠けているのは何ですか?このシナリオは JBoss 6 で正常に動作します。
前もって感謝します !!
spring-security - RequestHeaderAuthenticationFilter に基づいて、認証マネージャーを特定の CustomUserDetailsService に委任する方法は?
Spring ベースのアプリでユーザーの事前認証に問題があります。
これが私のシナリオです。従業員用と顧客用の 2 つの CustomUserDetailsServices があります。私のサーバーの前には、クライアント要求の Http ヘッダーに 2 つのヘッダー情報を追加するプロキシが実装されています。Header_Atheamと を呼び出しましょうHeader_B。
その春のセキュリティに次の手順を実行してもらいたい:
- を取得して
Header_Aで使用しEmployeeUserDetailsService、メソッドを呼び出しますloadUserByUsername(String name)。ユーザーが見つかった場合は、認証してアプリへのアクセスを許可します。 Header_Bユーザーが見つからない場合(従業員として識別されない場合)、そのセキュリティに を取得してで使用してもらいたいCustomerUserDetailsServiceです。
私は次のことを試しましたが、うまくいきますが、回避策があります(回避策を実行したくありません):
このことは次のことを行います。
- Header_A を受け取り、EmployeeUserDetailsService で使用します
- Header_B を受け取り、EmployeeUserDetailsService で使用します
- Header_A を受け取り、CustomerUserDetailsServie で使用します
- Header_B を受け取り、CustomerUserDetailsServie で使用します
私が行う回避策は、ヘッダーの長さを確認し (つまり修正します)、返すことです。1 つのヘッダーが間違った UserDetailsService にある場合
java - Grails Spring Security がパスワードの試行に失敗しました
LoginControllerのアクションauthfailで認証が失敗したときに、春のセキュリティコアgrailsプラグインでユーザーが入力したパスワードを取得する方法はありますか?
認証に失敗したときに入力したパスワードを知る必要があります。
java - Spring Web Service 事前認証フィルター マップ ロール
Tomcat 認証を使用して、Spring Web サービスの事前認証を構成しようとしています。pre-auth spring サンプルを試し、applicationContext-security.xml を以下のように構成して、デフォルトの spring 構成を使用しました。
ここで TESTROLE は tomcat-users.xml で定義されたロールですが、次のエラーが発生します。
なぜこれが起こるのですか?