2010-11-24 3 views
0

私はいくつかのWebメソッドを持つWebサービスを持っています。それぞれのWebメソッドはクライアントマシンにMACアドレスを送信する必要があり、サーバーはこの情報でこのクライアントベースを検証します(有効ではない場合はエラーを返します)。クライアントとサーバー間の通信はHTTPSです。私は約20人のクライアントしかいない。問題は、この権利を行う私の方法/安全かどうかです。そうでない場合、これを行う簡単な方法がありますか?ASP.Net Webサービスは十分安全ですか?

おかげで、

答えて

1

それは「十分に確保する」のは誰な定義は存在しない、あなたのセキュリティ要件に依存します。他の人が言っているように、MACは偽装されていて、事実上、ただの秘密/パスワードです。しかし、HTTPSによって接続の秘密性が保証される多くのシナリオでは、これで十分です。システムを保護したい脅威と、セキュリティにどれだけ投資する意思があるかを定義する必要があります。

+0

私の場合はあなたのコメントに感謝します。匿名のクライアントからの不正なコール(MACアドレスが違う)からサービスを保護し、サーバの負荷に不必要なストレスを与えますか? – Leo

+0

その場合は、現在のソリューションがうまくいくと思っており、基本的なフォーム認証も良い解決策になると思います。 MACを使用する際の主な問題は、MACを簡単に変更することができないことです。従業員が辞めて、彼が知っている秘密を変更しなければならない場合。 –

1

いいえ、それはあなたのデータベース内の有効なMACアドレスを知っている誰もがWebサービスを呼び出すことができますので、安全ではないのです。もちろんデータベース内の有効なMACアドレスを知ることは可能ではありません。パスワードを知っているかのようです。

+0

基本フォーム認証+ HTTPSはどうですか? – Leo

+0

@ケニー、WCFを使用している場合は、セキュリティを実装するさまざまな手法、トランスポートレベルまたはメッセージレベルがあります。基本フォーム認証+ HTTPSはOKです。 –

+0

私はWCFを使用していません。フォーム認証とHTTPSを試してみてください。 – Leo

1

クライアントは、許可されたマシンのMACアドレスを偽装することができます。したがって、これは安全ではありません。

クライアント証明書でWebサービスを保護すると、セキュリティが向上します。

チュートリアル:http://www.codeproject.com/KB/WCF/9StepsWCF.aspx

+0

あなたはもっと説明できますか?もちろんチュートリアルもありますので大歓迎です。ありがとう – Leo

+0

http://msdn.microsoft.com/en-us/magazine/cc163650.aspx#S6 – Ramesh

+0

私はWCFを使用していませんが、偉大なリンクをありがとう – Leo

関連する問題