SAML-based SSL-VPN via Azure AD
This page documents the FortiGate specific side of the configuration requirements, supplementary to the Microsoft published guide for deploying the Enterprise Application within Azure.
Supplementary to the Microsoft published guide for deploying the Enterprise Application within Azure.
Creating the SAML User
Note: The Microsoft guide does not reference SHA256 as the digest-method. This is now a requirement and it will not function without this.
Creating the User Group
Note: Find the "group ID" in Azure AD for the group referencing your VPN users, and use this in the configuration. You can create multiple groups on the firewall, matching multiple groups in Azure AD if you wish to use different policies for different groups.
Configure the SSL-VPN Portal
Note: Only a requirement for new configurations. If you're migrating to SAML via Azure AD you can edit your existing portals.
Note: Best practice suggests you configure a default portal that provides no access.
Note: This assumes you have already preconfigured your user IP pools and your routing addresses. It also assumes you're using full tunnelling. Split-tunnelling will require different configuration.
Configure the SSL-VPN Settings
Note: Only a requirement for new configurations. If you're migrating to SAML via Azure AD you can edit your existing settings.
Note: This configuration also employs some best-practice configuration around disabling weak ciphers, setting Geo-IP ranges allowed to access the SSL-VPN interface, setting DNS servers for clients as well as the DNS-suffix.
Note: This assumes you have a valid SSL certificate present and configured prior. From FortiOS v7.0.0 onwards you can use LetsEncrypt via ACME if required.
Note: Altering the login-timeout provides users additional time during authentication to perform the required 2FA prompts via the Microsoft Authenticator app, or SMS/phone verification if required.
Troubleshooting
"Invalid HTTP Request" when attempting to login.
This usually occurs when the firewall policies have been created before the SAML configuration (e.g., you've added the SAML group to an existing policy). If this applies to you, it can be resolved by created a new firewall policy with the SAML group as a source.
Debugging the SSL VPN
Use the following diagnose commands to identify SSL VPN issues. These commands enable debugging of SSL VPN with a debug level of -1 for detailed results.
The CLI displays debug output similar to the following:
To disable the debug:
Last updated
Was this helpful?