Implementar un agente de conector de datos de SAP desde la línea de comandos
En este artículo se proporcionan opciones de línea de comandos para implementar un agente de conector de datos de SAP. Para las implementaciones típicas, se recomienda usar el portal en lugar de la línea de comandos, ya que los agentes del conector de datos instalados a través de la línea de comandos solo se pueden administrar a través de la línea de comandos.
Sin embargo, si usa un archivo de configuración para almacenar las credenciales en lugar de Azure Key Vault, o si es un usuario avanzado que quiere implementar el conector de datos manualmente, como en un clúster de Kubernetes, use los procedimientos de este artículo en su lugar.
Aunque puede ejecutar varios agentes de conector de datos en una sola máquina, se recomienda empezar con un solo, supervisar el rendimiento y, a continuación, aumentar el número de conectores lentamente. También se recomienda que el equipo de seguridad realice este procedimiento con ayuda del equipo de SAP BASIS.
Nota:
Este artículo solo es relevante para el agente del conector de datos y no es relevante para la solución sin agente de SAP (versión preliminar limitada).
Requisitos previos
Antes de implementar el conector de datos, asegúrese de crear una máquina virtual y configurar el acceso a las credenciales.
Si usa SNC para conexiones seguras, asegúrese de que el sistema SAP está configurado correctamente y, a continuación, prepare el script kickstart para una comunicación segura con SNC antes de implementar el agente del conector de datos.
Para obtener más información, consulte la documentación de SAP.
Implementar el agente del conector de datos mediante una identidad administrada o una aplicación registrada
En este procedimiento se describe cómo crear un nuevo agente y conectarlo al sistema SAP a través de la línea de comandos, autenticando con una identidad administrada o una aplicación registrada de Microsoft Entra ID.
Si usa SNC, asegúrese de que ha completado primero Preparar el script kickstart para una comunicación segura con SNC.
Si usa un archivo de configuración para almacenar las credenciales, consulte Implementar el conector de datos mediante un archivo de configuración en su lugar.
Para implementar el agente del conector de datos:
Descargue y ejecute el script Kickstart de implementación:
Para una identidad administrada, use una de las siguientes opciones de comando:
Para la nube comercial pública de Azure:
wget -O sapcon-sentinel-kickstart.sh https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/Solutions/SAP/sapcon-sentinel-kickstart.sh && bash ./sapcon-sentinel-kickstart.sh
Para Microsoft Azure operado por 21Vianet, agregue
--cloud mooncake
al final del comando copiado.Para Azure Government: EE. UU., agregue
--cloud fairfax
al final del comando copiado.
Para una aplicación registrada, use el siguiente comando para descargar el script Kickstart de implementación desde el repositorio de GitHub de Microsoft Sentinel y marcarlo como ejecutable:
wget https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/Solutions/SAP/sapcon-sentinel-kickstart.sh chmod +x ./sapcon-sentinel-kickstart.sh
Ejecute el script y especifique el identificador de aplicación, el secreto (la "contraseña"), el identificador de inquilino y el nombre del almacén de claves que copió en los pasos anteriores. Por ejemplo:
./sapcon-sentinel-kickstart.sh --keymode kvsi --appid aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa --appsecret ssssssssssssssssssssssssssssssssss -tenantid bbbbbbbb-bbbb-bbbb-bbbb-bbbbbbbbbbbb -kvaultname <key vault name>
Para configurar la configuración segura de SNC, especifique los siguientes parámetros base:
--use-snc
--cryptolib <path to sapcryptolib.so>
--sapgenpse <path to sapgenpse>
--server-cert <path to server certificate public key>
Si el certificado de cliente está en formato .crt o .key, use los modificadores siguientes:
--client-cert <path to client certificate public key>
--client-key <path to client certificate private key>
Si el certificado de cliente está en formato .pfx o .p12, use los modificadores siguientes:
--client-pfx <pfx filename>
--client-pfx-passwd <password>
Si el certificado de cliente ha sido emitido por una entidad de certificación de empresa, agregue el siguiente modificador para cada entidad de certificación de la cadena de confianza:
--cacert <path to ca certificate>
Por ejemplo:
wget https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/Solutions/SAP/sapcon-sentinel-kickstart.sh chmod +x ./sapcon-sentinel-kickstart.sh --use-snc --cryptolib /home/azureuser/libsapcrypto.so --sapgenpse /home/azureuser/sapgenpse --client-cert /home/azureuser/client.crt --client-key /home/azureuser/client.key --cacert /home/azureuser/issuingca.crt --cacert /home/azureuser/rootca.crt --server-cert /home/azureuser/server.crt
El script actualiza los componentes del sistema operativo, instala la CLI de Azure y el software de Docker y otras utilidades necesarias (jq, netcat, curl) y le pide los valores de los parámetros de configuración. Proporcione parámetros adicionales al script para minimizar el número de indicaciones o para personalizar la implementación del contenedor. Para más información sobre las opciones de línea de comandos disponibles, vea Referencia del script kickstart.
Siga las instrucciones en pantalla para escribir los detalles de SAP y de Key Vault y completar la implementación. Aparece un mensaje de confirmación cuando se completa la implementación:
The process has been successfully completed, thank you!
Anote el nombre del contenedor Docker en la salida del script. Para ver la lista de contenedores de Docker en la máquina virtual, ejecute:
docker ps -a
Usará el nombre del contenedor de Docker en el paso siguiente.
La implementación del agente del conector de datos de SAP requiere que conceda a la identidad de máquina virtual del agente permisos específicos para el área de trabajo de Log Analytics habilitada para Microsoft Sentinel mediante los roles de Operador del agente de aplicaciones empresariales de Microsoft Sentinel y Lector.
Para ejecutar el comando en este paso, debe ser propietario del grupo de recursos en el área de trabajo de Log Analytics habilitada para Microsoft Sentinel. Si no es propietario del grupo de recursos en el área de trabajo, este procedimiento también se puede realizar más adelante.
Asigne los roles Operador del agente de aplicaciones empresariales de Microsoft Sentinel y Lector a la identidad de la máquina virtual:
Obtenga el id. del agente ejecutando el siguiente comando, reemplazando el marcador de posición
<container_name>
por el nombre del contenedor de Docker que había creado con el script Kickstart:docker inspect <container_name> | grep -oP '"SENTINEL_AGENT_GUID=\K[^"]+
Por ejemplo, un identificador de agente devuelto podría ser
234fba02-3b34-4c55-8c0e-e6423ceb405b
.Asigne los roles Operador del agente de aplicaciones empresariales de Microsoft Sentinel y Lector ejecutando los siguientes comandos:
az role assignment create --assignee-object-id <Object_ID> --role --assignee-principal-type ServicePrincipal "Microsoft Sentinel Business Applications Agent Operator" --scope /subscriptions/<SUB_ID>/resourcegroups/<RESOURCE_GROUP_NAME>/providers/microsoft.operationalinsights/workspaces/<WS_NAME>/providers/Microsoft.SecurityInsights/BusinessApplicationAgents/<AGENT_IDENTIFIER> az role assignment create --assignee-object-id <Object_ID> --role --assignee-principal-type ServicePrincipal "Reader" --scope /subscriptions/<SUB_ID>/resourcegroups/<RESOURCE_GROUP_NAME>/providers/microsoft.operationalinsights/workspaces/<WS_NAME>/providers/Microsoft.SecurityInsights/BusinessApplicationAgents/<AGENT_IDENTIFIER>
Reemplace los valores de marcador de posición como se indica a continuación:
Marcador Valor <OBJ_ID>
Identificador del objeto de identidad de la máquina virtual.
Para buscar el identificador de objeto de identidad de máquina virtual en Azure:
- Para una identidad administrada, el identificador de objeto aparece en la página Identidad de la máquina virtual.
- En el caso de una entidad de servicio, vaya a la aplicación Empresarial en Azure. Seleccione Todas las aplicaciones y, a continuación, seleccione la máquina virtual. El identificador de objeto se muestra en la página Información general.<SUB_ID>
El identificador de suscripción del área de trabajo de Log Analytics habilitada para Microsoft Sentinel <RESOURCE_GROUP_NAME>
Nombre del grupo de recursos para el área de trabajo de Log Analytics habilitada para Microsoft Sentinel <WS_NAME>
Nombre del área de trabajo de Log Analytics habilitada para Microsoft Sentinel <AGENT_IDENTIFIER>
El identificador del agente que se muestra después de ejecutar el comando en el paso anterior. Para configurar el contenedor de Docker para que se inicie automáticamente, ejecute el comando siguiente, reemplazando el marcador de posición
<container-name>
por el nombre del contenedor:docker update --restart unless-stopped <container-name>
El procedimiento de implementación genera un archivo systemconfig.json que contiene los detalles de configuración del agente del conector de datos de SAP. El archivo se ubica en el directorio /sapcon-app/sapcon/config/system
de su VM.
Implementar el conector de datos mediante un archivo de configuración
Azure Key Vault es el método recomendado para almacenar las credenciales de autenticación y los datos de configuración. Si se le impide usar Azure Key Vault, en este procedimiento se describe cómo puede implementar el contenedor del agente del conector de datos mediante un archivo de configuración en su lugar.
Si usa SNC, asegúrese de que ha completado primero Preparar el script kickstart para una comunicación segura con SNC.
Si usa una identidad administrada o una aplicación registrada, consulte Implementar el agente del conector de datos mediante una identidad administrada o una aplicación registrada en su lugar.
Para implementar el agente del conector de datos:
Cree una máquina virtual en la que implementar el agente.
Transfiera el SDK de SAP NetWeaver a la máquina en la que quiere instalar el agente.
Ejecute los siguientes comandos para descargar el script kickstart de implementación del repositorio de GitHub de Microsoft Sentinel y marcarlo como ejecutable:
wget https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/Solutions/SAP/sapcon-sentinel-kickstart.sh chmod +x ./sapcon-sentinel-kickstart.sh
Ejecute el script:
./sapcon-sentinel-kickstart.sh --keymode cfgf
El script actualiza los componentes del sistema operativo, instala la CLI de Azure y el software de Docker y otras utilidades necesarias (jq, netcat, curl) y le pide los valores de los parámetros de configuración. Proporcione parámetros adicionales al script según sea necesario para minimizar el número de indicaciones o para personalizar la implementación del contenedor. Para más información, consulte la Referencia sobre los scripts Kickstart.
Siga las instrucciones en pantalla para escribir los detalles solicitados y completar la implementación. Aparece un mensaje de confirmación cuando se completa la implementación:
The process has been successfully completed, thank you!
Anote el nombre del contenedor Docker en la salida del script. Para ver la lista de contenedores de Docker en la máquina virtual, ejecute:
docker ps -a
Usará el nombre del contenedor de Docker en el paso siguiente.
La implementación del agente del conector de datos de SAP requiere que conceda a la identidad de máquina virtual del agente permisos específicos para el área de trabajo de Log Analytics habilitada para Microsoft Sentinel mediante los roles de Operador del agente de aplicaciones empresariales de Microsoft Sentinel y Lector.
Para ejecutar los comandos en este paso, debe ser propietario del grupo de recursos en el área de trabajo. Si no es propietario del grupo de recursos en el área de trabajo, este paso también se puede realizar más adelante.
Asigne los roles Operador del agente de aplicaciones empresariales de Microsoft Sentinel y Lector a la identidad de la máquina virtual:
Obtenga el id. del agente ejecutando el siguiente comando, reemplazando el marcador de posición
<container_name>
por el nombre del contenedor de Docker que había creado con el script Kickstart:docker inspect <container_name> | grep -oP '"SENTINEL_AGENT_GUID=\K[^"]+'
Por ejemplo, un identificador de agente devuelto podría ser
234fba02-3b34-4c55-8c0e-e6423ceb405b
.Asigne los roles Operador del agente de aplicaciones empresariales de Microsoft Sentinel y Lector ejecutando los siguientes comandos:
az role assignment create --assignee-object-id <Object_ID> --role --assignee-principal-type ServicePrincipal "Microsoft Sentinel Business Applications Agent Operator" --scope /subscriptions/<SUB_ID>/resourcegroups/<RESOURCE_GROUP_NAME>/providers/microsoft.operationalinsights/workspaces/<WS_NAME>/providers/Microsoft.SecurityInsights/BusinessApplicationAgents/<AGENT_IDENTIFIER> az role assignment create --assignee-object-id <Object_ID> --role --assignee-principal-type ServicePrincipal "Reader" --scope /subscriptions/<SUB_ID>/resourcegroups/<RESOURCE_GROUP_NAME>/providers/microsoft.operationalinsights/workspaces/<WS_NAME>/providers/Microsoft.SecurityInsights/BusinessApplicationAgents/<AGENT_IDENTIFIER>
Reemplace los valores de marcador de posición como se indica a continuación:
Marcador Valor <OBJ_ID>
Identificador del objeto de identidad de la máquina virtual.
Para buscar el identificador de objeto de identidad de máquina virtual en Azure: para una identidad administrada, el identificador de objeto aparece en la página Identidadde la máquina virtual. En el caso de una entidad de servicio, vaya a la aplicación Empresarial en Azure. Seleccione Todas las aplicaciones y, a continuación, seleccione la máquina virtual. El identificador de objeto se muestra en la página Información general.<SUB_ID>
El identificador de suscripción del área de trabajo de Log Analytics habilitada para Microsoft Sentinel <RESOURCE_GROUP_NAME>
Nombre del grupo de recursos para el área de trabajo de Log Analytics habilitada para Microsoft Sentinel <WS_NAME>
Nombre del área de trabajo de Log Analytics habilitada para Microsoft Sentinel <AGENT_IDENTIFIER>
El identificador del agente que se muestra después de ejecutar el comando en el paso anterior.
Ejecute el siguiente comando para configurar el contenedor de Docker para que se inicie automáticamente.
docker update --restart unless-stopped <container-name>
El procedimiento de implementación genera un archivo systemconfig.json que contiene los detalles de configuración del agente del conector de datos de SAP. El archivo se ubica en el directorio /sapcon-app/sapcon/config/system
de su VM.
Preparar el script Kickstart para una comunicación segura con SNC
Este procedimiento describe cómo preparar el script de implementación para configurar las opciones de las comunicaciones seguras con su sistema SAP mediante SNC. Si usa SNC, debe realizar este procedimiento antes de implementar el agente del conector de datos.
Para configurar el contenedor para una comunicación segura con SNC:
Transfiera los archivos libsapcrypto.so y sapgenpse al sistema donde va a crear el contenedor.
Transfiera el certificado de cliente, incluidas las claves privadas y públicas al sistema donde va a crear el contenedor.
El certificado de cliente y la clave pueden estar en formato .p12, .pfx o .crt y .key Base64.
Transfiera el certificado de servidor (solo clave pública) al sistema donde va a crear el contenedor.
El certificado de servidor debe estar en formato Base64 .crt.
Si una entidad de certificación de empresa emitió el certificado de cliente, transfiera los certificados de entidad de certificación raíz y de entidad de certificación emisora al sistema donde va a crear el contenedor.
Obtenga el script kickstart del repositorio de GitHub de Microsoft Sentinel:
wget https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/Solutions/SAP/sapcon-sentinel-kickstart.sh
Cambie los permisos del script para que sea ejecutable:
chmod +x ./sapcon-sentinel-kickstart.sh
Para obtener más información, consulte Referencia de scripts de implementación Kickstart para el agente del conector de datos de aplicaciones de Microsoft Sentinel para SAP.
Optimización de la supervisión de tablas PAHI de SAP (recomendado)
Para obtener resultados óptimos en la supervisión de la tabla PAHI de SAP, abra el archivo systemconfig.json para editar y, en la sección [ABAP Table Selector](reference-systemconfig-json.md#abap-table-selector)
, habilite los parámetros PAHI_FULL
y PAHI_INCREMENTAL
.
Para obtener más información, consulte referencia de archivo Systemconfig.json y Compruebe que la tabla PAHI se actualiza a intervalos regulares.
Comprobación de la conectividad y el estado
Después de implementar el agente del conector de datos de SAP, compruebe el estado y la conectividad del agente. Para obtener más información, consulte Supervisión del estado y el rol de los sistemas SAP.
Paso siguiente
Una vez que se implemente el conector, continúe con la implementación del contenido de aplicaciones de Solución Microsoft Sentinel para SAP: