エルハン -
セキュリティの主な目的は、ソース コードを保護することではなく、顧客のデータを保護することです。 そのためには、A) 通信が安全 (SSL) である、b) コードが適切なセキュリティを実装している (SQL インジェクション攻撃を受けない)、c) データベースが安全であることを確認する必要があります。
(A) - 通信セキュリティ - については、 Thawteのような人から SSL 証明書を取得する必要があります(私は Thawte を使用しています)。サーバーに Cert をインストールするときは、Web サイトが安全な (SSL) 接続のみを受け入れるようにする必要があります。少なくとも、機密データを含むすべてのページについてです。たとえば、クレジット カード データを含むすべてのフォームは、SSL 経由で送信する必要があります。
(B) - コードのセキュリティ - これは一冊の本に値します! たとえば、Web ページから収集したフォーム/要求データを追加するだけで SQL 呼び出しを構築してはなりません(これにより、 SQL インジェクション攻撃を受けやすくなります)。 すべてのSQL 引数はパラメーター化する必要があります。などなど SO 投稿でセキュリティを説明できる人はいません。学ぶべきことがたくさんあります。
(C) - SQL Server セキュリティ - これも複雑なトピックですが、重要なポイントがいくつかあります。あなたの説明に基づいて、SQL Server が Web アプリと同じサーバーで実行されていると想定しています。これは、ANYを受け入れたくないことを意味します。ネットワークからの接続。デスクトップの SQL Management Studio から簡単にアクセスできるように、これを開いたままにしないでください...これは、恐ろしい、ばかげたセキュリティ慣行です。リモート サーバーにサインオンした後、リモート デスクトップ経由でアクセスできます。また、「sa」アカウントを無効にします。今すぐ実行してください。ポート 1433 であなたを見つけた人 (すべてのネットワーク アクセスを無効にしない場合) は、何年にもわたって sa アカウントに対して毎秒、毎分、などのブルート フォース パスワード推測を投げかけます。少数の顧客のために維持している Web サイト以外のデータベースで、1 日に約 17,000 件のデータを取得しています。ここで学ぶべきことはまだありますが、この 2 つの手順を実行すれば、十分にカバーできます。念のため、MS セキュリティ サーフェス分析ツールも実行して、その推奨事項に従うことをお勧めします。
仮想マシンのホスティングに関しては、問題ないはずです。ただし、専用ホスティングは、MaximumASPで月額約 199 ドルしか実行されません(私が使用し、推奨し、ビジネスで最高のものだと思います!)。成功した場合にビジネスを簡単に拡張できるように、独自の専用サーバーの使用を検討することをお勧めします.
データベースに関しては、SQL Server Express がこれに対応しています。もちろん、将来 Workgroup Edition にアップグレードすることもできます。データベースの制限は、実際に制限に達しない限り、Web サイトのボトルネックにはなりません。その可能性が高いかどうかを判断する必要があります。そうは言っても、無料版の MS データベース (特に財務データを保持するもの) で専門的な Web サイトを実行しようとすることはお勧めできません。どんな成功を収めたとしても、それらの限界にぶつかる可能性があります。多くの Web ホスティング会社 (特に MaximumASP) では、SQL Server のプロフェッショナル バージョンを最小限の価格 (月額 25 ドルなど) でサーバーの価格に追加できます。
最後に、あなたは Web アプリケーションと Windows アプリケーションについて少し混乱しているようです。Web アプリでは、ユーザーはソース コード/DLL にアクセスできません (IIS は、DLL や .config ファイルを含むさまざまなファイルへのアクセスをブロックします)。アプリケーションをダウンロードしてインストールするわけではないため、コードに署名する必要はなく、難読化する必要もありません。この文脈では、「リフレクター保護」は私には意味がありません。
ホスティング会社にコードが表示されることが心配な場合は、別のホスティング会社を探す必要があります。そうは言っても、評判の良いホスティング会社があなたのソースコードを見ることを本当に気にかけているとは思えません。
幸運を!