[解決済み] SOAPセキュリティヘッダとSOAPヘッダの違いについて
2022-02-16 09:58:08
質問事項
SOAPセキュリティヘッダー(WSSE)と一般的なSOAPヘッダーの違いは何ですか?認証情報を送信するために、シンプルなSOAPヘッダだけを使用する場合はどうすればよいですか?
なぜこれを使う必要があるのか
<soapenv:Header>
<wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
<wsse:UsernameToken wsu:Id="UsernameToken-1">
<wsse:Username>login</wsse:Username>
<wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">XXXX</wsse:Password>
</wsse:UsernameToken>
</wsse:Security>
また、これを使用してはならない。
<S:Header>
<Username xmlns="http://ws.enterprise.com/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" SOAP-ENV:actor="http://schemas.xmlsoap.org/soap/actor/next">
Username text
</Username>
</S:Header>
ありがとうございました。
どのように解決するのですか?
どちらも、ユーザー名とパスワードを渡すという機能的な必要性を満たしています。
どちらも同じようにシンプルです。
1つは オープンスタンダード (実際には小さなものが1つ セットで 認証、メッセージの機密性、非否認など、エンドツーエンドのSOAPメッセージのセキュリティニーズに対応した、よく考えられた標準のことです)。もうひとつは、あなたのアプリケーションに特化したもので、独自仕様ですが、あなたが必要とするものすべてかもしれません。
WS-Securityを使用することで考えられるメリット。
-
すでに文書化されている
(手間が省ける。使用するドキュメントだけ
WS-Security UsernameToken
で、クライアントは グーグル 残りは) - すでに実装されている (消費者、場合によってはウェブサービス実装のための作業も少なくなります)。多くのライブラリフレームワーク(Java: Apache WSS4J , Apache CXF , JavaScript: Node.js , Python: サッズ )、IBMなどのJavaEEアプリサーバー ウェブスフィア オラクル ウェブロジック レッドハット JBoss AS などのエンタープライズ・プラットフォームがあります。 .NET - はすべて、この特定のオープンスタンダードでウェブサービスを保護するために、多くの場合、設定だけの技法があらかじめ組み込まれています ( WS-Security ユーザー名トークン ).
- 成長の余地あり。これはほんの一例です 多くの関連規格 . あるクライアントをユーザー名/パスワードで認証し、他のクライアントをデジタル署名で認証したいですか?そこには関連する規格があります。必要なXML構文だけでなく、様々な攻撃ベクトルを考慮したものを発明する必要はないだろう。オープンスタンダードはすでに多くの人の目で吟味されています。
考えられるデメリット
- 学習曲線 : 既成のものを使うということは、あなた(とあなたのクライアント)がある程度それを理解しなければならないことを意味します。
- 一部のエッジケースには過剰な対応 . ここで少し引き伸ばします。これはプロトタイプのWebサービスであり、ビジネスやプロダクションで使用する予定はないとします。 1つのウェブサービスと1つのウェブサービスクライアントを構築するのですか?一定期間放置しておきたくない使い捨てのコード?そうです。
関連
-
[解決済み] EclipseでXMLコードをフォーマットする
-
[解決済み] XPath count()関数
-
[解決済み] i:nil="true "とはどういう意味ですか?
-
[解決済み] xmlの変な文字列 (…)
-
[解決済み] exclude-result-prefixesが機能しない
-
[解決済み] xsltで文字列を文字列に置き換える
-
[解決済み] ActionScript 3 で SOAP ウェブサービスに "Null" (本当の苗字!) を渡す方法
-
[解決済み] SOAPとRESTの比較(相違点)
-
[解決済み】コンソールとファイルアペンダーを使用した非常にシンプルなlog4j2のXML設定ファイル
-
[解決済み】XML Schema minOccurs / maxOccurs デフォルト値
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] xpathSApplyを使用してRでXML属性をスクレイピングする
-
[解決済み] 自己閉鎖的なxsl:templateタグ?
-
[解決済み] ノード名の XPath ワイルドカード
-
[解決済み] 条件付きXpathステートメントを作成するには?
-
xmlファイルを記述する際には、ルート要素に先行する文書内のマークアップが整形されている必要があります。
-
末尾のセクションにコンテンツを入れることはできません。
-
[解決済み] Google Spreadsheet ImportXML Error: インポートされたXMLコンテンツはパースできません
-
[解決済み】JSONとXMLの比較【クローズド
-
[解決済み】シェルからXPathワンライナーを実行する方法は?
-
[解決済み】XML属性とXML要素