5

asp / c#でWebサイトを構築しており、外部の人が管理する複数のサーバーに展開する必要があります。

サーバーにアクセスできる人がコードにアクセスして再利用するのを避ける必要があります。

これまで聞いたオプションの1つは、コード内のMACアドレスを確認できることですが、MACアドレスはユーザーが変更できます。

この種の状況を回避するために利用できる最も安全なオプションは何ですか?

4

6 に答える 6

3

あなたにはいくつかの選択肢がありますが、多くの人がコメントしているように...多分それらは価値がありません。

  • 法務:サーバーで働く外部の人に機密保持契約に署名してもらいます。
  • 信頼できる外部の人:信頼できる人を雇います。友達、昔の同僚など。
  • ダミーサーバー:外部の人が何をしたいかによっては、アプリのダミーバージョンを作成する場合があります。たとえば、外部のユーザーにIISおよびWCFサービスをインストールして構成してもらいたい場合は、何もしないWCFサービスのダミーバージョンのみを展開します。後で、外部の人が仕事をした後、ダミーコードを実際のコードに置き換えることができます。
  • コードを難読化する:コードを難読化するためのツールを使用して、コードを難読化することができます。(難しいということは不可能という意味ではありません)
  • コードを削除するMahmoud Fayezが示唆しているように、コードを外部のWebサービスに移動して、ロジックなしでUIを使用することはおそらく可能です。ただし、外部の人があなたのために何をするか、そしてあなたのアプリの正確な詳細に依存します。

唯一の信頼できるものは次のとおりです。

  • 自分のサーバーにデプロイする:コードが非常に機密性が高く、誰もコピーしないことを保証したい場合は、自分で実行してください。十分な時間とモチベーションを持つプログラマーにとって、管理タスクはそれほど難しいものではありません
于 2013-02-28T08:16:29.403 に答える
2

100%信頼できる唯一の方法は、他のユーザーが実際にデプロイされたファイルにアクセスできないようにすることです。

コードはそもそも機能する必要があるため、十分に動機付けられたクラッカーは、何をしても、基になるソースを取得します。

デプロイフォルダを監査して、アクセスログを取得できます。相互作用を妨げることはありませんが、少なくとも誰が何を取得したかはわかります...何もないよりはましです。

于 2013-02-28T08:04:04.390 に答える
1

最も制御力のあるオプション:外部の人が管理する1台の外部サーバーを展開しないでください。

他のすべてのものはあなたのコードを保護するためのより少ないオプションを持っているでしょう、そしてあなたはただどの時点で価格が支払っても大丈夫かを決める必要があります。

于 2013-02-28T08:04:31.367 に答える
0

ソースコード全体をサーバーに配置するのではなく、Webサイトを「公開」して、コンパイルされたWebサイトにすることができます。

ここでガイドを見つけることができます

于 2013-02-28T08:04:58.783 に答える
0

通常、Webアプリを完全に「クローズド」ソースにすることはできません。

binにコンパイルされたDLL(難読化可能)の他に、ビューページ(.aspx、.ascx、.master、.cshtml)に小さな「オープンソース」が必要です。

100%閉じたい場合は、非標準の方法を使用してビューを提供することを検討してください。これにより、すべてをDLLにパックし、さまざまなURLを処理するhttpハンドラーコードを記述できます。

于 2013-02-28T08:35:51.120 に答える
0

これを行う必要がある場合は、企業レベルで何か間違ったことをしていることを示唆しています。最善の手順は、通常、著作権侵害を防止しようとするのではなく、それを受け入れることです。コードを誰でも簡単に利用できるようにし、必要に応じて自分でトレントサイトにシードしますが、実行は非常に制限された方法でのみ行います。たとえば、一度に1つの接続のみであるため、ライセンスの登録と購入には明らかな利点があります。

ライセンスを明確で手頃な価格にし、ソフトウェアを海賊版にする動機がない場合、予防は常に治療よりも優れています。

于 2013-02-28T09:02:02.190 に答える