Feature OSM quotas
[osm/Features.git] / Release8 / OSM_Quotas.md
1 # Support for OSM Quotas
2
3 ## Proposers
4
5 - Alfonso Tierno (Telefonica)
6 - Gerardo Garcia (Telefonica)
7 - Francisco Javier Ramon (Telefonica)
8
9 ## Type
10
11 Feature
12
13 ## Target MDG/TF
14
15 NBI, osmclient, UI
16
17 ## Description
18
19 This feature aims to provide quotas at OSM NBI level. A quota is a limit of packages, vims, repos, instances, etc. 
20 that can be created in OSM for a concrete project. Each project will have each own set of individual quotas. 
21 Quotas can be set for `nfpackages`, `nspackages`, `netslice-templates`, `netwok-services`, `netlice-instances`, 
22 `vims`, `wims`, `sdn-controllers`, `pdus`, `k8s-clusters`, `k8s-repos`, `osm-repos`; and in general for any 
23 other item inside the scope of an OSM project.
24
25 Creation of `users`, `projects`, `roles`, etc. will not have quotas, as these are administrative tasks.
26
27 Without this quota limit, OSM can be easily attacked, exhausting the database and volume used to store 
28 packages, just by onboarding plenty of packages in a loop.
29
30 A large quota number (e.g. 500) is applied by default when there is not quota established.
31
32 ## Demo or definition of done
33
34 Create a new project. Set a low quota for e.g. nfpackages. Onboard vnfpkgs and test that it is denied when quota limit is reached. A clear error message from NBI should be obtained. Edit project increasing the quota and test that a new vnfpkg can be added. Test that the quota of one project does not affect other projects.
35