Configuración del usuario ID XML API en el agente de Windows UID

Configuración del usuario ID XML API en el agente de Windows UID

24961
Created On 03/20/19 16:23 PM - Last Modified 03/26/21 18:22 PM


Symptom


En PanOS 8.0.x y versiones posteriores, cuando se utilizan XML API llamadas para agregar/eliminar asignaciones de usuario IP en un agente de usuario basado en ID Windows, las llamadas no agregan las asignaciones necesarias al agente y, posteriormente, se produce un error en el tráfico. Esto se considera cierto incluso si se vio que los XML API 's funcionaban sin ningún problema en las versiones anteriores.
 


Cause


En PanOS 8.0.x y superior, el agente de usuario basado en Windows ID ahora requiere que los clientes se API autentiquen mediante un certificado de identidad emitido por un servidor raíz de CA confianza. Esto se hace para evitar que se enumeren las asignaciones maliciosas o que un usuario no autenticado elimine maliciosamente las asignaciones.

Resolution


Con la reintroducción del uso XML API con el fin de la adición de asignación de usuarios en un IP usuario-agentes basados en Windows ID en 8.0, existe un requisito adicional para hacer uso de un certificado de cliente en el API cliente con el fin de la autenticación.

Los siguientes son los requisitos generales para el certificador cliente:

1. El certificado de cliente puede ser emitido por Domain/Enterprise Root CA o por el servidor Firewall CA directamente.
2. El certificado emisor CA debe colocarse en el almacén de certificados "Entidad de certificación raíz de confianza" en el servidor o host donde está instalado el agente basado en UID Windows.
3. El cliente debe hacer uso del certificado emitido para conectarse al agente de UID Windows.

Una vez que el certificado de identidad se emite al cliente, considere la posibilidad de utilizar los siguientes pasos para configurar y verificar XML API la conectividad con el agente de UID Windows:

+ En el equipo linux, el certificado de cliente debe importarse en formato .pem. En este escenario, el certificado de cliente es 'cert_xmlapi_clientcert.pem'

+ Utilice el siguiente comando para probar el envío del mensaje al agente userid
$ cat userid.xml | openssl s_client -cert cert_xmlapi_clientcert.pem -connect 10.193.113.143:5006

+ A continuación se muestra un decodificación de ejemplo de la información del certificado utilizada en este proceso.
~$ openssl x509 -in cert_xmlapi_clientcert.pem -text -noout

