私の仕事は単純です - 農場asp.netコアのmachinekeyを置き換える方法は?
内のサーバー間でクッキーを共有するために、私は、マシンキーを使用して、古い方法はasp.netコアで動作しないことを知っているが、DataProtectionのAPIが
があり、私は共有フォルダに鍵を保存できません(これはDataProtectionのデフォルトの組み込み動作です)
設定に鍵交換データを保存する方法はありますか? (古いasp.netのように)
私の仕事は単純です - 農場asp.netコアのmachinekeyを置き換える方法は?
内のサーバー間でクッキーを共有するために、私は、マシンキーを使用して、古い方法はasp.netコアで動作しないことを知っているが、DataProtectionのAPIが
があり、私は共有フォルダに鍵を保存できません(これはDataProtectionのデフォルトの組み込み動作です)
設定に鍵交換データを保存する方法はありますか? (古いasp.netのように)
あなたはファイルシステムフォルダにキーを保存できますが、セキュリティ上の懸念がありますが、web.configにキーを保存する場合と同様の懸念があります。
マシンキーのように1つのキーだけでなく、データ保護apiのキーが一定期間後に期限切れになり、自動的に必要なときに新しいキーが作成されるという点が異なります。たとえば、データ保護APIを使用して暗号化してデータベースに保存した場合、期限切れのキーを使用して後で暗号化を解除する必要があります。
この例では、Webアプリケーションメイン内のdp_keysという名前のフォルダにキーを保存していますフォルダ。
string pathToCryptoKeys = Path.Combine(environment.ContentRootPath, "dp_keys");
services.AddDataProtection()
.PersistKeysToFileSystem(new System.IO.DirectoryInfo(pathToCryptoKeys));
キーをファイルシステムに格納することは推奨されないアプローチです。 docsには、システムレジストリにアプリケーションプールごとのキーを格納できるpowershellスクリプトがあります。 Azureには、データ保護キーを格納するためのAzure鍵格納庫があります。