問題タブ [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.
soap - JNA Kerberos ws-security SOAP
WS-security で保護された SOAP サービス (Java) を 1 つ 1 つ終了します。もう一方の端は、SOAP サーバーのクライアントとして機能する HTTP サーバー (Java) です。
次の委任チェーンを持つユーザーにシングル サインオン (Negotiate/Kerberos を使用) を実装したいと考えています: ブラウザ >> HTTP サーバー >> SOAP サーバー
ブラウザ >> HTTP サーバーは問題なく動作しています (HTTP でネゴシエート)。
HTTP サーバーでユーザーになりすます、2 番目のホップ HTTP サーバー >> SOAP サーバーは、JNA を使用したいのでより困難であり、1 つのトークンを使用して認証を実行したい (ハンドシェークを回避する)。一方向認証しか必要ないため、可能であると思われます。
エンベロープで HTTP サーバーから SOAP サーバーにトークンを渡すことも機能しており、SOAP サーバー側にインターセプターがあります。私の唯一の問題は、AcceptSecurityContext を呼び出すときにSEC_I_CONTINUE_NEEDEDステータスにならない興味深いトークンを生成することです。
SOAP サービスのトークンを取得するクライアント コード (JNA は Waffle プロジェクトによってラップされます):
}
Kerberos トークンを検証するための SOAP サーバー コード
問題は、acceptSecurityTokenがSEC_I_CONTINUE_NEEDEDを返し、(最初のホップで HTTP を介して行われたように) ハンドシェイクを行うことになります。ここでは、(可能であれば) サーバーが単一のトークンで満足することを本当に望んでいます (SOAP API の現在の設計は完全にステートレスであり、この方法で維持することが望まれます)。
asynchronous - lua waffle での同期ファイル保存
waffle lua Web アプリケーションがあり、送信されたビデオ ファイルをいくつかのコマンド ライン ツールを使用して処理する必要があります。
問題は、req.form.file の save 関数の呼び出しが非同期であるため、ファイルが実際に保存される前に実行が続行されることです。
そのパスでコマンド ライン ツール ffprobe を呼び出すと、無効なデータを示すエラーが発生します。コンソールで同じコマンドを使用すると、期待どおりに機能します。
私の推測では、ffprobe の呼び出しが実行されたときに、ファイルはまだ保存されていません。
lua waffle アプリでさらにコマンドを実行する前に、ファイルがディスクに書き込まれていることを確認する方法はありますか?