Certificate:
 Data:
 Version: 3 (0x2)
 Serial Number: 22 (0x16)
 Signature Algorithm: sha256WithRSAEncryption
 Issuer: CN=paloaltonetworks.local
 Validity
 Not Before: Jul 19 10:16:54 2017 GMT
 Not After : Jul 19 10:16:54 2018 GMT
 Subject: CN=xmlapi.paloaltonetworks.local
 Subject Public Key Info:
 Public Key Algorithm: rsaEncryption
 Public-Key: (2048 bit)
 Modulus:
 00:d7:06:bf:46:86:1a:7d:36:4e:78:01:dd:4e:27:
 ff:7a:b6:0a:70:f6:06:8c:7f:35:c0:e8:07:ef:1c:
 e8:9d:a5:bb:c9:7b:b1:77:26:2a:7a:6e:dd:8b:0d:
 09:7e:72:41:5a:0b:23:2c:96:08:ed:9e:4b:9b:ee:
 2c:11:66:66:c5:b8:ba:9a:11:17:79:65:54:5a:ab:
 99:5a:1e:5f:2c:71:af:a4:da:75:68:1a:11:ea:a0:
 6e:a1:5d:db:11:bd:29:94:a5:fb:dc:cb:bf:33:36:
 b8:96:40:04:7d:5d:3a:32:24:0b:d1:c3:75:9c:a2:
 f8:ba:dd:28:87:6f:50:9f:45:3d:02:3d:1d:b0:bf:
 32:ba:93:53:b8:07:4f:72:ad:fb:e4:72:5a:4d:92:
 83:3d:b3:e4:dc:94:20:7b:00:e9:86:d6:79:e7:6f:
 60:68:c0:a5:66:1a:a9:cf:83:24:f7:c6:ba:7a:60:
 df:db:fe:5a:de:27:6b:db:fd:b9:1a:7e:2e:e7:40:
 3d:50:38:00:2a:71:71:2b:5f:f6:8e:b7:b6:87:bd:
 00:7f:48:82:68:14:ce:a4:0b:92:51:2c:d2:8b:b8:
 04:aa:6c:a3:aa:a9:74:99:80:cc:67:3e:5b:3c:9d:
 3e:fc:0f:53:37:3f:0d:14:42:db:16:6d:f1:0a:fb:
 92:55
 Exponent: 65537 (0x10001)
 X509v3 extensions:
 X509v3 Basic Constraints:
 CA:FALSE
 X509v3 Key Usage:
 Digital Signature, Key Encipherment, Data Encipherment, Key Agreement
 X509v3 Extended Key Usage:
 TLS Web Server Authentication, TLS Web Client Authentication, IPSec End System
 X509v3 Authority Key Identifier:
 0.
 X509v3 Subject Key Identifier:
 5B:97:AF:6D:D2:99:E5:FE:AE:9E:24:A3:4B:F2:F6:7E:57:94:30:30
 Signature Algorithm: sha256WithRSAEncryption
 bc:53:f4:68:8c:36:48:42:2f:3e:c0:43:ed:1e:a6:e6:96:61:
 c5:53:6a:37:42:ca:c6:e2:4c:be:76:3d:a5:18:70:f3:1a:9b:
 a1:42:d0:37:c9:3d:ff:dd:13:8c:55:a4:c6:aa:da:57:a1:19:
 6e:f0:ed:82:6c:fd:b4:57:f9:26:21:46:d5:cd:95:8c:81:5e:
 ec:15:0f:86:4a:f8:f3:dc:d8:3b:50:bf:c9:cf:52:ec:80:62:
 10:0b:7c:37:2c:b6:8e:85:45:23:bf:03:46:ee:c8:ab:5a:1a:
 09:89:af:fb:4d:59:23:61:00:dc:73:9f:78:5e:fb:98:cf:cb:
 ca:d1:28:cb:0a:a6:e8:35:fe:b6:b1:64:bd:48:2b:d0:15:df:
 9d:28:1f:5a:e7:0b:72:fe:f8:3a:c3:0a:f6:25:ef:eb:f4:80:
 04:fc:01:f0:a9:2f:d9:31:e3:dd:42:18:df:70:8f:44:78:89:
 0c:61:a4:c8:eb:8e:d7:0c:53:a3:f6:29:49:d6:7a:8d:8a:a5:
 ef:f7:c4:c2:73:21:25:dd:e9:3c:58:ba:5d:6f:c7:25:a8:a1:
 f5:d3:4a:b7:9e:81:d2:44:19:38:7f:65:23:48:e7:ba:16:35:
 3f:ff:e5:e6:ff:86:9d:db:31:2c:74:25:d8:57:cc:2d:89:2b:
 db:02:c1:aa

+ Una vez comprobado que el cliente está utilizando el certificado correcto, instale el CA certificado que emitió el certificado de cliente en el Almacén de certificación raíz de confianza en el servidor API Windows donde se ejecuta el agente de ID usuario, de modo que se valide como un certificado de confianza.

+ Para ello, ejecute el comando "mmc" desde la ventana Ejecutar de Windows. Una vez que se abra la MMC consola, agregue el complemento "Certificados" en el menú de archivos. Agregue el complemento para la cuenta máquina.

+ Una vez agregado, coloque el certificado de emisor CA en "Certificados (equipo local) -> entidades de certificación raíz de confianza -> certificados"

Imagen de usuario añadido


Una vez que el certificado se coloca en el almacén "Entidad de certificación raíz de confianza", reinicie el servicio de agente de usuario ID mientras el servicio lee el almacén de certificados solo una vez durante el inicio inicial.

+ Después de reiniciar el servicio, ahora habilite el UID agente para recibir XML API llamadas, utilizando la opción en Identificación de usuario -> Configuración -> Editar -> Servicio de agente y seleccione la opción "Habilitar ID XML API usuario- " y especifique el puerto como se muestra a continuación:

Imagen de usuario añadido

Una vez completados los pasos anteriores, comenzará a ver la asignación de usuario IP que se muestra a continuación:

Imagen de usuario añadido


Verificación:

Los registros para la conexión correcta con el cliente, la XMPALI validación de certificados y la asignación de usuarios, etc., se pueden ver en el archivo UaDebug del agente de usuario en el servidor windows como se muestra a ID continuación:
 
