you can auth captive portal "directly" at AD. you'd have to add NPS as a server role on your windows server (network policy and access service).
there's a sticky post on this subsection of the forum https://forum.pfsense.org/index.php?topic=63791.0
^^^ at the bottom of that post is a link to a PDF that contains pictures/screenshots of the whole process