ruby-on-rails - attr_encrypted gem 必须指定一个 iv - Ruby on Rails
问题描述
我正在尝试User
在 Ruby on Rails 中加密我的模型上的两列。我已经成功加密了另一个表上的 6 个其他列,但这次我must specify an iv
只在User
表上得到错误。
我正在使用设计 gem 进行身份验证。
这是我添加列的原始迁移:
class AddPushNotificationColumnsToUser < ActiveRecord::Migration[5.1]
def change
add_column :users, :endpoint, :string
add_column :users, :expiration_time, :string
add_column :users, :encrypted_p256dh, :string
add_column :users, :encrypted_auth, :string
add_column :users, :encrypted_p256dh_iv, :string
add_column :users, :encrypted_auth_iv, :string
end
end
我的模型:
attr_encrypted :p256dh, key: Rails.application.secrets.db_encryption_key
attr_encrypted :auth, key: Rails.application.secrets.db_encryption_key
当我打电话User.first.p256dh
或User.first.auth
收到错误消息时:must specify an iv
任何帮助,将不胜感激。
解决方案
推荐阅读
- ios - 在 Katalon Studio 中,如何在没有标签或名称对象属性时点击 iOS 应用程序的元素
- python - 在 flask-sqlalchemy 中使用 rank().over() 函数在“(”附近返回 (sqlite3.OperationalError):语法错误
- python - 是否可以在 Tensorboard 上指定标量绘图颜色?
- javascript - 如何在 where 条件下从 firebase 获取值
- kotlin - Kotlin 类属性不变
- unit-testing - 使用 'where:' 块的每个功能方法仅设置/清理一次
- laravel - 使用到数据透视表的外键为表创建雄辩的关系 - Laravel
- python-3.x - 如何从 AWS Lambda 授权方 (python) 返回自定义消息?
- c# - 使用 c# 更改默认纸张大小不起作用
- azure - 没有密钥的 JSON 数组 - Azure 逻辑应用