![](/cvo_files/imgs_sap_abap/logos/logo_cvo_academy_it.png)
✒️SAP BASIS Internet Communication Framework
SAP BASIS Internet Communication Framework
![SAP BASIS Internet Communication Framework SAP BASIS Internet Communication Framework](https://www.cvosoft.com/cvo_files/imgs_sap_abap/og-images/431.jpg)
INTERNET COMMUNICATION FRAMEWORK (ifc)
Provee un entorno para el manejo de solicitudes web dentro del work process abap.
CLASIFICACION DEL IFC
El IFC permite establecer comunicación entre diferentes sistemas sobre internet utilizando protocolos estandar.
No se requieren librerías de SAP adicionales
Excepto en https: Libreria criptográfica de sap (SAPCRYPTOLIB).
El IFC hace posible generar una respuesta a una solicitud de una aplicación.
Una solicitud HTTP es enviada desde un cliente (como el navegador web, al servidor).
El ifc reenvía la solicitud a una aplicación.
Los datos son procesados en la aplicación, la cual devuelve luego (usando ifc) al cliente como respuesta.
Los datos son visualizados en el navegador.
Lógica de aplicacion: http request handler.
Un HRH es un programa que es identificado usando una url y el cual recibe solicitudes http que usan en esta URL.
Su tarea es recibir datos enviados por la solicitud para realizar una cantidad de procesos específicos del handler y generar una respuesta.
Los clientes pueden generar HRH pero SAP también entrega algunos.
El de sap: Bussines Server Pages (BSP): desarrolla aplicaciones web simples.
- La Solicitud http la recibe el ICM.
- Es procesada por un work process.
- El task handler toma el control.
- Este luego inicia el controlador IFC.
- El icm almacena los datos en el memory pipe (memoria compartida) e informa al dispatcher abap.
- El dispatcher abap coloca la solicitud del icm en la cola del dispatcher.
- El task handler en el work process lee los datos desde el memory pipe y los transfiere al controlador icf, el cual es implementado usando el módulo de función http_dispatcher_request
- El controlador icf transfiere la solicitud al icf manager, implementado usando: cl_http_server.
- El controlador icf crea un bloque de control y lo llena con los datos de la solicitud http.
PROPIEDADES Y MANTENIMIENTO DE LOS SERVICIOS ICF
Clase abap: interface if_http_extension y metodo handle request
SAP entrega clases de este tipo pero los clientes también pueden crear sus propias clases con el class builder. (TRANSACCION SE24) integrando dentro del objeto builder (TRANSACCION SE08).
Un sistema SAP contiene varios servicios ya instalados. Dependen del tipo del sistema y la versión.
Podemos obtener una vista de todos los servicios usando la transacción central para servicios icf (TRANSACCION SICF)
CONCEPTO DE ACTIVACION
ACTIVO: NEGRO
INACTIVO: GRIS Y AZUL
Si activamos los de color gris también se activan los de color azul.
Podemos elegir si queremos activar solo lo que seleccionemos o todos los servicios.
TODOS los servicios icf son entregados con el estado desactivado, de tal forma que ningún servicio icf pueda ser utilizado inicialmente.
PROPIEDADES E INHERENCIA.
Configuraciones Icf:
Datos de servicio/procedimiento logon:
- Alternative logon order: cambiar el orden de las verificaciones.
- Logon data required: solo detalles almacenados en el servicio bajo Anonymous logon data son usados.
- Client cert (ssl) required: el acceso es posible usando un certificado cliente x.509
Para procedimientos standar y alternative logon order: All logons para definir si el sistema deberá ejecutar las verificaciones en la secuencia relevante
Datos de servicio/datos de logon anonimo.
Almacenar usuarios aqui que fueron creados como usuarios de servicio en la transaccion SU01.
Datos de servicio/opciones de servicio:
Podemos usar el campo server group para ingresar un grupo de logon (Creado en la TRANSACCION SMLG)
Sap Authoriz:
Objeto de autorizacion: s_icf
Campo: icf_value
Si un error de autorizacion ocurre la configuracion en Err type determina que tipo de mensaje se utilizara.
Aplicacion stateful: finalizada luego que se cumple el tiempo especificado en session timeout.
Compression: procedimiento de compresion gzip. En la medida que quien realiza la llamada pueda descomprimir la respuesta.
GUI Link: Pantallas convertidas a un formato en el que el navegador del cliente pueda mostrar.
Datos de servicio/requeimientos de seguridad:
Por defecto la opcion Standard esta seleccionada (permite conexiones http / https al servicio)
Si seleccionamos SSL, solo las conexiones mediante https podran ser aceptadas.
Datos de servicio/autenticacion basica:
Podemos seleccionar si las entradas realizadas para el usuario en la ventana http del cliente seran interpretadas como usario estandar r/3 o como usuario de internet.
Handler list:
Ingresamos http handlers en la secuencia que seran ejecutados. Implementa la interface if_http_extension: contiene el metodo handler-request, que es llamado po el icf.
Error pages:
Podemos definir que pagina de respuesta sera enviada al client en las siguientes situaciones:
- error de logon(http 401)
- error de aplicacion(http 500)
- pagina de logoft
- no accessible(http 404)
En cada caso de error podemos configurar una pagina explicita de respuesta que se enviara al navegador, o un redireccionamiento a una url especifica.
Propiedades que se listaron: no necesitamos mantener las propiedades de servicio para cada servicio de forma individual en la transaccion sicf, en nodos superiores: /sap/bc/bsp.
Todos los servicios que se encuentren bajo este nodo heredan las configuraciones del nodo. ( a menos que se modifique explicitamente uno)
Alias
En el icf podemos crear links, conocidos como alias, desdes un servicio icf a otro.
No deberiamos crear alias internos a los servicios sap.
Alias externos: nombre descriptivo. Podria contener una barra (/) en el nombre.
Monitoreo:
Investigacion de problemas.
SICFRECORDER: para evaluar registros.
Pasos a seguir:
- Activar el registro (determinar que url sera registrada)
- La duracion del resgistro en tiempo y el tiempo almacenado en la base de datos.
- Llamar al servicio que queremos monitorear.
- Desactivar el resgistro
- Visualizar y procesar las solicitudes registradas.
Controlar el acceso a los datos registrados con el objeto de autorizacion: S_SICFREC
 
 
 
Agradecimiento:
Ha agradecido este aporte: David Solaliga
Sobre el autor
Publicación académica de Melina Gallego, en su ámbito de estudios para la Carrera Consultor Basis NetWeaver.
Melina Gallego
Profesión: - - Argentina - Legajo: BR73D
✒️Autor de: 70 Publicaciones Académicas
🎓Egresado de los módulos:
Certificación Académica de Melina Gallego