2021-09-15 09:09:47 +00:00
|
|
|
= gitlab_ui_form_for @application_setting, url: network_admin_application_settings_path(anchor: 'js-ip-limits-settings'), html: { class: 'fieldset-form' } do |f|
|
2018-04-03 17:30:14 +00:00
|
|
|
= form_errors(@application_setting)
|
|
|
|
|
|
|
|
%fieldset
|
2021-09-15 09:09:47 +00:00
|
|
|
%legend.h5.gl-border-none
|
|
|
|
= _('Unauthenticated API request rate limit')
|
2018-06-13 07:40:55 +00:00
|
|
|
.form-group
|
2021-09-15 09:09:47 +00:00
|
|
|
= f.gitlab_ui_checkbox_component :throttle_unauthenticated_api_enabled,
|
|
|
|
_("Enable unauthenticated API request rate limit"),
|
|
|
|
help_text: _("Helps reduce request volume (e.g. from crawlers or abusive bots)"),
|
|
|
|
checkbox_options: { data: { qa_selector: 'throttle_unauthenticated_api_checkbox' } }
|
2018-06-13 07:40:55 +00:00
|
|
|
.form-group
|
2021-09-15 09:09:47 +00:00
|
|
|
= f.label :throttle_unauthenticated_api_requests_per_period, _('Max unauthenticated API requests per period per IP'), class: 'label-bold'
|
|
|
|
= f.number_field :throttle_unauthenticated_api_requests_per_period, class: 'form-control gl-form-input'
|
|
|
|
.form-group
|
|
|
|
= f.label :throttle_unauthenticated_api_period_in_seconds, _('Unauthenticated API rate limit period in seconds'), class: 'label-bold'
|
|
|
|
= f.number_field :throttle_unauthenticated_api_period_in_seconds, class: 'form-control gl-form-input'
|
|
|
|
|
|
|
|
%fieldset
|
|
|
|
%legend.h5.gl-border-none
|
|
|
|
= _('Unauthenticated web request rate limit')
|
|
|
|
.form-group
|
|
|
|
= f.gitlab_ui_checkbox_component :throttle_unauthenticated_enabled,
|
|
|
|
_("Enable unauthenticated web request rate limit"),
|
|
|
|
help_text: _("Helps reduce request volume (e.g. from crawlers or abusive bots)"),
|
|
|
|
checkbox_options: { data: { qa_selector: 'throttle_unauthenticated_web_checkbox' } }
|
|
|
|
.form-group
|
|
|
|
= f.label :throttle_unauthenticated_requests_per_period, _('Max unauthenticated web requests per period per IP'), class: 'label-bold'
|
2021-01-31 18:09:51 +00:00
|
|
|
= f.number_field :throttle_unauthenticated_requests_per_period, class: 'form-control gl-form-input'
|
2018-06-13 07:40:55 +00:00
|
|
|
.form-group
|
2021-09-15 09:09:47 +00:00
|
|
|
= f.label :throttle_unauthenticated_period_in_seconds, _('Unauthenticated web rate limit period in seconds'), class: 'label-bold'
|
2021-01-31 18:09:51 +00:00
|
|
|
= f.number_field :throttle_unauthenticated_period_in_seconds, class: 'form-control gl-form-input'
|
2021-09-15 09:09:47 +00:00
|
|
|
|
|
|
|
%fieldset
|
|
|
|
%legend.h5.gl-border-none
|
2020-11-20 15:09:16 +00:00
|
|
|
= _('Authenticated API request rate limit')
|
2018-06-13 07:40:55 +00:00
|
|
|
.form-group
|
2021-09-15 09:09:47 +00:00
|
|
|
= f.gitlab_ui_checkbox_component :throttle_authenticated_api_enabled,
|
|
|
|
_("Enable authenticated API request rate limit"),
|
|
|
|
help_text: _("Helps reduce request volume (e.g. from crawlers or abusive bots)"),
|
|
|
|
checkbox_options: { data: { qa_selector: 'throttle_authenticated_api_checkbox' }}
|
2018-06-13 07:40:55 +00:00
|
|
|
.form-group
|
2021-04-08 18:09:32 +00:00
|
|
|
= f.label :throttle_authenticated_api_requests_per_period, _('Max authenticated API requests per period per user'), class: 'label-bold'
|
2021-01-31 18:09:51 +00:00
|
|
|
= f.number_field :throttle_authenticated_api_requests_per_period, class: 'form-control gl-form-input'
|
2018-06-13 07:40:55 +00:00
|
|
|
.form-group
|
2021-04-08 18:09:32 +00:00
|
|
|
= f.label :throttle_authenticated_api_period_in_seconds, _('Authenticated API rate limit period in seconds'), class: 'label-bold'
|
2021-01-31 18:09:51 +00:00
|
|
|
= f.number_field :throttle_authenticated_api_period_in_seconds, class: 'form-control gl-form-input'
|
2021-09-15 09:09:47 +00:00
|
|
|
|
|
|
|
%fieldset
|
|
|
|
%legend.h5.gl-border-none
|
2020-11-20 15:09:16 +00:00
|
|
|
= _('Authenticated web request rate limit')
|
2018-06-13 07:40:55 +00:00
|
|
|
.form-group
|
2021-09-15 09:09:47 +00:00
|
|
|
= f.gitlab_ui_checkbox_component :throttle_authenticated_web_enabled,
|
|
|
|
_("Enable authenticated web request rate limit"),
|
|
|
|
help_text: _("Helps reduce request volume (e.g. from crawlers or abusive bots)"),
|
|
|
|
checkbox_options: { data: { qa_selector: 'throttle_authenticated_web_checkbox' } }
|
2018-06-13 07:40:55 +00:00
|
|
|
.form-group
|
2021-04-08 18:09:32 +00:00
|
|
|
= f.label :throttle_authenticated_web_requests_per_period, _('Max authenticated web requests per period per user'), class: 'label-bold'
|
2021-01-31 18:09:51 +00:00
|
|
|
= f.number_field :throttle_authenticated_web_requests_per_period, class: 'form-control gl-form-input'
|
2018-06-13 07:40:55 +00:00
|
|
|
.form-group
|
2021-04-08 18:09:32 +00:00
|
|
|
= f.label :throttle_authenticated_web_period_in_seconds, _('Authenticated web rate limit period in seconds'), class: 'label-bold'
|
2021-01-31 18:09:51 +00:00
|
|
|
= f.number_field :throttle_authenticated_web_period_in_seconds, class: 'form-control gl-form-input'
|
2021-09-15 09:09:47 +00:00
|
|
|
|
|
|
|
%fieldset
|
|
|
|
%legend.h5.gl-border-none
|
2021-01-04 12:10:44 +00:00
|
|
|
= _('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.')
|
2021-01-31 18:09:51 +00:00
|
|
|
= f.text_area :rate_limiting_response_text, placeholder: ::Gitlab::Throttle::DEFAULT_RATE_LIMITING_RESPONSE_TEXT, class: 'form-control gl-form-input', rows: 5
|
2018-04-03 17:30:14 +00:00
|
|
|
|
2021-04-08 18:09:32 +00:00
|
|
|
= f.submit _('Save changes'), class: "gl-button btn btn-confirm", data: { qa_selector: 'save_changes_button' }
|