2012-05-10 8 views
0

"ベータ版"をアップロードしたいとし、信頼関係に問題があるとします。 有効期限を追加するにはどうしたらいいですか?Webアプリケーション(ASP.NET)の有効期限をハードコーディングしていますか?

私は期限切れの日付をハードコードすることを考えましたが、だれでも.NET dllを逆コンパイル/再コンパイルすることができました。

次に、アプリを自分のファイルに対して繰り返して削除する必要があるかもしれないと考えました。しかし、その後、IISの作業者は重要なDLLを削除した後に停止し、他のものを削除することはできません。 BINを含むすべてのフォルダに対して書き込み権限を設定する必要があるという事実は言うまでもありません。

まあ...どんなアイデアですか?

+0

:)をしてくださいので、私の心を交差させ何か、あなたはあなたを意味Windowsサービスをホストできませんか? – IrishChieftain

+0

私は、私たちが完全に信頼していない誰かのサーバーに一時的にホストする必要があるということです。 –

+2

もしあなたがあなたの保護を破って、彼らが抱くものを握ると決心したら、あなたは信用できない人に何か重要なものを配っている場所に決して置かないでください。 – RhysW

答えて

1

スケーラビリティーの計画的な削減を計算するために、「しきい値以上のチック」を使用して、さまざまな時間しきい値ですべての遅延や何かを導入するような意味のある入力変数としてコードを使用できます。これらを複数の場所に配置し、コメント.csでマークすると、必要に応じて削除するのは簡単ですが、dllから根絶するには高価すぎます。

+0

私は実際にそのアイデアを非常に気に入っています。これは完全なソリューションのための途中の1つのステップです... –

1

ハードコードされた日付のチェックをどこかに追加し、obfuscateアプリケーション。

アップデート:私はそれはあなたが商用ツールのいくつかを使用する場合は特に、難読化アセンブリ内の日付チェックを見つけるのは簡単だろう言わないだろう

。もちろん、これは100%安全なものではありません。私は難読化されたアセンブリをデバッグ/クラッキングする経験はありませんが、市販の難読化装置で何ができるのか、彼らが何を行うことができますか。

あなたのアプリケーションがインターネットに接続されているという事実を利用することができるだけでなく、いくつかの外部リソースをチェックすることができます。もちろん簡単に盗聴することもできますが、そのスクリプトは他のサーバーで暗号化されています。その後、アプリケーションはそのスクリプトをダウンロードし、復号化して実行する必要があります。リモートサーバから削除すると、その機能を再現することは非常に難しくなります。第三者がスクリプトをダウンロードして利用できなくなったときにそのサービスを提供する可能性があるので、それに注意してください。多分Rosylnを使用して、そのスクリプトの代わりにc#コードを使用することができます。私は似た何もしなかった

、おそらくいくつかのより多くの問題がある、それはちょうどあなたがこの方法は、あなたの研究を行うに行きたい場合は、信頼の問題が

+0

日付チェックが容易に見つけられるので、それは私のためには十分ではありません。しかし、おそらく私はそれを私ができる最も重要なファイルを削除すると組み合わせるでしょう。私はそれで寝るつもりで、もっと完全な解決策が出てくるかもしれません。 –

関連する問題