3:10:22:314[ Info 703]: New xml api connection 10.193.113.134 : 1959:1497568953.
 07/19/17 13:10:22:314[ Info 747]: XML api thread 0 from 10.193.113.134 : 1959 is started.
 07/19/17 13:10:22:314[Debug 355]: Event: type="XML API connection" name="10.193.113.134" status="Connected"
 07/19/17 13:10:22:314[Debug 1778]: Device thread 0 send server status 10.193.113.134 : 1959 Connected (XML API)
 07/19/17 13:10:22:314[Verbo 1264]: send out 268B msg post:server_status time 1500462622 with 0B body
 07/19/17 13:10:22:314[Verbo 209]: CStrPairUpdate 10.193.113.134 : 1959 Connected (XML API) is freed.
 07/19/17 13:10:22:317[Debug 419]: Verifying cert = /CN=xmlapi.paloaltonetworks.local

07/19/17 13:10:22:317[Debug 465]: A new certificate context has been created for /CN=xmlapi.paloaltonetworks.local.

07/19/17 13:10:22:318[Debug 381]: Got the issuer context for paloaltonetworks.local
 07/19/17 13:10:22:318[ Info 371]: The self signed issuer is found in the trust store
 07/19/17 13:10:22:318[Debug 481]: Certificate with subject : /CN=xmlapi.paloaltonetworks.local is valid
 07/19/17 13:10:22:318[Debug 419]: Verifying cert = /CN=xmlapi.paloaltonetworks.local

07/19/17 13:10:22:318[Debug 465]: A new certificate context has been created for /CN=xmlapi.paloaltonetworks.local.

07/19/17 13:10:22:318[Debug 381]: Got the issuer context for paloaltonetworks.local
 07/19/17 13:10:22:318[ Info 371]: The self signed issuer is found in the trust store
 07/19/17 13:10:22:318[Debug 481]: Certificate with subject : /CN=xmlapi.paloaltonetworks.local is valid
 07/19/17 13:10:22:318[Debug 419]: Verifying cert = /CN=xmlapi.paloaltonetworks.local

07/19/17 13:10:22:318[Debug 465]: A new certificate context has been created for /CN=xmlapi.paloaltonetworks.local.

07/19/17 13:10:22:319[Debug 381]: Got the issuer context for paloaltonetworks.local
 07/19/17 13:10:22:319[ Info 371]: The self signed issuer is found in the trust store
 07/19/17 13:10:22:319[Debug 481]: Certificate with subject : /CN=xmlapi.paloaltonetworks.local is valid
 07/19/17 13:10:22:327[ Info 619]: XML api thread 0 accept finished
 07/19/17 13:10:22:327[Debug 659]: XML api thread 0 SSL subject: /CN=xmlapi.paloaltonetworks.local
 07/19/17 13:10:22:327[Debug 672]: XML api thread 0 SSL issuer: /CN=paloaltonetworks.local
 07/19/17 13:10:22:328[Debug 325]: UserIpMap: IP 10.1.1.1 with login name domain\uid1 and timeout 1200 is added type (1). tId (3736)
 07/19/17 13:10:22:328[Debug 1060]: Adding ip to chg tbl 10.1.1.1 for Add

07/19/17 13:10:22:332[ Info 580]: XML api thread 0 timeout or SSL error: 5-10053.
 07/19/17 13:10:22:332[Debug 590]: XML api thread 0 ssl shutdown.
 07/19/17 13:10:22:332[Verbo 1264]: send out 163B msg post:xml_data time 1500462622 with 174B body
 07/19/17 13:10:22:332[Debug 355]: Event: type="XML API connection" name="10.193.113.134" status="Disconnected"
 07/19/17 13:10:22:333[Debug 415]: XML api thread 0 exits.
 07/19/17 13:10:22:333[ Info 417]: XML api connection 10.193.113.134 : 1959 closed.
 07/19/17 13:10:22:333[Debug 431]: All XML api connection stopped!
 07/19/17 13:10:22:370[Verbo 1264]: send out 163B msg post:xml_data time 1500462622 with 174B body
 07/19/17 13:10:22:384[Debug 472]: UserIpMap: IP (10.1.1.1) Username (domain\uid1) queued for xmission to firewall
 07/19/17 13:10:22:435[Debug 1778]: Device thread 0 send server status 10.193.113.134 : 1959 Disconnected (XML API)
 07/19/17 13:10:22:435[Verbo 1264]: send out 271B msg post:server_status time 1500462622 with 0B body
 07/19/17 13:10:22:435[Verbo 209]: CStrPairUpdate 10.193.113.134 : 1959 Disconnected (XML API) is freed.


Actions
  • Print
  • Copy Link

    https://knowledgebase.paloaltonetworks.com/KCSArticleDetail?id=kA10g000000boMWCAY&lang=es&refURL=http%3A%2F%2Fknowledgebase.paloaltonetworks.com%2FKCSArticleDetail

Choose Language