Consulta sobre Web Servis en 3.20.1

Hemos versionado de 3.18.0 a 3.20.1, nos encontramos probando WS de la versión y personalizados.
La primera consulta que nos surge es: ¿Debería responder el swagger con la url http://<url_gestion>/rest/v1/? Porque nos está dando un problema de permisos:
error 403
mensaje “403 Forbidden”
descripcion “Acceso denegado”

Revisamos la documentación: https://documentacion.siu.edu.ar/wiki/SIU-Guarani/Version3.20.0/API_REST_GUARANI, y nos encontramos:
1- en el toba.conf, faltaba RewriteRule ^rest/(v[\d.]+)?/(.*)$ rest.php/$1/$2 [PT,L,QSA,E=API_NOMBRE:$1]
2- <path_gestion>/instalacion/web_server.ini no lo tenemos, pero como es un ambiente de desarrollo no está por hhtps
3- <path_gestion>/instalacion/i__desarrollo/p__guarani/rest/recursos_usuarios.php, en la versión 3.18.0 estaba creado en php/rest/

Corregimos todo esto, y aún así con los usuarios en <path_gestion>/instalacion/i__desarrollo/p__guarani/rest/servidor_usuarios.ini, y sus permisos en <path_gestion>/instalacion/i__desarrollo/p__guarani/rest/recursos_usuarios.php que sí funcionan en la versión 3.18.0, no responde con la versiḉon 3.20.1

¿Nos estamos olvidando de algo?
Gracias por su tiempo.

Hola Ana,

¿Debería responder el swagger con la url http:///rest/v1/?
Si, exacto, http:///rest/v1/ te debería llevar al Swagger. ¿que te dice si ingresas a http:///rest/v1/api-docs y http:///rest/v1/info?
1- en el toba.conf, faltaba RewriteRule ^rest\/(v[\d\.]+)?\/(.*)$ rest.php/$1/$2 [PT,L,QSA,E=API_NOMBRE:$1]
Si, debería quedar así:

                RewriteRule ^rest\/(v[\d\.]+)?\/(.*)$ rest.php/$1/$2 [PT,L,QSA,E=API_NOMBRE:$1]
                RewriteRule ^rest/(.*)$ rest.php/$1 [PT,L,QSA]
                RewriteRule ^rest$      rest.php/   [PT,L,QSA]

2- /instalacion/web_server.ini no lo tenemos, pero como es un ambiente de desarrollo no está por hhtps
Lo podes crear, para http debes configurar:

[server_config]
https = "off"

Para https debes configurar:


[server_config]
https = "on"

3- /instalacion/i__desarrollo/p__guarani/rest/recursos_usuarios.php, en la versión 3.18.0 estaba creado en php/rest/
Claro, cambia, crealo a partir de [b]/php/rest/recursos_usuarios_template.php[/b].

Referencia: https://documentacion.siu.edu.ar/wiki/SIU-Guarani/Version3.20.0/API_REST_GUARANI

saludos.
2

Leonel:
Por lo que entiendo el problema puede estar en que cambió el recursos_usuarios_template.php, y hay que volver a configurar el recursos_usuarios.php en el nuevo directorio a partir del template?
Porque lo que hicimos fué copìar el recursos_usuarios.php que ya teníamos al nuevo directorio.

Hola Ana,

Si, cambio el archivo php/rest/recursos_usuarios_template.php, ahora tiene un return al final:

return $recursos_usuarios;

. Recrea el archivo instalacion/i__desarrollo/p__guarani/rest/recursos_usuarios.php a partir de php/rest/recursos_usuarios_template.php.

Revisa que no todos los usuarios tiene acceso a todos los servicios, los usuarios que configures en el array $usuarios_admin si tienen acceso a todos los servicios.

Referencia: https://documentacion.siu.edu.ar/wiki/SIU-Guarani/version3.20.0/interfaces/api-guarani-perfil-funcional

saludos.
2

Leonel:
Ahora responde:
/guarani/rest/v1/info?

nombre “Referencia de API para guarani”
version “3.20.1”
api_version “v1.0”
api_major “1”
api_minor “0”

/guarani/rest/v1/status?
resultado “OK”

y guarani/rest/v1/api-docs?

en servidor_usuarios.php tengo:
[ws]
password = xxxxx

en recursos_usuarios.php:
$usuarios_admin = [‘admin’,‘ws’];

y el /guarani/rest/v1 sigue dándome:
error 403
mensaje “403 Forbidden”
descripcion “Acceso denegado”

Hola Ana,

y el /guarani/rest/v1 sigue dándome: error 403 mensaje "403 Forbidden" descripcion "Acceso denegado"

Claro, va con barra al final: /guarani/rest/v1/

y guarani/rest/v1/api-docs?

Retorna info de la estructura de la API que la utiliza el Swagger para armar la interfaz gráfica:


{
    "swagger": "2.0",
    "info": {
        "title": "Referencia de API para guarani",
        "version": "v1.0"
    },
    "basePath": "\/guarani\/rest\/v1",
    "produces": [
        "application\/json"
    ],
    "schemes": [
        "http"
    ],
    "paths": {
        "\/alumnos": {
.....................................

saludos.
2

Leonel:
Gracias. Efectivamente era la barra. Ahora sólo queda revisar las personalizaciones.

Me alegro Ana,

Si tenes personalizaciones en la API REST vas a tener que revisar estos pasos (cambian ubicaciones de las carpetas y se agregan namespaces): https://documentacion.siu.edu.ar/wiki/SIU-Guarani/Version3.20.0/personalizaciones/rest

saludos.
2

Leonel:
Gracias. Cambió bastante, y obvio no anda ningún personalizado. Tendremos que revisar código y ajustar.