Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[FEATURE] Create APIs to support configuration of rate limiting #4614

Closed
derek-ho opened this issue Aug 1, 2024 · 2 comments · Fixed by #4641
Closed

[FEATURE] Create APIs to support configuration of rate limiting #4614

derek-ho opened this issue Aug 1, 2024 · 2 comments · Fixed by #4641
Assignees
Labels
enhancement New feature or request triaged Issues labeled as 'Triaged' have been reviewed and are deemed actionable.

Comments

@derek-ho
Copy link
Collaborator

derek-ho commented Aug 1, 2024

Is your feature request related to a problem?
Coming from: opensearch-project/security-dashboards-plugin#2070, there is a request to support configuration of rate limiting/auth failure listeners via UI. In order to better support this, I am proposing that the backend security plugin expose some way to modify these settings, instead of only being able to be modified via config, securityadmin.sh, or admin cert.
What solution would you like?
An API that would be able to create/modify/delete these settings.
What alternatives have you considered?
None
Do you have any additional context?
None

@derek-ho derek-ho added enhancement New feature or request untriaged Require the attention of the repository maintainers and may need to be prioritized labels Aug 1, 2024
@cwperks cwperks added triaged Issues labeled as 'Triaged' have been reviewed and are deemed actionable. and removed untriaged Require the attention of the repository maintainers and may need to be prioritized labels Aug 5, 2024
@cwperks
Copy link
Member

cwperks commented Aug 5, 2024

[Triage] @derek-ho It sounds like a good idea to have an API for this. Can you also post some detail about the API like the route, params and responses?

@derek-ho
Copy link
Collaborator Author

Hi @cwperks I was thinking of something like the following (subject to change):

GET /authfailurelisteners/${id} - return response like:
200
{type: ip
allowed_tries: 10
time_window_seconds: 3600
 block_expiry_seconds: 600
max_blocked_clients: 100000
max_tracked_clients: 100000}
GET /authfailurelisteners - return response like:
200
[
{...}, ....
]
DELETE /authfailurelisteners/${id} - return response like:
200
POST /authfailurelisteners
{type: ip
allowed_tries: 10
time_window_seconds: 3600
 block_expiry_seconds: 600
max_blocked_clients: 100000
max_tracked_clients: 100000}

 - return response like:
201
PUT /authfailurelisteners/${id}
{type: ip
allowed_tries: 10
time_window_seconds: 3600
 block_expiry_seconds: 600
max_blocked_clients: 100000
max_tracked_clients: 100000}

 - return response like:
201

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request triaged Issues labeled as 'Triaged' have been reviewed and are deemed actionable.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants