1. ホーム
  2. web-services

[解決済み] セキュアなWebサービス:REST over HTTPS vs SOAP + WS-Security。どちらが優れているか?[クローズド]。

2022-04-20 13:05:16

質問

<余談
クローズド . この質問は 意見型 . 現在、回答は受け付けておりません。

<パス

この質問を改善したいですか? 事実と引用で答えられるように、質問を更新する。 本論文の編集 .

クローズド 7年前 .

私は決してセキュリティの専門家ではありませんが、RESTスタイルのウェブサービスを作ることに賛成です。

送信するデータの安全性を確保する必要がある新サービスを作るにあたって。 HTTPSを備えたRESTとWS-Securityを備えたSOAP WS、どちらのアプローチがより安全かという議論に突入しています。

私は、すべてのWebサービスの呼び出しにHTTPSを使用することができ、このアプローチは安全であるという印象を持っています。 私は、銀行や金融機関のウェブサイトで HTTPS が十分であれば、私にとっても十分だと考えています。 繰り返しになりますが、私はこの分野の専門家ではありませんが、これらの人々はこの問題についてかなり真剣に考え、HTTPSに慣れているのだと思われます。

同僚はそれに反対で、SOAPとWS-Securityが唯一の方法だと言っています。

この件に関しては、ウェブ上では賛否両論あるようです。

このコミュニティで、それぞれの長所と短所について意見を聞かせてもらえないだろうか。 ありがとうございます。

解決方法は?

HTTPSは、ネットワーク上のメッセージの伝送を保護し、サーバーの身元についてクライアントにある程度の保証を提供します。これは、銀行やオンライン証券会社にとって重要なことです。クライアントを認証する彼らの関心は、コンピュータの ID ではなく、あなたの ID にあるのです。だから、カード番号、ユーザー名、パスワードなどが、あなたを認証するために使われる。その後、送信内容が改ざんされていないことを確認するために、通常いくつかの予防措置が取られますが、全体として、セッションで起こることはすべて、あなたによって開始されたとみなされるのです。

WS-Securityは、メッセージの作成から消費に至るまで、機密性と完全性の保護を提供します。したがって、通信のコンテンツが正しいサーバによってのみ読み取られることを保証する代わりに、サーバ上の正しいプロセスによってのみ読み取られることを保証します。セキュアに開始されたセッションのすべての通信が認証されたユーザーからのものであると仮定する代わりに、各通信は署名されなければならない。

裸のバイク乗りが登場する面白い解説があります。

https://docs.microsoft.com/archive/blogs/vbertocci/end-to-end-security-or-why-you-shouldnt-drive-your-motorcycle-naked

WS-SecurityはHTTPSよりも保護機能が高く、SOAPはRESTよりもリッチなAPIを提供するわけですね。私の意見としては、追加機能や保護が本当に必要でない限り、SOAPとWS-Securityのオーバーヘッドをスキップすべきだということです。私はそれが少し対処療法であることを知っているが、実際にどのくらいの保護が正当化されるかについての決定(単に構築するのがクールであることではなく)は、問題を密接に知っている人々によって行われる必要があります。