メインメニューを開く

差分

ASP.NET CoreのセッションをRedisに保存する

198 バイト追加, 2024年3月7日 (木)
編集の要約なし
== 実装 ===== 前提 ===
* ASP.NET Core 8.0.1
=== nuget ===[[Redis]]の[[NuGet]]を入れる。
* Microsoft.Extensions.Caching.StackExchangeRedis
=== appsettings.json ===
ConnectionStringsにredisの設定を書く。
<source lang="json">
</source>
==serviceとapp = service === 
appsettings.jsonを読み込みredisサービスを追加する。
<source lang="csharp">
=== セッションの暗号化 ===
asp.net coreではセッションデータが暗号化されます。その関係で初期状態のままでは複数のサーバー(異なるアプリ)でデータ共有することができません。coreではセッションデータ(や一時データなどはすべて)は問答無用で暗号化されます。デバッグ時であろうと無効化はできないっぽいです。その関係で初期状態のままでは複数のサーバー(異なるアプリ)でデータ共有することができません。このままではバックエンドに[[redis]]を使っている意味ないです。はい。
暗号化の設定は2パターンあります。暗号化の設定は2パターンあるようです。
* アプリ名を統一する
* 共通のキーを使う
 
なお、無効化はできないっぽいです。
複数のウェブサーバーのセッションを共有するだけならアプリ名の統一が簡単です。