0

Webアプリケーションをクライアントに販売しており、サードパーティのコンポーネントがいくつか含まれています。これらのコンポーネントは、web.configに格納されているライセンスキーが必要です。ソースコードやライセンスを販売していないので、その価値を何らかの形で暗号化する必要があります。パッケージ化されたASP.NETソリューションのWeb.Config値を暗号化します

いいえあなたがweb.configのセクションを暗号化するためにaspnet_regiisを使用できることはわかっていますが、私はこれがホストマシン上で行われ、一意のマシンIDを使用して暗号化を行うことを理解しています。つまり、クライアントがの後に暗号化を行うことができるのは、です。

私たちは事前にこの値を暗号化する必要がある展開部分については何も制御していません。本質的には、アプリをクライアントに渡すときに暗号化されている必要があります。

アイデア?

+1

ベンダーと適切なライセンス契約を結んでいることを確認してください。第三者のコンポーネントを組み込んだアプリケーションを販売できるライセンスがある場合、コンポーネントベンダーは認証ソリューションを提供する必要があります。 – mellamokb

+1

ライセンスキーはあなたのものではなく、あなたのものではなく、無関係です。独自または社内のライセンスキーを配布することは悪い考えです。 –

+0

@mellamokb - 私は法務部ではありませんが、私にはこれが当てはまると私は確信しています。 –

答えて

1

コンピュータのキーを使用する既定の暗号化メカニズムを使用しないようにコマンドを実行し、暗号化にカスタムキーコンテナを使用する場合は、ProtectedConfigurationProviderを設定できます。 ProtectedConfigurationProviderの1つはRsaProtectedConfigurationProviderであり、コマンドは次のようになります。詳細はthis & thisをご覧ください。

aspnet_regiis -pe "connectionStrings" -app "/SampleApplication" -prov "RsaProtectedConfigurationProvider" 
+1

RSA暗号化に使用される鍵を配布するという問題があります。技術的に、ユーザーがそのキーにアクセスする方法を持っている場合は、同じ解読を手動で実行してweb.configの内容を読み取ることができます。 – mellamokb

関連する問題