問題タブ [waffle]

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 に答える
2371 参照

internet-explorer - ワッフルとIEで失われた投稿パラメータ

デバッグのために、テキストフィールドと送信ボタンを含む小さなフォームを含む単純なJSPページのみを含む非常に単純なWebアプリケーションを作成しました。

Tomcatは、このページのワッフルフィルターを使用するように構成されています。フォームを同じページに送信しますが、フィルターでカバーされていない別のURLで送信します。Postパラメータは完全に失われますが、ntmlトークンが送信されます。

だから夏に:

  • http://myserver/autologin/test.jsp(ワッフルフィルターを通過)にアクセスします
  • そのページには、同じページであるが別のURL(エイリアス)で参照されている(http://myserver/content/test.jsp)を指すアクションを含むフォームがあります。
  • その2番目のリクエストですべてのPOSTパラメータが失われます

waffle.codeplex.comとIE8のWaffleを使用しています。

編集:これは、他のNTLMフィルターを使用している場合にも発生します。したがって、問題はここではワッフルではなく、POST要求が発行されるたびにNTLMセッションを再認証することを強制するInternetExplorerです。

誰かが以前にこの問題を経験したことがありますか?

0 投票する
0 に答える
1242 参照

tomcat - Struts 1.3.8 は Tomcat 5.0.28 で動作しますが、Tomcat 7 では失敗します

私の Web アプリケーション環境: Struts 1.3.8 + Java JDK 1.6 + Tomcat 5.0.28 + WAFFLE 認証

以下に説明するプロセス:

Tomcat 5.0.28 では、問題なく動作します。Tomcat 7 でアプリケーションを実行しようとすると、TestServlet のセッション属性から値を取得できません。Tomcat 7 で見つけた tomcat ログ ファイルを確認した後、/test_project/testSerlvet を取得すると、セキュリティ パッケージが別のポートに再接続し、新しいセッションが生成され、前のセッションのすべての値が失われます。ログは次のとおりです。

セキュリティ パッケージが Tomcat 7 で新しい接続を開くのに、Tomcat 5 では接続を維持するのはなぜですか? 問題の内容と解決方法を知っている人はいますか?

前もって感謝します。

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

java - パスワードを手動で入力しても WAFFLE にサインインできないのはなぜですか?

WAFFLE を使用して Web サーバーを Windows 認証と統合しています。

短いホスト名を使用して Web サーバーにアクセスすると、サーバーは Chrome と IE の両方で「信頼されている」と見なされ、すべてが期待どおりに機能します。

完全なホスト名を使用してまったく同じ Web サーバーにアクセスすると、サーバーは「信頼できる」とは見なされなくなり (IP アドレスが変更されていないため、正直なところ、これはがらくたです)、ブラウザーに関係なく、パスワード (これで問題ありません。サーバーは信頼されていません。)

問題は、正しいパスワードを入力してもログインできないことです。代わりに、同じパスワード ダイアログが何度も表示されます。

Mac のブラウザからアクセスすると、ログイン ダイアログが表示され、そこでパスワードを入力するとログインに成功します。

2 つの違いは、Windows ではブラウザーが Authorization: Negotiate を送信し、Mac OS X では Authorization: Basic を送信することです。

私がワイヤーで見ている完全なヘッダー:

これは、「NTLMSSP\0....バイナリ データ....」にデコードされます。

バイナリ データは、資格情報またはそのハッシュを含めるのに十分な大きさではないため、ブラウザがパスワードを要求し、それを使用して認証する代わりにパスワードを破棄したと信じるようになりました。

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

java - ドメイン名をサーブレット認証トークンに挿入します

WebアプリのSSOソリューションにWaffleを使用しています。

すべて正常に動作しますが、一部の機能を少し変更したいと思います。

現在、ユーザーがドメインに接続していない場合、SSOは失敗し、小さな認証ダイアログが開きます。

ここに画像の説明を入力してください

Windows認証には、次のような形式のユーザー名が必要ですDomain\Usernameが、ほとんどのユーザーは、ユーザー名の前にドメインを追加することを知りません。そのため、指定されていない場合はデフォルトのドメイン名を提供したいと思います。

デコードされた認証トークンにアクセスできるようにするオーバーライド可能なワッフル関数を見つけました。ワッフル関数にを追加するprintlnと、ユーザー名がプレーンテキストで表示されます(ダイアログに入力された内容に応じて、ドメインの有無にかかわらず) )::

その関数全体はWaffleAPIからのものであり、最初にprintlnを追加しただけです。

渡されたユーザー名は、このトークン内のランダムなバイト文字の束の間にプレーンテキストで出力されます(ÉsR=ÍtÍö?æ¸+Û-)。

私は確かにJNAとJava全般に頭を悩ませていますが、ここでユーザー名を確認できるので、このトークンのユーザー名部分にドメイン名を追加する方法があるはずだと思いました。私は間違っている可能性があります。

pbClientToken私の他のアイデアは、このメソッドが渡される生のbyte[]トークンから作成されたドメインを追加することでした。

