Usuarios es una Api desarrollada en python capaz de interactuar con Azure Keyvault, creando o borrando secretos.
- POST
- DELETE
Consiste en crear un secreto en Azure Keyvault. Se realiza mediante un POST request donde la API recibirá los siguientes datos desde un JSON enviado en el body.
- user: Caracteres permitidos 'a-z', 'A-Z', '0-9', y '-'. De 4 a 20 caracteres.
- password
Con estos datos se crea en Azure Keyvault un secreto que llevara como nombre el 'user'+${TIMESTAMP} (no debe existir previamente el user). El valor del secreto sera "password". Por último se envía usando el "email" un mensaje de bienvenida al usuario.
Consiste en borrar un secreto en Azure Keyvault. Se realiza mediante un DELETE request donde la API recibirá los siguientes datos desde un JSON enviado en el body.
- user
- password
Con estos datos se buscara en Azure Keyvault un secreto que corresponda al 'user'+${TIMESTAMP} indicado en el body. De ser encontrado se evaluará si el valor de "password" coincide con el valor del secreto previamente almacenado
Tipo OAuth2. Para recibir el Barer y poder hacer el request a API Usuarios, debe enviarse un POST request a la siguiente ruta:
https://login.microsoftonline.com/${TENANT_ID}/oauth2/token
El body debe contener los siguientes datos:
grant_type: client_credentials
client_id: ${CLIENT_ID}
client_secret: ${CLIENT_SECRET}
resource: https://api-urbania.azurewebsites.net
Usuarios requiere Python v3.8 to run.
Instala las dependencias antes de iniciar el servidor.
pip install -r requirements.txt
Nota: En entorno productivo no es necesario este paso.
https://api-urbania.azurewebsites.net/api/usuarios
200: Se ha eliminado correctamente el usuario.
201: Se ha creado correctamente el usuario.
400: No se ingresaron los datos necesarios para el request enviado.
401: Los datos ingresados para borrar el usuario no coinciden con los almacenados en el Keyvault.
409: Ya existe el usuario que intenta crearse.
Login es una Api desarrollada en NodeJS capaz de interactuar con Azure Keyvault, consultando los secretos allí almacenados.
- POST
Consiste en buscar un secreto en Azure Keyvault usando los siguientes datos:
- user
- password
Se utiliza el "user" como parámetro para la búsqueda. De encontrarse el secreto correspondiente a ese usuario, se verifica que el valor que almacena ese secreto se corresponda al enviado en "password".
Tipo OAuth2. Para recibir el Barer y poder hacer el request a API Usuarios, debe enviarse un POST request a la siguiente ruta:
https://login.microsoftonline.com/${TENANT_ID}/oauth2/token
El body debe contener los siguientes datos:
grant_type: client_credentials
client_id: ${CLIENT_ID}
client_secret: ${CLIENT_SECRET}
resource: https://api-urbania.azurewebsites.net
Login requiere NodeJs v.(Node 14, 12, & 10)
Instala las dependencias antes de iniciar el servidor.
npm install
Nota: En entorno productivo no es necesario este paso.
https://api-urbanialogin.azurewebsites.net/api/Login
200: Se ha logueado correctamente.
400: No se ingresaron los datos requeridos para realizar el login.
401: Los datos ingresados no coinciden con los almacenados en el Keyvault.
MIT Free Software