Skip to content

1.5.4.0 の変更点 ​

第2版作成 最終更新 (日本時間)
確認バージョン1.5.4.0

リリース日: 2026年5月12日。1.5.3.0 からの変更です。機能追加・仕様変更と不具合修正を分けて記載します。

機能追加・仕様変更 ​

  • その他 — SessionGuidの管理をCookieで行うようとなるよう改めた。

不具合修正 ​

  • その他 — スマートデザインでタブの追加、編集時に設定中の項目が非表示になる不具合を修正。
  • その他 — 自参照しているリンク項目がある場合、スマートデザインが表示されない状態を修正。
  • その他 — Site Visualizerでオプション項目を利用した場合に、アクセス権がないサイトを閲覧できてしまう不具合を修正。
  • 利用者・権限 — 「項目のアクセス制御」の「その他」タブの設定が保存できない不具合を修正。
  • 画面・表示 — 一覧「履歴も表示」有効時に $p.selectedIds() / grid.SelectedIds() が アプリケーションエラーとなる不具合を修正。
  • その他 — 「内容」「説明」「コメント」項目などに大きな画像を貼り付けた際にアプリケーションエラーとなる不具合を修正。
  • 運用・設定 — Mail.jsonでOAuth2.0認証を有効化かつ、InternalDomainsがnullの場合に、通知設定とメール設定のアドレス帳登録でエラーとなる不具合を修正。
  • その他 — コメントを編集すると、レコード内全てのコメントの更新日時が更新される不具合を修正。
  • 画面・表示 — プロセス、ビューの特定の機能を操作時にアプリケーションエラーが発生する不具合を修正。
  • その他 — クラスタリングのサーバ構成で、クラスタ再起動時にBackgroundJobが多重実行される不具合を修正。
  • 利用者・権限 — ダッシュボードのアクセス制御タブの検索時に、権限追加済みのユーザが表示される不具合を修正。
  • API・拡張 — 「無効」に設定した計算式が存在している場合に、IDの重複した計算式が追加される不具合を修正。
  • 画面・表示 — ダッシュボードのカンバンで、レコードの表示上限を超えるサイトの場合に、フィルタによる絞り込みができない不具合を修正。
  • その他 — 「検索機能を使う」がONの項目で、フィルタ条件等の設定時にシングルクォートを含む選択肢を有効化、無効化できない不具合を修正。
  • 画面・表示 — 一覧のカスタムデザインで「更新日時または作成日時」を使用していると一覧編集からレコードを新規作成する際にエラーが発生する不具合を修正。
  • その他 — 日付項目のフィルタで「月を使用」した場合に、選択肢の表示開始月がズレる不具合を修正。
  • API・拡張 — 共有サーバスクリプトで変数をconst宣言したときに同一条件のスクリプトが複数あると実行時にサーバスクリプトエラーになる不具合を修正。
  • その他 — 第2世代インターフェースで印刷時にチェックボックスとラジオボタンが正常に表示されない不具合を修正。

実装を読む ​

1.5.3.0 との差分を確認しています。この版は画面・権限・スクリプト・ジョブの修正が中心ですが、セッション識別子の保持方法にも変更があります。

Context.SetSessionGuid() は、ASP.NET Core のセッションデータから SessionGuid を読む方法から、専用 Cookie Pleasanter_SessionGuid を読む方法に変わりました。Cookie の値は平文の GUID ではなく、ASP.NET Core の Data Protection で保護されます。復号できない Cookie は削除します(Context.cs、Context.cs)。

Cookie の属性実装
HttpOnly常に true
SecureSecurity.SecureCookies が有効、または HTTPS のとき true
SameSiteLax
Pathサブディレクトリの PathBase があればその値、なければ /

属性は CreateSessionGuidCookieOptions() で組み立てます。Cookie の Path を固定で / にするのではなく、サブディレクトリに配置したアプリケーションにも合わせます(Context.cs)。

ログイン時に識別子を入れ替える ​

サインイン処理では RotateSessionGuid() を呼び、新しい GUID に変更します。その際、共有セッションのデータも旧 GUID から新 GUID に移します。DB の Sessions.SessionGuid を更新し、KVS を使う構成では Redis の通常キーと _readOnce キーも改名します(Context.cs、Context.cs)。

ログアウトやセッション破棄では専用 Cookie を削除します。Cookie の追加だけでなく、ログイン・ログアウトとデータの引き継ぎまで含めた変更です(Context.cs)。

カスタム連携と複数インスタンスで確認する点 ​

Context.Token() は、専用 Cookie から得た GUID を優先して SHA-512 の値を作ります。専用 Cookie が取得できない場合は従来の .AspNetCore.Session を使います。独自コードでセッション Cookie とトークンの関係を扱っている場合は、変更後の生成処理を確認してください(Context.cs)。

専用 Cookie の復号にも Data Protection を使うため、複数インスタンスでは同じキーを参照する構成が関係します。後続の 1.5.7.0 では、データ保護キーの格納先に Redis が追加されます。

調査元 ​

変更履歴

第2版1.5系の変更記事に設定例と実装の詳細を追加
第1版1.5.4.0 の変更点と4項目の比較データを追加