Feature/firewall sso refactor

I don't think we do this elsewhere - start with:

if (defined($node_info) && ...