Adds on optional API key to repositories management controller and reposman.rb.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3201 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
@@ -59,8 +59,8 @@ class SysController < ActionController::Base
|
||||
|
||||
def check_enabled
|
||||
User.current = nil
|
||||
unless Setting.sys_api_enabled?
|
||||
render :nothing => 'Access denied. Repository management WS is disabled.', :status => 403
|
||||
unless Setting.sys_api_enabled? && params[:key].to_s == Setting.sys_api_key
|
||||
render :text => 'Access denied. Repository management WS is disabled or key is invalid.', :status => 403
|
||||
return false
|
||||
end
|
||||
end
|
||||
|
||||
@@ -3,7 +3,15 @@
|
||||
<div class="box tabular settings">
|
||||
<p><%= setting_check_box :autofetch_changesets %></p>
|
||||
|
||||
<p><%= setting_check_box :sys_api_enabled %></p>
|
||||
<p><%= setting_check_box :sys_api_enabled,
|
||||
:onclick => "if (this.checked) { Form.Element.enable('settings_sys_api_key'); } else { Form.Element.disable('settings_sys_api_key'); }" %></p>
|
||||
|
||||
<p><%= setting_text_field :sys_api_key, :size => 30,
|
||||
:id => 'settings_sys_api_key',
|
||||
:disabled => !Setting.sys_api_enabled?,
|
||||
:label => :setting_mail_handler_api_key %>
|
||||
<%= link_to_function l(:label_generate_key), "if ($('settings_sys_api_key').disabled == false) { $('settings_sys_api_key').value = randomKey(20) }" %>
|
||||
</p>
|
||||
|
||||
<p><%= setting_multiselect(:enabled_scm, REDMINE_SUPPORTED_SCM) %></p>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user