asp.net 4.0にWebアプリケーションを実装しました。お客様は、アプリケーション自体のメンテナンスと限定的な改善を行えるように、ソースコードも提供する必要がありますが、アプリケーションを変更して販売できないようにする必要があります。他の顧客にとって、解決策は何ですか?
1 に答える
1
あなたが彼らに完全なソースコードを与える場合、彼らがそれを(ソースとしてまたはコンパイルされたソリューションとして)再配布するのを防ぐ唯一の方法は、彼らとあなたの間のライセンス契約の条件にすることです。コードでは、これを強制するコードを削除するだけではバイパスできないように強制する方法はありません。
一部のコンポーネントをコンパイル済みアセンブリとして提供できる場合(たとえば、データアクセス層や特定のUIコントロールライブラリなど、変更する必要のないコンポーネント)、これらのライブラリ内に何らかの形式のライセンスチェックを配置して、次のいずれかを実行できます。以下:
- ファイル内のライセンスキーが、
web.config
それが実行されているサーバーのIPアドレスと一致することを確認します(127.0.0.0や192.168.0.0などの「プライベート」IPアドレス範囲で着信した要求に対して包括的「許可」を行うことを検討してください)。 、..開発者がテストを実行できるようにするため)。 - コードを実行しているサーバーが許可されていることを確認するために提供するライセンスWebサービスへの「PhonesHome」(サーバー/ファイアウォールがこの確認を許可するように構成できるように、これが発生することを認識していることを確認してください)。おそらく、SSLを介してこれを実行し、バイパスを困難にすることをお勧めします。
上記の2つの項目のいずれかを実行する場合、アセンブリの逆コンパイルと入力したチェックの削除が停止しないことに注意してください。この場合、コンパイルされたアセンブリを難読化することを検討してください。
于 2012-04-05T07:23:20.923 に答える