我们正在探索如何通过仅允许关键功能在我们的rails应用程序中执行职责来限制SQL注入风险。我是安全官员,而非全职铁路人员。
我看到它的方式,只有在创建帐户(注册)或修改帐户(用户配置文件更新)时才会写入数据库。出于简化目的,我们假设用户在应用程序中没有发生其他更新。
如果某人没有阻止对只读请求的SQL注入攻击,我们将通过两次单独的调用得到更好的保护。
rails可以支持以下配置吗? -
如果是这样,那将如何查看数据库文件和代码请求?
答案 0 :(得分:0)
我想我不妨发布这个。
class User < ActiveRecord::Base
self.abstract_class = true
...
end
CUR =创建更新阅读
R =只读
class UserCUR < User
establish_connection "user_cur_database_#{Rails.env}"
end
class UserR < User
establish_connection "user_r_database_#{Rails.env}"
end
的database.yml
user_cur_database_production:
adapter: w.e.sql
host: yourhost
username: user_cur
password: ********
database: yourdb
user_r_database_production:
adapter: w.e.sql
host: yourhost
username: user_r
password: ********
database: yourdb
用户具有不同的访问权限
你可以做同样的事情,但是在实际的rails应用程序而不是数据库中,我知道这不是你正在寻找的东西,但可以提供更多的帮助。
Is there an easy way to make a Rails ActiveRecord model read-only?