問題タブ [ws-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.
java - Java からの SOAP の UserNameToken
Netbeans から gSoap で生成された wsdl を使用しようとしています。Web サービスでは、UserNameToken を渡す必要があります。SoapUI (動作) から wsdl を使用すると、次のように送信されます。
ただし、ハンドラーを使用して Netbeans から試してみると ( How do I add a SOAP Header using Java JAX-WS で参照)、次のようになります。
次のような SOAP ヘッダーを生成します。
これにより、Web サービスは認証エラーで応答します。
したがって、私の質問は次のとおりです。
- UserNameToken を正しい方法で (SoapUi のように) 生成するにはどうすればよいですか?
- ハンドラーを使用するか、Apache WSS4J のような外部 WSSE ライブラリを使用する方がよいでしょうか (誰かがこのサンプル コードを見せてくれますか)。
c++ - WS-Securityを使用したSOAPWebサービスへのVS2003/ C ++アクセスにgSOAPを使用しますか?
C ++ / VS 2003でのみ拡張可能な古いプラットフォームが、WS-Securityを使用するSOAPベースのWebサービスを呼び出すことができるようにするプロジェクトが予定されています。
私のGoogleの調査によると、gSOAPが最善の方法である可能性があります。
検証や代替案を探しています。
c# - C# で WS-Security を使用するには?
両側 (要求と応答) の暗号化と署名に WS-Security を使用する Web サービスを C# で作成する方法は?
クライアントとサーバーは証明書を使用します。
.net - この Web サービス アーキテクチャの具体的なセキュリティ リスクは何ですか?
実稼働のカスタマー サービス アプリケーションと直接対話する一連の外部から利用可能な Web サービスのWS-Securityを促進する弾薬が必要です。私のビジョンは、IPassword プロバイダーを実装し、AD ストアで認証することです。高度なアーキテクチャーの推奨事項は SSL であり、ルーターに IP フィルターを使用して、特定の IP アドレスのみが Web サービスを呼び出すことを許可します。アクセスは GUID キーで許可されます。ログインやパスワードは不要です。
キーは、当社の Web サービスへのアクセスを許可された各パートナーに付与されます。それは私たちによって生成され、おそらく電子メールで送信されます。私が知っている有効期限ポリシーはありません。
これは私には間違っているように感じますが、ここでは実際の認証が行われていないという私の主張を彼らは受け入れていません。このアーキテクチャには具体的にどのようなセキュリティ リスクがありますか? 正確にどのような攻撃シナリオが可能であり、システムを侵害するのはどれほど簡単でしょうか? リスクの詳細を説明できる必要があり、場合によっては、アーキテクチャ チームにリスクを示す必要もあります。
java - WSContext.getUserPrincipal() がパスワード ダイジェスト認証に対して null を返す
私の WebService では、呼び出し元の ID をログに記録する必要がありますが、WS-Security とパスワード認証を使用してユーザーが認証されていても、wsContext.getUserPrincipal() は null を返します。JAX-WS 2.1 の JavaDocs によると、WSContext.getUserPrincipal() は、ユーザーが認証されていない場合にのみ null を返す必要があります。
ユーザー プリンシパルを WSContext に設定するには、セキュリティ ハンドラで何かを行う必要がありますか? ドキュメントは、それが自動的に行われることを示しているようです。
Tomcatのjax-ws 2.1.3スタックでmetro 1.1スタック(1.1.5だと思います)を使用しています。
wcf - SSL によって転送されるメッセージ内のセキュリティ トークン
WCF では、次のような SOAP ヘッダーを確保する必要があります。
ここで、タイムスタンプとボディ パーツ/要素は、メッセージに含まれる直接参照される証明書 (BinarySecurityToken) によってデジタル署名され、機密性は SSL (IIS ホステッド サービス) によってトランスポート レベルでのみ保証されます。現在、私はクラス TransportSecurityBindingElement と HttpsTransportBinding を使用していますが、まだ私が望むように SOAP ヘッダーを取得できません... 問題は (メッセージ トレースによると) BinarySecurityToken 要素に id、EncodingType、ValueType などの属性がなく、メッセージ本文がないことです。署名済み (私は ProtectionLevel を Sign in 契約に設定しました)
誰かがこれにスキルを持っているなら、私は非常に感謝します。
java - ws-securityで提供されるユーザーまたは識別子の読み取り方法
最新のApacheCXFを使用してWebサービスを作成しています。を使用してws-securityを構成しorg.apache.cxf.ws.security.wss4j.WSS4JInInterceptor
ました。私の場合、クラスのメソッドをpasswordCallbackClass
呼び出すことでユーザーまたは識別子にアクセスできます。getIdentifier()
org.apache.ws.security.WSPasswordCallback
セットアップ全体にスプリングも使用しています。
コード内の他の場所で識別子にアクセスする方法を知りたいですか?ThreadLocal
私は私ので使用することを考えることができましたpasswordCallbackClass
か?別の方法は、すべてのサービスメソッドパラメータで識別子プロパティを定義することですが、それはクライアントが識別子を2回渡す必要があることを意味します。1つはセキュリティブロックで、もう1つはサービス呼び出しでですか。
編集
sayHi
私のサービスクラスは次のようになり、メソッドの識別子を読み取る必要があります。
私のパスワードコールバックメソッドは、識別子を取得できる場所です。
iphone - 暗号化されたws-securitySOAPメッセージからの暗号化されていないEncryptedDataタグの先頭にある16バイトの「ガベージ」とは何ですか?(WCF)
WS-Security標準の一部を実装してiPhone<->WCF相互通信を行うためにWCF要求メッセージを検査しています(basicHttpBindingで証明書セキュリティを使用しています)。
標準のxmlenc-coreを読んだ後、SignedInfoタグとBodyタグの両方を復号化できましたが、暗号化されていない両方のタグの先頭に16バイトが表示されています。
iPhoneからセルフホストのWCFにリクエストを送信するために、標準に従ってサンプルアプリケーションを作成しましたが、「メッセージのセキュリティを確認するときにエラーが発生しました」と応答し続けます。実装方法がわからないのは16バイトだけですが、16バイトで何を使用するか知っている人はいますか?
ありがとう
c# - WS-Securityを使用し、ASMX WebサービスからUsernameTokenにアクセスする方法は?
これで、現在.NET3.5で実行されているレガシーASMXWebサービスがあり、VisualStudio2008を使用しています。
問題は、認証を追加する必要があり、現在認証する必要のない既存の内部クライアントを壊すことなく、WS-Securityモデルを利用したいということです。
カスタムヘッダーを追加することを検討しましたが、それはWS-Security風ではありません。また、WCFへのアップグレードは、長期的な目標ではありますが、短期的には実行可能ではありません。
VS2008 ASMX Webサービスのsoapヘッダーで間接的にUsernameTokenにアクセスする方法はありますか(クライアントから渡された場合)?