Artículo
· 15 sep, 2022 Lectura de 3 min

Cómo solucionar errores HTTP 403 al visualizar catálogos SOAP

En el Centro de Soporte Internacional (WRC), vemos a menudo clientes que se han encontrado un problema al visualizar las páginas de catálogos SOAP en el  navegador. Estas páginas nos sirven para visualizar el WDSL y poder testear los métodos y servicios descritos en el web service. En este artículo voy a explicar por qué se encuentran este error, y también propondré una solución. Esta explicación se centra en los síntomas observados en InterSystems IRIS, pero se ha podido ver un comportamiento similar en versiones más recientes de Caché.

El problema:

Estás intentando crear nuevos Servicios Web SOAP en InterSystems IRIS. Cuando vas a visualizar el Catálogo SOAP para ver lo que has creado hasta ese momento, aparece este error en tu navegador:

En CSP Gateway más antiguos e instancias de Caché, puede aparecer esto en su lugar:

Por qué sucede esto:

Cuando se intenta visualizar una página de catálogo SOAP, IRIS necesita usar las clases %SOAP.WebServiceInfo y %SOAP.WebServiceInvoke internamente. Sin embargo, no permitimos a las aplicaciones de usuarios acceder a la mayoría de las clases "%".

Esta información se detalla en la documentación antigua de Caché: https://cedocs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?K...

Cómo solucionar el problema:

Recomendamos encarecidamente usar un cliente Web SOAP para generar solicitudes SOAP HTTP que llame al Servicio Web SOAP en vez de usar las páginas de catálogo.

Sin embargo, si aún necesitas acceder a las páginas de catálogo SOAP en un entorno de PRUEBA, puedes solucionarlo configurando estos nodos globales:

                %SYS>set ^SYS("Security","CSP","AllowClass",webapplicationname,"%SOAP.WebServiceInfo")=1

                %SYS>set ^SYS("Security","CSP","AllowClass",webapplicationname,"%SOAP.WebServiceInvoke")=1

Donde la variable “webapplication” contiene el nombre de tu aplicación actual. Por ejemplo, si estabas intentando visualizar un catálogo SOAP para una Aplicación Web llamada "/csp/test/", necesitarás configurar estos nodos globales:

                %SYS>s ^SYS("Security","CSP","AllowClass","/csp/test/","%SOAP.WebServiceInfo")=1

                %SYS>s ^SYS("Security","CSP","AllowClass","/csp/test/","%SOAP.WebServiceInvoke")=1

De nuevo, recomendamos que se habiliten estas configuraciones solo en entornos de PRUEBA.

En este enlace podéis encontrar más información sobre cómo acceder al Catálogo SOAP y a las páginas de Prueba en InterSystems IRIS: https://docs.intersystems.com/irislatest/csp/docbook/Doc.View.cls?KEY=GSOAP_WebService#GSOAP_service_catalog_page

Comentarios (0)1
Inicie sesión o regístrese para continuar