60 lines
3.5 KiB
Text
60 lines
3.5 KiB
Text
= form_for @application_setting, url: network_admin_application_settings_path(anchor: 'js-ip-limits-settings'), html: { class: 'fieldset-form' } do |f|
|
|
= form_errors(@application_setting)
|
|
|
|
%fieldset
|
|
%h5
|
|
= _('Unauthenticated request rate limit')
|
|
.form-group
|
|
.form-check
|
|
= f.check_box :throttle_unauthenticated_enabled, class: 'form-check-input', data: { qa_selector: 'throttle_unauthenticated_checkbox' }
|
|
= f.label :throttle_unauthenticated_enabled, class: 'form-check-label label-bold' do
|
|
Enable unauthenticated request rate limit
|
|
%span.form-text.text-muted
|
|
Helps reduce request volume (e.g. from crawlers or abusive bots)
|
|
.form-group
|
|
= f.label :throttle_unauthenticated_requests_per_period, 'Max unauthenticated requests per period per IP', class: 'label-bold'
|
|
= f.number_field :throttle_unauthenticated_requests_per_period, class: 'form-control'
|
|
.form-group
|
|
= f.label :throttle_unauthenticated_period_in_seconds, 'Unauthenticated rate limit period in seconds', class: 'label-bold'
|
|
= f.number_field :throttle_unauthenticated_period_in_seconds, class: 'form-control'
|
|
%hr
|
|
%h5
|
|
= _('Authenticated API request rate limit')
|
|
.form-group
|
|
.form-check
|
|
= f.check_box :throttle_authenticated_api_enabled, class: 'form-check-input', data: { qa_selector: 'throttle_authenticated_api_checkbox' }
|
|
= f.label :throttle_authenticated_api_enabled, class: 'form-check-label label-bold' do
|
|
Enable authenticated API request rate limit
|
|
%span.form-text.text-muted
|
|
Helps reduce request volume (e.g. from crawlers or abusive bots)
|
|
.form-group
|
|
= f.label :throttle_authenticated_api_requests_per_period, 'Max authenticated API requests per period per user', class: 'label-bold'
|
|
= f.number_field :throttle_authenticated_api_requests_per_period, class: 'form-control'
|
|
.form-group
|
|
= f.label :throttle_authenticated_api_period_in_seconds, 'Authenticated API rate limit period in seconds', class: 'label-bold'
|
|
= f.number_field :throttle_authenticated_api_period_in_seconds, class: 'form-control'
|
|
%hr
|
|
%h5
|
|
= _('Authenticated web request rate limit')
|
|
.form-group
|
|
.form-check
|
|
= f.check_box :throttle_authenticated_web_enabled, class: 'form-check-input', data: { qa_selector: 'throttle_authenticated_web_checkbox' }
|
|
= f.label :throttle_authenticated_web_enabled, class: 'form-check-label label-bold' do
|
|
Enable authenticated web request rate limit
|
|
%span.form-text.text-muted
|
|
Helps reduce request volume (e.g. from crawlers or abusive bots)
|
|
.form-group
|
|
= f.label :throttle_authenticated_web_requests_per_period, 'Max authenticated web requests per period per user', class: 'label-bold'
|
|
= f.number_field :throttle_authenticated_web_requests_per_period, class: 'form-control'
|
|
.form-group
|
|
= f.label :throttle_authenticated_web_period_in_seconds, 'Authenticated web rate limit period in seconds', class: 'label-bold'
|
|
= f.number_field :throttle_authenticated_web_period_in_seconds, class: 'form-control'
|
|
%hr
|
|
%h5
|
|
= _('Response text')
|
|
.form-group
|
|
= f.label :rate_limiting_response_text, class: 'label-bold' do
|
|
= _('A plain-text response to show to clients that hit the rate limit.')
|
|
= f.text_area :rate_limiting_response_text, placeholder: ::Gitlab::Throttle::DEFAULT_RATE_LIMITING_RESPONSE_TEXT, class: 'form-control', rows: 5
|
|
|
|
= f.submit 'Save changes', class: "gl-button btn btn-success", data: { qa_selector: 'save_changes_button' }
|