将 Rails 7 中的加密列迁移到确定性

问题描述 投票:0回答:1

我们有一个需要查询的加密列属性。该列由 ActiveRecord 加密(非确定性)。所以解密一行是没有问题的。但无法查询多行/全部行的属性。

是否可以将非确定性列迁移到确定性列?或者在最坏的情况下完全删除该列的加密?

寻找可能的迁移,当然我不是第一个遇到这个问题的人。但是我找不到任何相关的东西。还尝试向模型添加 确定性:true 进行测试。然而,它似乎适用于新数据,不适用于已加密的数据。

ruby-on-rails rails-activerecord
1个回答
0
投票

(全面披露:我对您的确切问题没有实际经验)

还尝试向模型添加确定性:true以进行测试。然而,它似乎适用于新数据,不适用于已加密的数据。

这让我认为你最好的选择是将其视为一个全新的专栏,而不是试图“修复”现有的专栏:

使用确定性方法添加新列。编写一个迁移,将数据从非确定性数据读取到确定性数据。切换您的代码以使用新列并删除旧列。

© www.soinside.com 2019 - 2024. All rights reserved.