24

私は WCF とセキュリティに関してサークルを回っているので、ここでたくさんの質問を押し付けて、誰かが私が明確なイメージを得るのを手伝ってくれることを願っています.

  1. Transport と Message レベルのセキュリティの分かりやすい英語の説明を教えてください。

  2. Windows資格情報に基づいてユーザーを認証するSSLで実行されているサービスがあると思います。また、PrincipalPermission を介してサービス メソッドへのアクセスを制限する方法も理解していると思います。しかし、現在の IPrinciple を実際に取得するにはどうすればよいのでしょうか。サービスを呼び出している人に応じて異なる結果を返すことができます。

  3. トレースをオンにする方法を理解しました。「Microsoft Service Trace Log Viewer」を使用してトレース ログを表示できますが、何が表示されているかを理解できれば、どうしようもありません。このことを使用する方法を説明するまともなリソースはありますか?

  4. 「証明書」clientCredentialType を使用する場合、これは SSL とは異なりますか?

  5. 「Windows」clientCredentialType を使用する場合、どの Windows ユーザーが通過しているかを確認するにはどうすればよいですか?

  6. 私の要件は、basicHttpBindings を使用する必要があることを意味します。

    • トランスポート レベルのセキュリティしか利用できませんか?
    • このバインドにカスタムのユーザー名/パスワードを実装できませんか?

これらの質問はばかげているように思えるかもしれませんが、明確化の助けがあれば本当に役に立ちます.

編集:

  1. .asmx サービスと同様の方法でカスタム SOAP ヘッダーをサービスに追加するにはどうすればよいですか? これは有効なアプローチですか?

編集:

上記の質問に加えて、Active Directory をチェックすることにより、Windows ユーザーに基づいて Windows モバイル デバイスを認証できるかどうかを知りたいです。私がこれまでに見つけたすべてのことについて、それはありそうにないようです。

注: WCF の Windows CE のバージョンで何が利用できるかを知らない人のために: トランスポート レベルのセキュリティのみ、およびクライアント資格情報の種類に対してなし/証明書のいずれか。したがって、CE の WCF はデフォルトでこれを許可していないようですが、この情報をメッセージで (メソッド署名を介して) 安全に送信できますか? これは、この種の情報を送信する受け入れ可能な方法でしょうか?

4

3 に答える 3

15

私はすべての答えを知りませんが、ここに私が知っているものがあります

  1. トランスポートセキュリティとは、メッセージの転送中に通信が暗号化されるため、メッセージを読み取ったり改ざんしたりできないことを意味します。メッセージセキュリティとは、メッセージ自体の内容がトランスポートで暗号化されていることを意味しますが、必ずしも暗号化されているとは限りません。たとえば、メッセージセキュリティはHTTPで使用できますが、トランスポートセキュリティではHTTPS(または他のバインディング)を使用する必要があります。
  2. IPrincipalプリンシパル=Thread.CurrentPrincipal;
  3. 答えなし
  4. はい、SSL自体は証明書を使用しますが、同じではありません。クライアントに、サービスに認識されている証明書、または信頼できる機関によって署名された証明書を送信してもらい、サービスはクライアントが誰であるか、およびクライアントに電話をかけることを許可するかどうかを認識させることができます。SSLを使用すると、サードパーティがネットワークパッケージを傍受してクライアントとサービス間の通信を読み取れないようにするだけです。
  5. IPrincipalプリンシパル=Thread.CurrentPrincipal; プリンシパル.Identity.Name;
  6. いいえ。
    • オプションとしてNone、Transport、Message、Mixed securityがありますが、トランスポートセキュリティでは、プロトコルのセキュリティで保護されたバージョンであるため、HTTPSを使用してエンドポイントを呼び出す必要があります。
    • 編集:このフォーラムのディスカッションをチェックしてください。

そして、質問は確かに愚かではありません。

PS Juval Lowyによる本のプログラミングWCFサービスをお勧めします。これは非常に詳細で、WCFを拡張する/特定のものを単純化する非常に便利なフレームワークが付属しています。

于 2009-01-19T00:15:24.067 に答える
4

WCF セキュリティ ガイダンスを参照してください。より多くの情報が必要な場合は、そこにすべてを見つけることができるはずです。非常に完全です。@olleがかなり完全な答えを出したように見えますが....

于 2009-01-19T07:29:38.603 に答える
0

これらのWCF共通セキュリティシナリオも確認してください

于 2012-07-06T03:36:03.963 に答える