GovernIB / projectebase

Projecte Base - JBoss 7.2 EAP & Open JDK 11
4 stars 0 forks source link

Renombrar y añadir autenticación en endpoints de ejemplo #61

Closed acuevas-dgtic closed 4 years ago

acuevas-dgtic commented 4 years ago
  1. GET: Añadir autenticación a api/services/unitats
  2. GET: Añadir autenticación a api/services/unitats/{i}/
  3. POST: Renombrar api/services/unitats por api/services/unitats/add. Devolver mensaje de error en formato JSON en caso de que ya exista.
  4. POST: Añadir api/services/unitats/{1}/delete con autenticación.
antonireus commented 4 years ago

Respecte l'autenticació. Entenc que l'idea és que tots els mètodes estiguin autenticats, atès que els dos únics que ara no hi estan són els que es demana afegir autenticació. Seria però també amb role PBS_ADMIN, o PBS_USER, o amb qualsevol role mentre estigui autenticat?

D'altra banda, ara la seguretat està posat a nivell de url-pattern i mètode http dins el web.xml, potser seria més entenedor posar-ho a nivell de recurs REST amb els @RolesAllowed a cada mètode específic?

acuevas-dgtic commented 4 years ago

Sí, la idea es que estén todos autenticados. El rol puede ser PBS_ADMIN

Sí, mejor ponerlo en el @RolesAllowed de cada método

antonireus commented 4 years ago

Pel que fa l'estructura de les URIs i mètodes HTTP havíem seguit les convencions més o manco estàndard que estan recollides a llocs com aquest: https://restfulapi.net/http-methods/

Si cal emprar aquesta altre convenció cap problema, entenc que això d'emprar mètodes HTTP "no habituals" pot no anar bé a tothom. Però entenc que seria millor també documentar-ho també a qualque banda, ja que per dir-ho de qualque manera no és el que un s'espera trobar.

D'altra banda, respecte la modificació d'unitats orgàniques, que es fa amb un PUT a /services/unitats/{i} es manté així? o seguint més o manco la idea dels canvis que proposats, s'hauria de passar a un POST /services/unitats/{i}/modify ?

acuevas-dgtic commented 4 years ago

Desconocía esta convención. Si es así podemos dejar los nombres tal cual. Hay que añadir autenticación a los métodos que no lo tengan