Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Ruby: Общие вопросы > Insecure operation - file?


Автор: rasfast 27.8.2008, 08:14
День добрый!

Есть Rails приложение, и теперь пишу CGI скрипт, который должен пользовать те же модели., но запускаться отдельно.
Делаю следующее:
Код

require 'cgi'
require '../config/environment'
params = CGI::parse( ENV['QUERY_STRING'] ).each{ |key, el| {key => el.first} } #I don't know how to get GET vars in another way
seller = ContrSeller.find( :first, :conditions => { :id => params['seller_id'], :password => params['pass'] } ) #ContrSeller - is an existing model


И получаю такую ошибку:
Код

mod_ruby: error in ruby
mod_ruby: /usr/local/lib/ruby/gems/1.8/gems/activesupport-2.1.0/lib/active_support/dependencies.rb:169:in `file?': Insecure operation - file? (SecurityError)
mod_ruby: from /usr/local/lib/ruby/gems/1.8/gems/activesupport-2.1.0/lib/active_support/dependencies.rb:169:in `search_for_file'
mod_ruby: from /usr/local/lib/ruby/gems/1.8/gems/activesupport-2.1.0/lib/active_support/dependencies.rb:167:in `each'
mod_ruby: from /usr/local/lib/ruby/gems/1.8/gems/activesupport-2.1.0/lib/active_support/dependencies.rb:167:in `search_for_file'
mod_ruby: from /usr/local/lib/ruby/gems/1.8/gems/activesupport-2.1.0/lib/active_support/dependencies.rb:258:in `load_missing_constant'
mod_ruby: from /usr/local/lib/ruby/gems/1.8/gems/activesupport-2.1.0/lib/active_support/dependencies.rb:483:in `const_missing'
mod_ruby: from ./api.rb:6:in `new_session' 


Облазил весь инет, пробовал:
$SAFE = 0 #ругается, что нельзя понижать уровень безопасности
params = params.untaint #вообще никакого эффекта, то же самое пробовал и с каждым отдельным элементом params

Насколько я вижу, руби ругается именно на создание нового объекта = ContrSeller. Но это же не taint строка, почему же возникает Insecure operation при поиске соответствующего модуля?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)