L’authorization policy di Cisco ISE non decide soltanto se l’accesso è consentito: decide come accede l’endpoint. Il risultato di una rule è un authorization profile, un contenitore di attributi RADIUS che il PSN invia al NAD (switch, WLC) dentro l’Access-Accept. Comprendere quali attributi generano quale comportamento sul NAD è il cuore di questo dominio.

Downloadable ACL (dACL)

La dACL è una ACL definita centralmente su ISE (Policy > Policy Elements > Results > Authorization > Downloadable ACLs) e “scaricata” sullo switch al momento dell’autenticazione. È ideale per il segmentation perché la policy vive in un unico punto invece di essere replicata su ogni switch.

Meccanismo chiave:

  • ISE invia il nome della dACL tramite l’av-pair ACS:CiscoSecure-Defined-ACL; lo switch, se non l’ha in cache, la richiede con un secondo scambio RADIUS.
  • Sullo switch deve essere attivo ip device tracking (o Device-Tracking policy su IOS-XE): la dACL usa any come source e lo switch sostituisce l’IP reale dell’host. Senza device tracking la ACL non viene applicata correttamente.
  • La dACL sovrascrive, per quella sessione, la ACL statica eventualmente presente sulla porta.

La named ACL via attributo Filter-Id è un’alternativa più leggera, ma referenzia una ACL che deve già esistere localmente sullo switch: ISE invia solo il nome, non il contenuto.

Dynamic VLAN assignment

L’assegnazione dinamica di VLAN spinge l’endpoint in una VLAN diversa in base al risultato di autorizzazione. Usa tre attributi RADIUS standard:

Attributo Valore Significato
Tunnel-Type (64) 13 VLAN
Tunnel-Medium-Type (65) 6 802
Tunnel-Private-Group-ID (81) nome o ID VLAN target

Si può indicare la VLAN per nome (deve corrispondere al name configurato sullo switch) o per numero. Poiché l’endpoint ha già un IP nella vecchia subnet, un cambio di VLAN richiede spesso un rinnovo DHCP — da qui l’uso del port bounce (vedi CoA).

URL redirect e redirect ACL

Negli scenari posture, CWA (Central Web Auth) o BYOD, ISE invia due av-pair Cisco:

  • url-redirect: l’URL del portale ISE verso cui dirottare il browser.
  • url-redirect-acl: il nome di una ACL locale allo switch che definisce quale traffico redirigere.

Attenzione alla semantica su IOS/IOS-XE: nella redirect ACL, permit = traffico da redirigere (tipicamente HTTP/HTTPS), deny = traffico escluso dal redirect (DNS, DHCP, i PSN stessi). Questa ACL è solo un classificatore di redirect, non un filtro di sicurezza — la protezione la fornisce la dACL abbinata.

Change of Authorization (CoA)

Fino a qui l’autorizzazione avviene al momento dell’autenticazione. Ma cosa succede se lo stato cambia dopo — posture diventa compliant, l’utente completa il BYOD, un admin fa quarantena? Serve un modo per cambiare l’accesso senza riconnessione fisica: è la CoA (RFC 5176).

Il PSN invia in modo non sollecitato un pacchetto CoA al NAD (UDP 1700 in ambito Cisco, 3799 standard). Il NAD deve avere il dynamic authorization abilitato:

aaa server radius dynamic-author
 client 10.1.1.10 server-key <shared-secret>

Tipi di CoA rilevanti:

  • CoA Reauth: forza una nuova autenticazione mantenendo la sessione; l’endpoint non perde il link. Usata quando cambia solo la dACL/permessi.
  • CoA Port Bounce: esegue uno shut/no-shut della porta per far ripartire il DHCP. Necessaria quando cambia la VLAN, così l’host prende un IP nella nuova subnet.
  • CoA Terminate / Disconnect: chiude la sessione (es. quarantena).

Trappole tipiche d’esame

  • dACL applicata ma nessun filtro effettivo → manca ip device tracking: senza device tracking lo switch non riesce a sostituire il source IP e la dACL non funziona. La risposta giusta è abilitare device tracking, non modificare la ACL.
  • Filter-Id/redirect-ACL che referenzia una ACL assente sullo switch: ISE invia solo il nome. Se la named ACL non esiste localmente l’autorizzazione fallisce o il redirect non parte. La dACL, al contrario, viene scaricata per intero.
  • VLAN assignment su porta in host mode errato: in multi-auth non puoi assegnare VLAN diverse a più host sullo stesso segmento; la VLAN dinamica richiede tipicamente multi-domain (MDA) o single-host. Scenario “voice + data + VLAN dinamica” → MDA.
  • VLAN cambia ma l’host resta con il vecchio IP → serve CoA Port Bounce, non Reauth: la Reauth non forza il rinnovo DHCP. In multi-host il port bounce butta giù tutti gli host: preferire scenari single-host/MDA.
  • CoA non arriva al client / timeout: manca aaa server radius dynamic-author sul NAD o la porta UDP 1700/3799 è bloccata. Verificare anche la corrispondenza tra shared-secret CoA e device configurato in ISE.