これpbClientTokenJNAStructureオブジェクトの派生物です。有望に見えたStucture方法writeFieldですが、どの分野を書けばいいのかわからないようです。メソッドはStructure.getFieldsから利用できないようですpbClientToken

これがbyte[]処理またはJNAに精通している人にとっては単純な問題であることを望んでいました。

0 投票する
0 に答える
360 参照

java - C++ クライアントから Windows 2003 Server で waffle を使用する Java SSO

クライアントが C++ で記述され、サーバーが Java (両方とも Windows 上で実行) で記述され、通信に CORBA を使用する従来のクライアント/サーバー アプリケーションがあります。サーバー上の Java アプリケーションは、TomCat または他のアプリケーション サーバーを使用しないことに注意してください。

クライアントの Active Directory 認証を有効にするために、サーバーでWaffleライブラリを使用し、クライアントで Windows API を使用して、次の投稿で説明されているようにネゴシエートSSPI 交換ループを実行しています:クライアント サーバー アプリケーションで Active Directory を使用してユーザーを認証する

SSPI Exchange ループの MSDN サンプルには、クライアントとサーバー間で複数の送受信呼び出しがあります (おそらく NTLM 認証も説明するため) が、サーバーに認証トークンを 1 回送信するだけで、クライアントを正常に認証できました。

サーバーが Windows Server 2003 以降で実行され、クライアントが Windows XP 以降で実行されている場合、Kerberos が使用され、複数の送受信呼び出しは必要ないと想定しても安全ですか?

Tomcat で Java+waffle を使用して認証する場合、認証トークンが 1 回だけ送信されることに気付きます。

0 投票する
0 に答える
133 参照

windows - Web アプリケーションの再デプロイ後に Tomcat を再起動する

こんにちは、Tomcat を使用しており、Windows 認証に Waffle を使用しています。Microsoftのドライバーを使用して、Windows資格情報も使用してSQLサーバーに接続しています。アプリケーションをリロードまたは再デプロイするたびに、Tomcat を再起動する必要があるという問題があります。グーグルで調べたところ、dllが既にロードされているため、再ロードできないことがわかりました。

一部の機能を更新する必要があるため、アプリケーションを再デプロイする必要があり、アプリケーションを更新するたびに管理者に tomcat を再起動するよう依頼するのは非常にイライラします。

グラスフィッシュで同じことをしていたとき、なんとかこの問題を回避できましたが、Tomcatでは管理できません

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

spring - Spring Security Role Hierarchy の問題

Waffle NTML を使用して認証するときに Spring Security でロール階層の投票を有効にしようとしていますが、継承されたロールが期待どおりにプリンシパルの権限として表示されないという未知の問題があり、インターセプト URL の両方で hasRole 式が防止され、authorize jsp taglibs が使用されます。 .

次のガイドに基づいてワッフルを統合しています: https://github.com/dblock/waffle/blob/master/Docs/spring/SpringSecuritySingleSignOnFilter.md

これは、標準のRoleVoterを使用してアプリケーション内で期待どおりに機能しますが、(LDAP 認証プロバイダーを使用して) 独自にテストしたRoleHierarchyVoterを使用するようにカスタマイズしようとすると問題が発生し、ロール階層はまったく同じように機能します。期待される。

Waffle と RoleHierarchyVoter を組み合わせたアプローチの構成は次のとおりです。

ワッフル固有の構成

おなじみのSpring Security Config

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

spring-mvc - SpringSecurityで現在のユーザーの役割を取得する方法

認証された現在のユーザーのすべてのロールを取得して、JSPページに表示しようとしています。

http://static.springsource.org/spring-security/site/docs/3.0.x/reference/el-access.htmlにいくつかの組み込み式がリストされていることに気付きましたが、それは表示されません。すべての役割を一覧表示します。

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

grails - grailsアプリケーションにサードパーティのサーブレットを追加する方法はありますか?

Grailsを初めて使用し、Grailsアプリケーションにサードパーティのサーブレットを追加する方法があるかどうか疑問に思っていますか?

ワッフルをグライルで使おうとしています。https://github.com/dblock/waffle/blob/master/Docs/spring/SpringSecurityAuthenticationProvider.mdで説明されているように、Springセキュリティを使用してMVCアプリでWaffleを正常に使用できました。

私のMVCアプリでは、認証用に次のようなBeanを追加できました。

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

java - SSO を使用した Java EE WebLogic および Spring

WebLogic 11 にデプロイされた Spring アプリで SSO を機能させようとしています。これには Waffle 実装を使用しています。

私は設定しました:
entry-point-ref="negotiateSecurityFilterEntryPoint"
そして
<custom-filter ref="waffleNegotiateSecurityFilter" position="BASIC_AUTH_FILTER" />

私も追加しました

MyCustomNegotiateSecurityFilterは標準の Waffle クラスの単なるコピーなので、影響はありません。

この構成は、IP アドレスを使用してアプリにアクセスする場合は正常に機能しますが、ホスト名を (ドメインと共に) 使用すると、SSO を機能させることができません - 401 Unauthorized 応答。

誰かがそのような行動の理由をアドバイスできるかもしれません。