「ASP.NET CoreのセッションをRedisに保存する」を編集中
この編集を取り消せます。 下記の差分を確認して、本当に取り消していいか検証してください。よろしければ変更を保存して取り消しを完了してください。
最新版 | 編集中の文章 | ||
2行目: | 2行目: | ||
− | == 前提 == | + | == 実装 == |
+ | === 前提 === | ||
* ASP.NET Core 8.0.1 | * ASP.NET Core 8.0.1 | ||
− | == nuget == | + | === nuget === |
− | |||
* Microsoft.Extensions.Caching.StackExchangeRedis | * Microsoft.Extensions.Caching.StackExchangeRedis | ||
− | == appsettings.json == | + | === appsettings.json === |
ConnectionStringsにredisの設定を書く。 | ConnectionStringsにredisの設定を書く。 | ||
<source lang="json"> | <source lang="json"> | ||
26行目: | 26行目: | ||
</source> | </source> | ||
− | == | + | === service === |
+ | |||
appsettings.jsonを読み込みredisサービスを追加する。 | appsettings.jsonを読み込みredisサービスを追加する。 | ||
<source lang="csharp"> | <source lang="csharp"> | ||
54行目: | 55行目: | ||
=== セッションの暗号化 === | === セッションの暗号化 === | ||
− | asp.net | + | asp.net coreではセッションデータが暗号化されます。 |
+ | その関係で初期状態のままでは複数のサーバー(異なるアプリ)でデータ共有することができません。 | ||
− | + | 暗号化の設定は2パターンあります。 | |
* アプリ名を統一する | * アプリ名を統一する | ||
* 共通のキーを使う | * 共通のキーを使う | ||
+ | |||
+ | なお、無効化はできないっぽいです。 | ||
複数のウェブサーバーのセッションを共有するだけならアプリ名の統一が簡単です。 | 複数のウェブサーバーのセッションを共有するだけならアプリ名の統一が簡単です。 |