Diferencia entre revisiones de «Autenticación B 1617»
(→Enlaces) |
|||
(No se muestran 17 ediciones intermedias del mismo usuario) | |||
Línea 18: | Línea 18: | ||
* [[Acta de reunión de grupo (14/12/2016)]] | * [[Acta de reunión de grupo (14/12/2016)]] | ||
* [[Acta de reunión de grupo (21/12/2016)]] | * [[Acta de reunión de grupo (21/12/2016)]] | ||
+ | * [[Acta de reunión de grupo (10/01/2017)]] | ||
= Gestión de incidencias = | = Gestión de incidencias = | ||
Línea 32: | Línea 33: | ||
= API = | = API = | ||
+ | Las llamadas a la API seguiran el siguiente patrón: | ||
− | {| border=" | + | "[Dominio]/api/index.php?method=[recurso]¶m1=value1¶m2=value2..." |
+ | |||
+ | donde "dominio" será el nombre del dominio de la aplicación (https://authb.agoraus1.egc.duckdns.org) "recurso" será el nombre del recurso que se quiere utilizar y los "paramX" será el nombre del parámetro a introducir. | ||
+ | |||
+ | {| border="2" style="border-collapse:collapse" | ||
|- | |- | ||
! Recurso | ! Recurso | ||
! Descripción | ! Descripción | ||
! Parámetros | ! Parámetros | ||
+ | ! Ejemplo de llamada | ||
! Respuesta | ! Respuesta | ||
! Ejemplo de respuesta | ! Ejemplo de respuesta | ||
|- | |- | ||
| getUser | | getUser | ||
− | | Obtiene un usuario del sistema, incluyendo sus datos | + | | Obtiene un usuario del sistema, incluyendo sus datos. |
| | | | ||
− | * user: | + | * user: Nombre del usuario |
+ | | https://authb.agoraus1.egc.duckdns.org/api/index.php?method=getUser&user=alerodrom | ||
| JSON con el usuario pedido. Los datos del usuario son los siguientes: "username", "name", "surname", "email", "genre", "autonomous_community", "age" y "role". | | JSON con el usuario pedido. Los datos del usuario son los siguientes: "username", "name", "surname", "email", "genre", "autonomous_community", "age" y "role". | ||
| | | | ||
Línea 56: | Línea 64: | ||
"age" : "21", | "age" : "21", | ||
"role" : "USUARIO" | "role" : "USUARIO" | ||
+ | } | ||
+ | |- | ||
+ | | getRoleUser | ||
+ | | Obtiene el rol del usuario que se le ofrece por parámetros. | ||
+ | | | ||
+ | * user: nombre del usuario cuyo rol queremos obtener. | ||
+ | | https://authb.agoraus1.egc.duckdns.org/api/index.php?method=getRoleUser&user=alerodrom | ||
+ | | JSON con el campo "role" indicando el rol del usuario siendo las opciones: "USUARIO", "CREADOR_VOTACIONES" y "ADMIN". | ||
+ | | | ||
+ | { | ||
+ | "role" = "USUARIO" | ||
} | } | ||
|- | |- | ||
| getUsers | | getUsers | ||
− | | Obtiene todos los usuarios del sistema, incluyendo sus datos | + | | Obtiene todos los usuarios del sistema, incluyendo sus datos. |
| | | | ||
+ | | https://authb.agoraus1.egc.duckdns.org/api/index.php?method=getUsers | ||
| JSON con un array con los datos de cada usuario. Los datos de cada usuario son los siguientes: "username", "name", "surname", "email", "genre", "autonomous_community", "age" y "role". | | JSON con un array con los datos de cada usuario. Los datos de cada usuario son los siguientes: "username", "name", "surname", "email", "genre", "autonomous_community", "age" y "role". | ||
| | | | ||
Línea 88: | Línea 108: | ||
| | | | ||
* token: token a validar. | * token: token a validar. | ||
+ | | https://authb.agoraus1.egc.duckdns.org/api/index.php?method=checkToken&token=alerodrom%3A5ca38d5a73c0f04c4f7cc1c35acc7a47 | ||
| JSON con el campo "valid" indicando la validez del token (true/false). | | JSON con el campo "valid" indicando la validez del token (true/false). | ||
| | | | ||
Línea 99: | Línea 120: | ||
* user: nombre del usuario cuyo token se va a comprobar. | * user: nombre del usuario cuyo token se va a comprobar. | ||
* token: token a validar. | * token: token a validar. | ||
+ | | https://authb.agoraus1.egc.duckdns.org/api/index.php?method=checkTokenUser&user=alerodrom&token=alerodrom%3A5ca38d5a73c0f04c4f7cc1c35acc7a47 | ||
| JSON con el campo "valid" indicando la validez del token (true/false). | | JSON con el campo "valid" indicando la validez del token (true/false). | ||
| | | | ||
Línea 108: | Línea 130: | ||
Si en una petición no se pasan unos parámetros correctos (métodos que no existen o falta de parámetros necesarios) se devolverá un error de código 400 con el siguiente mensaje: | Si en una petición no se pasan unos parámetros correctos (métodos que no existen o falta de parámetros necesarios) se devolverá un error de código 400 con el siguiente mensaje: | ||
Bad Request. This method doesn't exist or the necessary paramenters weren't provided | Bad Request. This method doesn't exist or the necessary paramenters weren't provided | ||
− | |||
= Enlaces = | = Enlaces = | ||
− | |||
* [https://github.com/AgoraUS-G1-1617/Autenticacion_b<nowiki>Enlace a GitHub</nowiki>]. | * [https://github.com/AgoraUS-G1-1617/Autenticacion_b<nowiki>Enlace a GitHub</nowiki>]. | ||
* [http://opera.eii.us.es/egc/public/trabajo/ver/id/49<nowiki>Enlace a Opera</nowiki>]. | * [http://opera.eii.us.es/egc/public/trabajo/ver/id/49<nowiki>Enlace a Opera</nowiki>]. | ||
* [https://travis-ci.org/AgoraUS-G1-1617/Autenticacion_b<nowiki>Enlace a Travis</nowiki>]. | * [https://travis-ci.org/AgoraUS-G1-1617/Autenticacion_b<nowiki>Enlace a Travis</nowiki>]. | ||
+ | * [https://jenkins.egc.duckdns.org/view/AgoraUS_G06/<nowiki>Enlace a Jenkins</nowiki>]. | ||
+ | |||
+ | * [https://authb.agoraus1.egc.duckdns.org/<nowiki>Autenticación</nowiki>]. | ||
+ | * [https://beta.authb.agoraus1.egc.duckdns.org/<nowiki>Autenticación Beta</nowiki>]. |
Revisión actual del 13:15 11 ene 2017
Contenido
Descripción
Creación de un subsistema de AGORA@US encargado principalmente de permitir acceder a la plataforma mediante la autenticación del usuario. La autenticación consiste en verificar el correcto acceso de los usuarios a la plataforma mediante las distintas opciones que se proporcionan. Este subsistema tiene que ofrecer una api clara y sencilla para que otras partes del sistema puedan usarlo.
Miembros
- Manuel Caballero Clá: Software Developer
- Carlos Campos Cuesta: Software Developer
- Alejandro Rodriguez Romero: Project Manager
- Carlos Ruiz Vargas: Software Developer
- Rubén Suárez Almenta: Software Developer
Diario de Grupo
Actas
- Acta de reunión de grupo (02/11/2016)
- Acta de reunión de grupo (23/11/2016)
- Acta de reunión de grupo (14/12/2016)
- Acta de reunión de grupo (21/12/2016)
- Acta de reunión de grupo (10/01/2017)
Gestión de incidencias
Las incidencias serán gestionadas mediante el apartado "Issues" que nos proporciona GitHub. Serán analizadas y clasificadas en distintos niveles de gravedad:
- Grave: Impide el correcto uso de la aplicación de forma crítica y necesita ser solucionado cuanto antes.
- Medio: El funcionamiento del sistema se ve afectado, aunque no de forma severa.
- Leve: Permite el uso de la aplicación, aunque no de forma correcta.
Tras su análisis y clasificación serán asignadas a un miembro del equipo de trabajo para su correción. Una vez corregido el problema será revisado y verificado por un miembro diferente del grupo. Si la incidencia ha sido solucionada, se procederá a su cierre y se archivará.
API
Las llamadas a la API seguiran el siguiente patrón:
"[Dominio]/api/index.php?method=[recurso]¶m1=value1¶m2=value2..."
donde "dominio" será el nombre del dominio de la aplicación (https://authb.agoraus1.egc.duckdns.org) "recurso" será el nombre del recurso que se quiere utilizar y los "paramX" será el nombre del parámetro a introducir.
Recurso | Descripción | Parámetros | Ejemplo de llamada | Respuesta | Ejemplo de respuesta |
---|---|---|---|---|---|
getUser | Obtiene un usuario del sistema, incluyendo sus datos. |
|
https://authb.agoraus1.egc.duckdns.org/api/index.php?method=getUser&user=alerodrom | JSON con el usuario pedido. Los datos del usuario son los siguientes: "username", "name", "surname", "email", "genre", "autonomous_community", "age" y "role". |
{ "username" : "carruivar", "name" : "Carlos", "surname" : "Ruiz Vargas", "email" : "mail@example.com", "genre" : "Masculino", "autonomous_community" : "Andalucía", "age" : "21", "role" : "USUARIO" } |
getRoleUser | Obtiene el rol del usuario que se le ofrece por parámetros. |
|
https://authb.agoraus1.egc.duckdns.org/api/index.php?method=getRoleUser&user=alerodrom | JSON con el campo "role" indicando el rol del usuario siendo las opciones: "USUARIO", "CREADOR_VOTACIONES" y "ADMIN". |
{ "role" = "USUARIO" } |
getUsers | Obtiene todos los usuarios del sistema, incluyendo sus datos. | https://authb.agoraus1.egc.duckdns.org/api/index.php?method=getUsers | JSON con un array con los datos de cada usuario. Los datos de cada usuario son los siguientes: "username", "name", "surname", "email", "genre", "autonomous_community", "age" y "role". |
[{ "username" : "carruivar", "name" : "Carlos", "surname" : "Ruiz Vargas", "email" : "mail@example.com", "genre" : "Masculino", "autonomous_community" : "Andalucía", "age" : "21", "role" : "USUARIO" }, { "username" : "alerodrom", "name" : "Alejandro", "surname" : "Rodriguez Romero", "email" : "mail2@example.com", "genre" : "Masculino", "autonomous_community" : "Madrid", "age" : "22", "role" : "CREADOR_VOTACIONES" }] | |
checkToken | Comprueba si un token es válido. Para ello, se obtiene el usuario correspondiente al token (indicado al comienzo del token), se genera el token del usuario y se comprueba si es igual que el pasado como parámetro. |
|
https://authb.agoraus1.egc.duckdns.org/api/index.php?method=checkToken&token=alerodrom%3A5ca38d5a73c0f04c4f7cc1c35acc7a47 | JSON con el campo "valid" indicando la validez del token (true/false). |
{ "valid"=true } |
checkTokenUser | Comprueba si un token es válido para un usuario. Para ello, se obtiene el usuario pasado como parámetro, se genera el token del usuario y se comprueba si es igual que el pasado como parámetro. |
|
https://authb.agoraus1.egc.duckdns.org/api/index.php?method=checkTokenUser&user=alerodrom&token=alerodrom%3A5ca38d5a73c0f04c4f7cc1c35acc7a47 | JSON con el campo "valid" indicando la validez del token (true/false). |
{ "valid"=true } |
Si en una petición no se pasan unos parámetros correctos (métodos que no existen o falta de parámetros necesarios) se devolverá un error de código 400 con el siguiente mensaje:
Bad Request. This method doesn't exist or the necessary paramenters weren't provided