About the GlobalProtect Components

GlobalProtect provides a complete infrastructure for managing your mobile workforce to enable secure access for all your users, regardless of what endpoints they are using or where they are located. This infrastructure includes the following components:

GlobalProtect Portal

The GlobalProtect portal provides the management functions for your GlobalProtect infrastructure. Every endpoint that participates in the GlobalProtect network receives configuration information from the portal, including information about available gateways as well as any client certificates that may be required to connect to the GlobalProtect gateway. In addition, the portal controls the behavior and distribution of the GlobalProtect app software to both macOS and Windows endpoints. On mobile endpoints, the GlobalProtect app is distributed through the Apple App Store for iOS endpoints, Google Play for Android endpoints and Chromebooks, and the Microsoft Store for Windows 10 UWP endpoints.

If you're using the Host Information Profile (HIP) feature, the portal also defines what information to collect from the host, including any custom information you require.

You can Set Up Access to the GlobalProtect Portal on an interface on any Palo Alto Networks Next-Generation Firewall.

GlobalProtect Gateways

GlobalProtect gateways provide security enforcement for traffic from GlobalProtect apps. Additionally, if the HIP feature is enabled, the gateway generates a HIP report from the raw host data the apps submit and can use this information in policy enforcement.

You can configure different Types of Gateways to provide security enforcement and virtual private network (VPN) access for your remote users, or to apply security policy for access to internal resources.

You can Configure a GlobalProtect Gateway on an interface on any Palo Alto Networks Next-Generation Firewall. You can run both a gateway and a portal on the same firewall, or you can have multiple distributed gateways throughout your enterprise.

GlobalProtect App

The GlobalProtect app software runs on endpoints and enables access to your network resources through the GlobalProtect portals and gateways that you have deployed.

The GlobalProtect app for Windows and macOS endpoints is deployed from the GlobalProtect portal. You can configure the behavior of the app—for example, which tabs the users can see—in the client configurations that you define on the portal. See Define the GlobalProtect Agent Configurations, Customize the GlobalProtect App, and Deploy the GlobalProtect App Software for details.

The GlobalProtect app for mobile endpoints (iOS, Android, and Windows UWP) is available through the official store for the endpoint—the Apple App Store for iOS, Google Play for Android, and the Microsoft Store for Windows UWP. You can alternatively deploy the GlobalProtect Mobile App Using Workspace ONE or other supported third-party mobile endpoint management systems.

See What OS Versions are Supported with GlobalProtect? for more details.

The following diagram illustrates how the GlobalProtect portals, gateways, and apps work together to enable secure access for all your users, regardless of what endpoints they are using or where they are located.

graph TD
    A[Endpoint
(GlobalProtect App)] --> B(GlobalProtect Portal); B --> C[Configuration Info
(Gateways, Certificates, HIP)]; C --> A; A --> D(GlobalProtect Gateway); D --> E[Security Enforcement
VPN Tunnel
HIP Report]; E --> A; D --> F[Internal/External Network Resources]; A -- Secured Traffic --> D; D -- Policy Enforcement --> F; F --> D;
Figure: Interaction between GlobalProtect App, Portal, and Gateway components.

GlobalProtect app features operate as intended only when the integrity of the endpoints and end users is intact. If malicious end users or malware compromise these elements, they may undermine the proper functioning of these features.

About GlobalProtect Licenses

If you want to use GlobalProtect to provide a secure remote access or VPN solution via single or multiple internal/external gateways, you don't need any GlobalProtect licenses. However, to use some of the more advanced features (such as HIP checks and associated content updates, support for the GlobalProtect mobile app, or IPv6 support) you must purchase an annual GlobalProtect Gateway license.

This license must be installed on each firewall running a gateway that:

For GlobalProtect Clientless VPN, you must also install a GlobalProtect gateway license on the firewall that hosts the Clientless VPN from the GlobalProtect portal. You also need the GlobalProtect Clientless VPN dynamic updates to use this feature.

Similarly, for any firewall or GlobalProtect gateway which is acting as HIP redistribution agent or client and collector requires a GlobalProtect Gateway license. The only exception is Panorama.

Feature Gateway License Required?
Single external gateway (Windows and macOS)
Single or multiple internal gateways
Multiple external gateways
Internet of things (IoT) devices Checkmark icon
HIP Checks Checkmark icon
Identification of managed devices using the endpoint serial number on gateways Checkmark icon
HIP-based policy enforcement based on the endpoint status Checkmark icon
App for endpoints running Windows and macOS
Mobile app for endpoints running iOS, Android, Chrome OS, and Windows 10 UWP Checkmark icon
App for endpoints running Linux Checkmark icon
App for endpoints running IoT Checkmark icon
IPv6 for external gateways Checkmark icon
IPv6 for internal gateways (change to default behavior—starting with GlobalProtect app 4.1.3, a GlobalProtect subscription isn't required for this use case)
Clientless VPN (Not supported on multi-VSYS firewalls if the traffic must traverse multiple virtual systems) Checkmark icon
Split tunneling based on destination domain, client process, and video streaming application Checkmark icon
Split DNS Checkmark icon
Adding a compromised device to the quarantine list Checkmark icon
GlobalProtect App Log Collection for Troubleshooting (Panorama appliance running 9.0 or later and PAN-OS 8.1 or later) Checkmark icon
Enforces GlobalProtect connections with FQDN exclusions Checkmark icon
Redistribute HIP Reports Checkmark icon
DHCP Based IP Address Assignment and Management for GlobalProtect Checkmark icon
Table: GlobalProtect Gateway License Requirements per feature

See Activate Licenses for information on installing licenses on the firewall.

Get Started with GlobalProtect Infrastructure Setup

In order for GlobalProtect™ to run, you must set up the infrastructure that allows all components to communicate. At a basic level, this means setting up the interfaces and zones to which the GlobalProtect end users connect to access the portal and the gateways to the network. Because the GlobalProtect components communicate over secure channels, you must acquire and deploy the required SSL certificates to the various components. The following sections guide you through the GlobalProtect infrastructure setup:

Create Interfaces and Zones for GlobalProtect

You must configure the following interfaces and zones for your GlobalProtect infrastructure:

For tips on how to use a loopback interface to provide access to GlobalProtect on different ports and addresses, refer to Can GlobalProtect Portal Page be Configured to be Accessed on any Port?

For more information about portals and gateways, see About the GlobalProtect Components.

  1. Configure a Layer 3 interface for each portal and/or gateway you plan to deploy.

If the gateway and portal are on the same firewall, you can use a single interface for both.

As a best practice, use static IP addresses for the portal and gateway.

Don't attach an interface management profile that allows HTTP, HTTPS, Telnet, or SSH on the interface where you have configured a GlobalProtect portal or gateway because this enables access to your management interface from the internet. Follow the Adminstrative Access Best Practices to ensure that you're securing administrative access to your firewalls in a way that will prevent successful attacks.

  1. Select Network > Interfaces > Ethernet or Network > Interfaces > Loopback , and then select the interface you want to configure for GlobalProtect. In this example, we are configuring ethernet1/1 as the portal interface.
  2. ( Ethernet only ) Set the Interface Type to Layer3 .
  3. On the Config tab, select the Security Zone to which the portal or gateway interface belongs, as follows:
  1. Select the default Virtual Router .
  2. Assign an IP address to the interface:
  1. Click OK to save the interface configuration.
  1. On the firewall(s) hosting GlobalProtect gateway(s), configure the logical tunnel interface that will terminate VPN tunnels established by the GlobalProtect apps.

IP addresses are not required on the tunnel interface unless you require dynamic routing. In addition, assigning an IP address to the tunnel interface can be useful for troubleshooting connectivity issues.

Be sure you enable User-ID in the zone where the VPN tunnels terminate.

  1. Select Network > Interfaces > Tunnel , and Add a tunnel interface.
  2. In the Interface Name field, enter a numeric suffix, such as .2 .
  3. On the Config tab, select the Security Zone for VPN tunnel termination, as follows:
  1. Set the Virtual Router to None .
  2. Assign an IP address to the interface:
  1. Click OK to save the interface configuration.
  1. If you created a separate zone for tunnel termination of VPN connections, create a security policy to enable traffic flow between the VPN zone and your trust zone.

For example, the following policy rule enables traffic between the corp-vpn zone and the l3-trust zone.

Security Policy Rule Example Figure: Example Security Policy Rule for VPN traffic between zones
  1. Commit the configuration.

Enable SSL Between GlobalProtect Components

All interaction between the GlobalProtect components occurs over an SSL/TLS connection. Therefore, you must generate and install the required certificates before configuring each component so that you can reference the appropriate certificate in the configurations. The following sections describe the supported methods of certificate deployment, descriptions and best practice guidelines for the various GlobalProtect certificates, and provide instructions for generating and deploying the required certificates:

About GlobalProtect Certificate Deployment

There are three basic approaches to Deploy Server Certificates to the GlobalProtect Components:

GlobalProtect Certificate Best Practices

The GlobalProtect components must have valid certificates to establish connection using SSL/TLS. The connection fails if you have invalid or expired certificates.

The following table summarizes the SSL/TLS certificates you will need, depending on which features you plan to use:

Certificate Usage Issuing Process and Best Practices
CA certificate Used to sign certificates issued to the GlobalProtect components. If you plan on using self-signed certificates, generate a CA certificate using your dedicated CA server or Palo Alto Networks firewall, and then issue GlobalProtect portal and gateway certificates signed by the CA or an intermediate CA.
Portal server certificate Enables GlobalProtect apps to establish an HTTPS connection with the portal.
  • This certificate is identified in an SSL/TLS Service Profile. You assign the portal server certificate by selecting its associated service profile in a portal configuration.
  • Use a certificate from a well-known, third-party CA. This is the most secure option and ensures that the user endpoints can establish a trust relationship with the portal and without requiring you to deploy the root CA certificate.
  • If you don't use a well-known, public CA, you should export the root CA certificate used to generate the portal server certificate to all endpoints that run the GlobalProtect app. Exporting this certificate prevents the end users from seeing certificate warnings during the initial portal login.
  • The Common Name (CN) and Subject Alternative Name (SAN) fields of the certificate must match the IP address or FQDN of the interface that hosts the portal.
  • In general, a portal must have its own server certificate. However, if you're deploying a single gateway and portal on the same interface, you must use the same certificate for both the gateway and the portal.
  • If you configure a gateway and portal on the same interface, we recommend that you use the same certificate profile and SSL/TLS Service Profile for both the gateway and portal. If they don't use the same certificate profile and SSL/TLS Service Profile, the gateway configuration takes precedence over the portal configuration during the SSL handshake.
Gateway server certificate Enables GlobalProtect apps to establish an HTTPS connection with the gateway.
  • This certificate is identified in an SSL/TLS Service Profile. You assign the gateway server certificate by selecting its associated service profile in a gateway configuration.
  • Generate a CA certificate on the firewall or CA server and use that CA certificate to generate all gateway certificates.
  • The CN and the SAN fields of the certificate must match the FQDN or IP address of the interface where you plan to configure the gateway.
  • The portal can distribute the gateway root CA certificate to the GlobalProtect app based on the configuration (Trusted Root CA list in the Portal configuration Agent tab). However, it's not mandatory for the gateway root CA certificate to be preinstalled in the user's trusted certificate store or for the gateway certificate to be issued by a public CA.
  • In general, each gateway must have its own server certificate. However, if you're deploying a single gateway and portal on the same interface for basic VPN access, you must use a single server certificate for both components. As a best practice, use a certificate signed by a public CA.
  • If you configure a gateway and portal on the same interface, we recommend that you use the same certificate profile and SSL/TLS Service Profile for both the gateway and portal. If they don't use the same certificate profile and SSL/TLS Service Profile, the gateway configuration takes precedence over the portal configuration during the SSL handshake.
( Optional ) Client certificate Used to enable mutual authentication when establishing an HTTPS session between the GlobalProtect apps and the gateways and portal. This ensures that only endpoints with valid client certificates are able to authenticate and connect to the network.
  • For simplified deployment of client certificates, configure the portal to deploy the client certificate to the apps upon successful login using either of the following methods:
    • Use a single client certificate across all GlobalProtect apps that receive the same configuration. Assign the Local client certificate by uploading the certificate to the portal, and then selecting it in a portal agent configuration.
    • Use simple certificate enrollment protocol ( SCEP ) to enable the GlobalProtect portal to deploy unique client certificates to your GlobalProtect apps. Enable this by configuring a SCEP profile, and then selecting that profile in a portal agent configuration.
  • Use one of the following digest algorithms when you generate client certificates for GlobalProtect endpoints: sha1, sha256, sha384, or sha512.
  • You can use other mechanisms to deploy unique client certificates to each endpoint when authenticating the end user.
  • Consider testing your configuration without the client certificate first, and then add the client certificate after you're sure that all other configuration settings are correct.
( Optional ) Machine certificates A machine certificate is a client certificate that is issued to an endpoint that resides in the local machine store or system keychain. Each machine certificate identifies the endpoint in the subject field (for example, CN=laptop1.example.com) instead of the user. The certificate ensures that only trusted endpoints can connect to gateways or the portal.
Machine certificates are required for users configured with the pre-logon connect method.
  • Use one of the following digest algorithms when you generate client certificates for GlobalProtect endpoints: sha1, sha256, sha384, or sha512.
  • If you plan on using the pre-logon feature, use your own PKI infrastructure to deploy machine certificates to each endpoint prior to enabling GlobalProtect access. This approach is important for ensuring security.

For more information, see Remote Access VPN with Pre-Logon .

Deploy Server Certificates to the GlobalProtect Components

The GlobalProtect components must have valid certificates to establish connection using SSL/TLS. The connection fails if you have invalid or expired certificates.

The following are the best practice steps for deploying SSL/TLS certificates to the GlobalProtect components:

Import a Server Certificate from a Well-known, Third-party CA

Use a server certificate from a well-known, third-party CA for the GlobalProtect portal. This practice ensures that the end users are able to establish an HTTPS connection without seeing warnings about untrusted certificates.

The CN and, if applicable, the SAN fields of the certificate must match the FQDN or IP address of the interface where you plan to configure the portal or the device check-in interface on a third-party mobile endpoint management system. Wildcard matches are supported.

Before you import a certificate, make sure the certificate and key files are accessible from your management system and that you have the passphrase to decrypt the private key.

  1. Select Device > Certificate Management > Certificates > Device Certificates and Import a new certificate.
  2. Use the Local certificate type (default).
  3. Enter a Certificate Name .
  4. Enter the path and name to the Certificate File received from the CA, or Browse to find the file.
  5. Set the File Format to Encrypted Private Key and Certificate (PKCS12) .
  6. Enter the path and name to the PKCS#12 file in the Key File field or Browse to find it.
  7. Enter and reenter the Passphrase that was used to encrypt the private key.
  8. Click OK to import the certificate and key.

Create Root CA Certificate for Issuing Self-signed Certificates for GlobalProtect Components

Create the root CA certificate on the portal and use it to issue server certificates for the gateways and, optionally, for clients.

Before deploying self-signed certificates, you must create the root CA certificate that signs the certificates for the GlobalProtect components:

  1. Select Device > Certificate Management > Certificates > Device Certificates and Generate a new certificate.
  2. Use the Local certificate type (default).
  3. Enter a Certificate Name , such as GlobalProtect_CA . The certificate name can't contain spaces.
  4. Don't select a value in the Signed By field. Without a selection for Signed By , the certificate is self-signed.
  5. Enable the Certificate Authority option.
  6. Click OK to generate the certificate.

Use Root CA on the Portal to Generate a Self-signed Server Certificate

Generate server certificates for each gateway you plan to deploy and optionally for the management interface of the third-party mobile endpoint management system (if this interface is where the gateways retrieve HIP reports).

In the gateway server certificates, the values in the CN and SAN fields must be identical. If the values differ, the GlobalProtect agent detects the mismatch and does not trust the certificate. Self-signed certificates contain a SAN field only if you add a Host Name attribute.

Alternatively, you can use the Simple Certificate Enrollment Protocol (SCEP) to request a server certificate from your enterprise CA.

  1. Select Device > Certificate Management > Certificates > Device Certificates and Generate a new certificate.
  2. Use the Local certificate type (default).
  3. Enter a Certificate Name . This name can't contain spaces.
  4. In the Common Name field, enter the FQDN ( recommended ) or IP address of the interface where you plan to configure the gateway.
  5. In the Signed By field, select the GlobalProtect_CA you created.
  6. In the Certificate Attributes area, Add and define the attributes that uniquely identify the gateway. Keep in mind that if you add a Host Name attribute (which populates the SAN field of the certificate), it must be the same as the value you defined for the Common Name .
  7. Configure cryptographic settings for the server certificate, including the encryption Algorithm , key length ( Number of Bits ), Digest algorithm, and Expiration (days).
  8. Click OK to generate the certificate.

Use Simple Certificate Enrollment Protocol (SCEP) to Request a Server Certificate from Your Enterprise CA

Configure separate SCEP profiles for each portal and gateway you plan to deploy. Then use the specific SCEP profile to generate the server certificate for each GlobalProtect component.

In portal and gateway server certificates, the value of the CN field must include the FQDN ( recommended ) or IP address of the interface where you plan to configure the portal or gateway and must be identical to the SAN field.

To comply with the U.S. Federal Information Processing Standard (FIPS), you must also enable mutual SSL authentication between the SCEP server and the GlobalProtect portal. (FIPS-CC operation is indicated on the firewall login page and in its status bar.)

After you commit the configuration, the portal attempts to request a CA certificate using the settings in the SCEP profile. If successful, the firewall hosting the portal saves the CA certificate and displays it in the list of Device Certificates .

  1. Configure a SCEP Profile for each GlobalProtect portal or gateway:
  1. Enter a Name that identifies the SCEP profile and the component to which you deploy the server certificate. If this profile is for a firewall with multiple virtual systems capability, select a virtual system or Shared as the Location where the profile is available.
  2. ( Optional ) Configure a SCEP Challenge , which is a response mechanism between the PKI and portal for each certificate request. Use either a Fixed challenge password that you obtain from the SCEP server or a Dynamic password where the portal-client submits a username and OTP of your choice to the SCEP Server. For a Dynamic SCEP challenge, this can be the credentials of the PKI administrator.
  3. Configure the Server URL that the portal uses to reach the SCEP server in the PKI (for example, http://10.200.101.1/certsrv/mscep/ ).
  4. Enter a string (up to 255 characters in length) in the CA-IDENT Name field to identify the SCEP server.
  5. Enter the Subject name to use in the certificates generated by the SCEP server. The subject must be a distinguished name in the <attribute>=<value> format and must include a common name (CN) attribute ( CN=<variable> ). The CN supports the following dynamic tokens:
    • $USERNAME —Use this token to enable the portal to request certificates for a specific user. To use this variable, you must also Enable Group Mapping. The username entered by the user must match the name in the user-group mapping table.
    • $EMAILADDRESS —Use this token to request certificates associated with a specific email address. To use this variable, you must also Enable Group Mapping and configure the Mail Attributes in the Mail Domains area of the server profile. If GlobalProtect cannot identify an email address for the user, it generates a unique ID and populates the CN with that value.
    • $HOSTID —To request certificates for the endpoint only, specify the host ID token. When a user attempts to log in to the portal, the endpoint sends identifying information that includes its host ID value.
  6. Select the Subject Alternative Name Type :
    • RFC 822 Name —Enter the email name in a certificate’s subject or Subject Alternative Name extension.
    • DNS Name —Enter the DNS name used to evaluate certificates.
    • Uniform Resource Identifier —Enter the name of the resource from which the app will obtain the certificate.
    • None —Do not specify attributes for the certificate.
  7. Configure additional cryptographic settings, including the key length ( Number of Bits ), and the Digest algorithm for the certificate signing request.
  8. Configure the permitted uses of the certificate, either for signing ( Use as digital signature ) or encryption ( Use for key encipherment ).
  9. To ensure that the portal is connecting to the correct SCEP server, enter the CA Certificate Fingerprint . Obtain this fingerprint from the Thumbprint field of the SCEP server interface.
  10. Enable mutual SSL authentication between the SCEP server and the GlobalProtect portal.
  11. Click OK and then Commit the configuration.
  1. Select Device > Certificate Management > Certificates > Device Certificates and then click Generate .
  2. Enter a Certificate Name . This name can't contain spaces.
  3. Select the SCEP Profile to use to automate the process of issuing a server certificate that is signed by the enterprise CA to a portal or gateway, and then click OK to generate the certificate. The GlobalProtect portal uses the settings in the SCEP profile to submit a CSR to your enterprise PKI.

Assign Server Certificate You Imported or Generated to a SSL/TLS Service Profile

Where Can I Use This? What Do I Need?
GlobalProtect™ Subscription For TLSv1.3 :
  • PAN-OS 11.1 (or a later PAN-OS version).
  • GlobalProtect app 6.0.8, GlobalProtect app 6.1.3, GlobalProtect app 6.2.1, or later GlobalProtect app versions.
  • GlobalProtect endpoints running a minimum of Windows 11, macOS, Android, iOS, or Linux (Ubuntu 20) version. Supported browsers are Chrome, Firefox, or Safari.
  • TLSv1.3 isn't supported in FIPS-CC mode.

GlobalProtect supports SSL/TLS service profiles with a maximum TLS version as TLSv1.3. You can create SSL/TLS service profiles on the firewall that is hosting the portal or gateway by specifying the range of supported SSL/TLS versions (from minimum supported version to maximum supported version) for communication between GlobalProtect components.

Configure SSL/TLS service profiles with TLSv1.3 to provide enhanced security and faster TLS handshake while establishing connection between GlobalProtect components. TLSv1.3 is the maximum version supported and, when used, delivers increased security by removing the weak ciphers supported in the earlier TLS versions and adding more secure cipher suites.

  1. To enable SSL connection between GlobalProtect components, you need to generate or import a certificate.
  2. On the firewall that is hosting the GlobalProtect portal and gateway, select Device > Certificate Management > SSL/TLS Service Profile and Add a new SSL/TLS service profile.
  3. Specify a Name for the new profile.
  4. Select the Certificate you imported.
  5. In Protocol Settings, define the range of SSL/TLS versions ( Min Version to Max Version ) for communication between GlobalProtect components. The maximum supported TLS version is TLSv1.3.

To provide the strongest security, set both the Min Version and the Max Version as TLSv1.3.

The Encryption Algorithms and Authentication Algorithms are populated automatically from the available ciphers based on your TLS protocol settings.

The TLSv1.3 aes-chacha20-poly1305 cipher isn't enabled by default on devices running Windows 11. You must manually enable the cipher on GlobalProtect endpoints running Windows 11.

  1. Optional Modify the ciphers in the Encryption Algorithms and Authentication Algorithms section as needed.
SSL TLS Service Profile Configuration Figure: Example configuration of an SSL/TLS Service Profile
  1. Click OK and Commit your changes.

Deploy the Self-Signed Server Certificates

  1. Export the certificate from the portal:
  1. Select Device > Certificate Management > Certificates > Device Certificates .
  2. Select the gateway certificate you want to deploy, and then click Export Certificate .
  3. Set the File Format to Encrypted Private Key and Certificate (PKCS12) .
  4. Enter and confirm a Passphrase to encrypt the private key.
  5. Click OK to download the PKCS12 file to a location of your choice.
  1. Import the certificate on the gateway:
  1. Select Device > Certificate Management > Certificates > Device Certificates and Import the certificate.
  2. Enter a Certificate Name .
  3. Browse to find and select the Certificate File you downloaded in the previous step.
  4. Set the File Format to Encrypted Private Key and Certificate (PKCS12) .
  5. Enter and confirm the Passphrase you used to encrypt the private key when you exported it from the portal.
  6. Click OK to import the certificate and key.
  7. Commit the changes for the gateway.

Replace an Expired GlobalProtect Portal or Gateway Certificate

If your GlobalProtect portal or gateway certificate has expired or is about to expire, you have several options to replace it.

For Prisma Access deployments, the portal and gateway certificates and their renewals are managed automatically as part of the infrastructure, so you don't have to do anything to replace an expired certificate.

If you're using third-party certificates for your portal or gateway, you will need to manage and renew your certificates when they expire.

If the firewall is the certificate authority (CA) that issued the certificate for your portal and gateways, the firewall replaces the expired certificate with a new certificate that has the same attributes as the old certificate but with a different serial number. From the web interface that is hosting the portal or gateway, Renew the Certificate , and commit the changes to push the certificate to the portal or the gateway.

For on-premises deployments that use third party CA-issued SSL certificates, you must import the renewed certificate that you downloaded from your CA using the following procedure:

  1. Note the name and expiration date of the portal or gateway certificate.
  1. From the firewall that is hosting the gateway or portal with the expiring certificate, log on to the web interface.
  2. Select Device > Certificate Management > Certificates .
  3. Locate the certificate in the Device Certificates tab and note the name of the certificate and expiration date.
Device Certificates List Figure: Device Certificates list showing certificate details
  1. Download the renewed certificate from your third-party CA. As an example, the following steps show how to download the renewed certificate from GoDaddy:
  1. Log in to the godaddy.com portal.
  2. Go to the Certificates tab.
  3. Select the certificate and click Download .
GoDaddy Certificate Download Figure: Downloading a certificate from GoDaddy
  1. In the Download Certificate window, for Server type , select Other and download the certificate in .crt format.

The certificate is saved to your downloads folder.

  1. Import the downloaded certificate on the firewall that is hosting your portal or gateway.

If you deployed two firewalls in an HA pair in an active/passive deployment, you must import the certificate on each firewall.

  1. From the web interface, go to Device > Certificate Management > Certificates > Device Certificates > Import .
  2. Enter the exact Certificate Name for the portal or gateway certificate that you're replacing.
  3. For the Certificate File , browse to and select the certificate that you downloaded from the CA.
  4. For the File Format , select Base64 Encoded Certificate (PEM) .
Import Certificate Window Figure: Importing a certificate using the web interface
  1. Click OK .

After the certificate has been imported, you will see the new expiration date for the certificate.

  1. Commit your changes to push the certificate to the portal or gateway.

Deploy the GlobalProtect App to End Users

To connect to GlobalProtect™, an endpoint must be running the GlobalProtect app. Use the GlobalProtect app compatibility matrix to determine what version of the GlobalProtect app you want your users to run on their endpoints.

Because the version that an end user must download and install to enable successful connectivity to your network depends on your environment, there is no direct download link for the GlobalProtect app on the Palo Alto Networks site.

The app deployment method depends on the type of endpoint as follows:

Platform Deployment Options
macOS and Windows endpoints

There are several options you can use to distribute and install the software on macOS and Windows endpoints:

  • Directly from the portal —Download the app software to the firewall hosting the portal, and then activate it so that end users can install the updates when they connect to the portal. This option provides flexibility by allowing you to control how and when end users receive updates based on the agent configuration settings you define for each user, group, and/or operating system. However, if you have a large number of apps that require updates, it could put extra load on your portal.
  • From a web server —If you have a large number of endpoints that need to upgrade the app simultaneously, consider hosting the app updates on a web server to reduce the load on the firewall.
  • Transparently from the command line —For Windows endpoints, you can deploy app settings automatically using the Windows Installer ( Msiexec ). However, to upgrade to a later app version using Msiexec , you must first uninstall the existing app. In addition, Msiexec allows for deployment of app settings directly on the endpoints by setting values in the Windows registry. Similarly, you can also deploy app settings to macOS endpoints, by configuring settings in the macOS plist.
  • Using group policy rules —In Active Directory environments, the GlobalProtect app can also be distributed to end users through an Active Directory group policy.
  • From a mobile endpoint management system —If you use a mobile management system, such as an MDM or EMM, to manage your mobile endpoints, you can use the system to deploy and configure the GlobalProtect app.
Windows 10 phone and Windows 10 UWP
  • From a mobile endpoint management system —If you use a mobile management system, such as an MDM or EMM, that supports Windows 10 endpoints, you can use the system to deploy and configure the GlobalProtect app.
  • From the Microsoft Store —The end user can also download and install the GlobalProtect app directly from the Microsoft Store .
iOS and Android endpoints
  • From a mobile endpoint management system —If you use a mobile management system, such as an MDM or EMM, you can use the system to deploy and configure the GlobalProtect app.
  • From an app store —The end user can also download and install the GlobalProtect app directly from the Apple App Store (iOS endpoints) or from Google Play (Android endpoints).

Starting with GlobalProtect app 5.0, the GlobalProtect app for Chrome OS is not supported; use the GlobalProtect app for Android instead.

Chromebooks
  • From the Google Admin console —The Google Admin console enables you to manage Chromebook settings and apps from a central, web-based location.

The GlobalProtect app for Android is supported only on certain Chromebooks . Chromebooks that do not support Android applications must continue to run the GlobalProtect app for Chrome, which is not supported starting with GlobalProtect app 5.0 and later.

  • From Workspace ONE —You can deploy the GlobalProtect app for Android on managed Chromebooks that are enrolled with Workspace ONE.
Linux

After you download the GlobalProtect app for Linux from the Support Site , you can distribute and install the app:

  • Using Linux app distribution tools —Linux app distribution is typically managed using third-party tools (such as Chef and Puppet), or using a local repository for the Linux operating system (for example, Ubuntu repositories and RHEL repositories ).
  • Manual installation —If you make the software available to your end users, they can manually install the software using Linux tools such as apt or dpkg .

As an alternative to deploying the GlobalProtect app software, you can configure the GlobalProtect portal to provide secure remote access to common enterprise web applications that use HTML, HTML5, and Javascript technologies. Users have the advantage of secure access from SSL-enabled web browsers without installing the GlobalProtect app software. Refer to GlobalProtect Clientless VPN.

GlobalProtect App Minimum Hardware Requirements

The GlobalProtect app runs on a variety of operating systems. To determine the minimum GlobalProtect app version required for a specific operating system, refer to the Compatibility Matrix . The hardware requirements for each endpoint OS are detailed in the following sections:

Minimum Hardware Requirements for GlobalProtect App on Windows

You can install the GlobalProtect app on Windows endpoints that meet the following hardware requirements:

Requirement Specification
Processor
  • Intel Pentium 4 or later with SSE2 instruction set support
  • AMD Opteron/Athlon 64 or later with SSE2 instruction set support
  • Dual core processor (minimum)
RAM 2GB minimum
Hard disk space 200 MB minimum (for log storage)

Minimum Hardware Requirements for GlobalProtect App on macOS

You can install the GlobalProtect app on macOS endpoints that meet the following hardware requirements:

Requirement Specification
Processor
  • Intel Pentium 4 or later with SSE2 instruction set support
  • AMD Opteron/Athlon 64 or later with SSE2 instruction set support
  • macOS based devices with Apple Silicon M1
RAM 512 MB minimum; 2 GB recommended
Hard disk space 200 MB minimum (for log storage)

Minimum Hardware Requirements for GlobalProtect App on Linux

You can install the GlobalProtect app on Linux endpoints that meet the following hardware requirements:

Support for Linux endpoints also requires a GlobalProtect Gateway License.

Requirement Specification
Processor x86 instruction set with 64-bit processor
RAM 256 MB minimum
Hard disk space 100 MB minimum

Download the GlobalProtect App Software Package for Hosting on the Portal

Palo Alto Networks does not provide a direct download link for the GlobalProtect app for end users. To successfully connect to your network, end users must be running an app version that is compatible with your environment .

If you are an end user, please contact your IT Administrator for the latest supported GlobalProtect software.

Before you can deploy the GlobalProtect app for your end users, you must upload the new app installation package to the firewall that is hosting your portal, and then activate the software for download to the apps connecting to the portal. This deployment method is available for all non-mobile app versions. To download the mobile version of the GlobalProtect app see the app store for your mobile device.

To download the latest app directly to the firewall, the firewall must have a service route that enables it to access the Palo Alto Networks Update Server. If the firewall does not have internet access, you can download the app software package from the Palo Alto Networks Software Updates support site using an internet-connected computer, and then manually upload it to the firewall.

To manually download the app software package:

  1. Log in to the Palo Alto Networks Customer Support Portal ( https://support.paloaltonetworks.com/ ).

You must have a valid Palo Alto Networks Customer Support Portal account to log in to and download software from the Software Updates page.

  1. Select Updates > Software Updates .
  2. Select the GlobalProtect app version by operating system.
  3. Review the Release Notes for the app version, and then select the download link to proceed with the download.
  4. Proceed to Deploy the GlobalProtect App to End Users (referencing the Deployment Methods section).

See the Palo Alto Networks Compatibility Matrix for the operating systems on which you can install each release of the GlobalProtect app.

Host App Updates on the Portal

The simplest way to deploy the GlobalProtect app software is to download the new app installation package to the firewall that is hosting your portal, and then activate the software for download to the apps connecting to the portal.

To do this automatically, the firewall must have a service route that enables it to access the Palo Alto Networks Update Server.

If the firewall does not have internet access, you must manually download the software image from the Palo Alto Networks Software Updates support site using an internet-connected computer, and then manually upload it to the firewall.

You define how the app software updates are deployed in the portal agent configurations—whether they occur automatically when the app connects to the portal, whether the user is prompted to upgrade the app, or whether the end user can manually check for and download a new app version. For details on creating an agent configuration, see Define the GlobalProtect Agent Configurations.

  1. On the firewall hosting the GlobalProtect portal, check for new app software images.

Select Device > GlobalProtect Client to view the list of available app software images.

  1. Download the app software image.
  1. Activate the app software image so that end users can download it from the portal.

Only one version of the app software image can be activated at a time. If you activate a new version, but have some apps that require a previously activated version, you must activate the required version again to enable it for download.

Host App Updates on a Web Server

If a large number of your endpoints must install and/or update the GlobalProtect app software, consider hosting the GlobalProtect app software images on an external web server. This helps reduce the load on the firewall when users connect to and download the app.

  1. Download and activate the version of the GlobalProtect app that you plan to host on the web server to the firewall.

Follow the steps for downloading and activating the app software on the firewall, as described in Host App Updates on the Portal.

  1. Download the GlobalProtect app software image that you want to host on your web server.

Download the same image that you activated on the portal.

From a web browser, manually download the GlobalProtect App Software Package for Hosting on the Portal.

  1. Publish the software image files to your web server.
  2. Redirect end users to the web server.

On the firewall hosting the portal, enter the following CLI commands in operational mode:

> set global-protect redirect on
> set global-protect redirect location <path>

where <path> is the URL to the folder hosting the image (for example, https://acme/GP ).

  1. Test the redirect.
  1. From a web browser, go to the following URL:
https://<portal address or name>

For example, https://gp.acme.com .

    1. On the portal login page, enter your user Name and Password , and then click LOGIN . After successful login, the portal should redirect you to the download.

Test the App Installation

Use the following procedure to test the GlobalProtect app installation.

  1. Create an agent configuration for testing the app installation.

When initially installing the GlobalProtect app software on the endpoint, the end user must be logged in to the system using an account that has administrative privileges. Subsequent app software updates do not require administrative privileges.

As a best practice, create an agent configuration that is limited to a small group of users, such as administrators in the IT department responsible for administering the firewall:

  1. Select Network > GlobalProtect > Portals .
  2. Select an existing portal configuration that you want to modify or Add a new one.
  3. On the Agent tab, select an existing configuration or Add a new one to deploy to the test users/group.
  4. On the User/User Group tab, Add the User/User Group who will be testing the app.
  5. On the App tab, set Allow User to Upgrade GlobalProtect App to Allow with Prompt . Click OK to save the configuration.
  6. ( Optional ) On the Agent tab, select the agent configuration that you just created or modified, and then click Move Up so that it is higher on the list than the more generic configurations you have created.

When a GlobalProtect app connects, the portal compares the source information in the packet against the agent configurations you have defined. As with security rule evaluation, the portal looks for a match starting from the top of the list. When it finds a match, it delivers the corresponding configuration to the app.

  1. Commit the changes.
  1. Log in to the GlobalProtect portal.
  1. Launch your web browser and go to the following URL:
https://<portal address or name>

For example, https://gp.acme.com .

  1. On the portal login page, enter your user Name and Password , and then click LOG IN .
GlobalProtect Portal Login Screen Figure: GlobalProtect Portal Login Screen
  1. Navigate to the app download page.

In most cases, the app download page appears immediately after you log in to the portal. Use this page to download the latest app software package.

If you have enabled GlobalProtect Clientless VPN access, the applications page opens after you log in to the portal (instead of the agent download page) when you log in to the portal. Select GlobalProtect Agent to open the download page.

GlobalProtect Applications Page with Agent Download Option Figure: GlobalProtect Applications Page showing the option to download the agent
  1. Download the app.
  1. To begin the download, click the link that corresponds to the operating system running on your computer.
GlobalProtect Agent Download Page Figure: GlobalProtect Agent Download Page showing platform options
  1. Open the software installation file.
  2. When prompted to run or save the software, click Run .
  3. When prompted, click Run to launch the GlobalProtect Setup Wizard.

When initially installing the GlobalProtect app software on the endpoint, the end user must be logged in to the system using an account that has administrative privileges. Subsequent app software updates do not require administrative privileges.

  1. Complete the GlobalProtect app setup.
  1. From the GlobalProtect Setup Wizard, click Next .
  2. Click Next to accept the default installation folder ( C:\Program Files\Palo Alto Networks\GlobalProtect ) and then click Next twice.

Although you can Browse to select a different location in which to install the GlobalProtect app, the best practice is to install it in the default location. The default installation location is read-only for non-privileged users and therefore installing to this location protects against malicious access to the app.

  1. After the installation is complete, Close the wizard.
  1. Log in to GlobalProtect.
  1. Launch the GlobalProtect app by clicking the system tray icon. The status panel opens.
  2. Enter the FQDN or IP address of the portal, and then click Connect .
  3. ( Optional ) By default, you are automatically connected to the Best Available gateway, based on the configuration that the administrator defines and the response times of the available gateways. To connect to a different gateway, select the gateway from the Gateway drop-down (for external gateways only).

This option is only available if you enable manual gateway selection.

  1. ( Optional ) Depending on the connection mode, click Connect to initiate the connection.
  2. ( Optional ) If prompted, enter your Username and Password , and then click Sign In .

If authentication is successful, you are connected to your corporate network, and the status panel displays the Connected or Connected - Internal status. If you set up a GlobalProtect welcome page, it displays after you log in successfully.

Download and Install the GlobalProtect Mobile App

The GlobalProtect app provides a simple way to extend the enterprise security policies out to mobile endpoints. As with other remote endpoints running the GlobalProtect app, the mobile app provides secure access to your corporate network over an IPsec or SSL VPN tunnel. The app automatically connects to the gateway that is closest to the end user’s current location. In addition, traffic to and from the endpoint is automatically subject to the same security policy enforcement as other hosts on your corporate network. The mobile app also collects information about the host configuration and can use this information for enhanced HIP-based security policy enforcement.

There are two primary methods for installing the GlobalProtect app: You can deploy the app from your third-party MDM and transparently push the app to your managed endpoints; or, you can install the app directly from the official store for your endpoint:

Starting with GlobalProtect app 5.0, the GlobalProtect app for Chrome OS is not supported; use the GlobalProtect app for Android instead.

This workflow describes how to install the GlobalProtect app directly on the mobile endpoint.

  1. Create an agent configuration for testing the app installation.

As a best practice, create an agent configuration that is limited to a small group of users, such as administrators in the IT department responsible for administering the firewall:

  1. Select Network > GlobalProtect > Portals .
  2. Select an existing portal configuration to modify or Add a new one.
  3. On the Agent tab, either select an existing configuration or Add a new configuration to deploy to the test users/group.
  4. On the User/User Group tab, Add the User/User Group who will be testing the app.
  5. Select the OS for the app you are testing ( iOS , Android , or WindowsUWP ).
  6. ( Optional ) Select the agent configuration that you just created/modified, and then click Move Up so that it is higher on the list than the more generic configurations you have created.
  7. Commit the changes.
  1. From the endpoint, follow the prompts to download and install the app.
  1. Launch the app.

When successfully installed, the GlobalProtect app icon displays on the endpoint’s Home screen. To launch the app, tap the icon. When prompted to enable GlobalProtect VPN functionality, tap OK .

GlobalProtect Mobile App VPN Prompt Figure: Prompt on a mobile device to enable GlobalProtect VPN functionality
  1. Connect to the portal.
  1. When prompted, enter the Portal name or address, User Name , and Password . The portal name must be an FQDN and it should not include the https:// at the beginning.
GlobalProtect Mobile App Login Screen Figure: Mobile app login screen for GlobalProtect
  1. Tap Connect and verify that the app successfully establishes a connection to GlobalProtect.

If a third-party mobile endpoint management system is configured, the app prompts you to enroll.

View and Collect GlobalProtect App Logs

You have two options for collecting GlobalProtect™ app logs from the end users’ endpoints:

In order for the GlobalProtect app to send troubleshooting logs, diagnostic logs, or both to Strata Logging Service for further analysis, you must configure the GlobalProtect portal to enable the GlobalProtect app log collection for troubleshooting. Additionally, you can configure the HTTPS-based destination URLs that can contain IP addresses or fully qualified domain names of the web servers/resources that you want to probe, and to determine issues such as latency or network performance on the end user’s endpoint.

Use the following steps to view or collect GlobalProtect logs:

  1. Launch the GlobalProtect app.
  2. From the status panel, open the settings dialog.
GlobalProtect Settings Gear Icon Figure: GlobalProtect Settings gear icon
  1. Select Settings .
  2. From the GlobalProtect Settings panel, select Troubleshooting .
  3. Select either Debug or Dump from the Logging Level drop-down.
  4. ( Optional Windows only ) View your GlobalProtect logs:
  1. Select Logs .
  2. Choose a Log type.
  3. Start viewing logs.
GlobalProtect Troubleshooting Log View Figure: GlobalProtect Troubleshooting section showing log options
  1. ( Optional ) Collect Logs to send to your GlobalProtect administrator for troubleshooting.
GlobalProtect Collect Logs Option Figure: GlobalProtect Collect Logs button GlobalProtect Log Collection confirmation Figure: GlobalProtect log collection confirmation message

Deploy App Settings Transparently (Overview)

As an alternative to deploying app settings from the portal configuration, you can define them directly from the following endpoints:

The benefit of this alternative is that you can enable deployment of GlobalProtect app settings to endpoints prior to their first connection to the GlobalProtect portal.

Some settings do not have a corresponding portal configuration setting on the web interface and must be configured using the Windows Registry, Msiexec, or macOS plist. These settings are listed in the Customizable App Settings table as “Not in portal.”

Settings defined in the portal configuration always override settings defined in the Windows Registry, macOS plist, or pre-deployment configuration file ( pangps.xml ) for Linux.

If you define settings in the registry, plist, or pangps.xml , but the portal configuration specifies different settings, the settings that the app receives from the portal overrides the settings defined on the endpoint. This override also applies to login-related settings, such as whether to connect on-demand, whether to use single sign-on (SSO), and whether the app can connect if the portal certificate is invalid. Therefore, you should avoid conflicting settings. In addition, the portal configuration is cached on the endpoint, and that cached configuration is used anytime the GlobalProtect app restarts or the endpoint reboots.

The following sections describe what customizable app settings are available and how to deploy these settings transparently to Windows, macOS, and Linux endpoints:

In addition to using the Windows Registry, macOS plist, or Linux pre-deployment configuration to deploy GlobalProtect app settings, you can enable the GlobalProtect app to collect specific Windows Registry or macOS plist information from the endpoints, including data on applications installed on the endpoints, processes running on the endpoints, and attributes or properties of those applications and processes. You can then monitor the data and add it to a security rule to use as matching criteria. Endpoint traffic that matches registry settings you define can be enforced according to the security rule.

Customizable App Settings (Overview)

In addition to pre-deploying the portal address, you can also define the app settings. To Deploy App Settings to Windows Endpoints you define keys in the Windows Registry (path HKEY_LOCAL_MACHINE\SOFTWARE\Palo Alto Networks\GlobalProtect\Settings\ unless otherwise stated). To Deploy App Settings to macOS Endpoints you define entries in the Settings dictionary of the macOS plist ( /Library/Preferences/com.paloaltonetworks.GlobalProtect.settings.plist ). To Deploy App Settings to Linux Endpoints you define entries under <Settings> of the /opt/paloaltonetworks/globalprotect/pangps.xml pre-deployment configuration file. On Windows endpoints only, you can also use the Windows Installer to Deploy App Settings from Msiexec.

The following topics describe each customizable app setting. Settings defined in the GlobalProtect portal agent configuration take precedence over settings defined in the Windows Registry or the macOS plist.

Some settings do not have a corresponding portal configuration setting on the web interface and must be configured using the Windows Registry or Msiexec. These include, but are not limited to, settings such as the following: can-prompt-user-credential , wrap-cp-guid , and filter-non-gpcp . They are listed in the following options as “Not in portal.”

App Display Options

The following table lists the options that you can configure in the Windows Registry or macOS plist to customize the display of the GlobalProtect app.

Portal Agent Configuration Windows Registry/macOS Plist Msiexec Parameter Default
Display GlobalProtect Icon show-agent-icon yes | no SHOWAGENTICON=”yes | no” yes
Enable Advanced View enable-advanced-view yes | no ENABLEADVANCEDVIEW=”yes | no” yes
Enable Rediscover Network Option rediscover-network yes | no REDISCOVERNETWORK=”yes | no” yes
Enable Resubmit Host Profile Option resubmit-host-info yes | no n/a yes
Show System Tray Notifications show-system-tray-notifications yes | no SHOWSYSTEMTRAYNOTIFICATIONS=”yes | no” yes

User Behavior Options

The following table lists the options that you can configure in the Windows registry and macOS plist to customize how the user interacts with the GlobalProtect app.

Some settings do not have a corresponding portal configuration setting on the web interface and must be configured using the Windows Registry, Msiexec, or macOS plist. These settings are listed in the table as “Not in portal.” They include, but are not limited to, settings such as the following: ShowPrelogonButton and can-save-password .

Portal Agent Configuration Windows Registry/macOS Plist Msiexec Parameter Default
Allow User to Change Portal Address can-change-portal yes | no CANCHANGEPORTAL=”yes | no” yes
Allow User to Dismiss Welcome Page enable-hide-welcome-page yes | no ENABLEHIDEWELCOMEPAGE= ”yes | no” yes
Allow User to Continue with Invalid Portal Server Certificate can-continue-if-portal-cert-invalid yes | no CANCONTINUEIFPORTALCERTINVALID= ”yes | no” yes
Allow User to Disable GlobalProtect App disable-allowed yes | no DISABLEALLOWED="yes | no" no
Allow User to Uninstall GlobalProtect App
  1. The registry path is ..\Settings\<portal> .
  2. Specify a 0 to manually allow users to uninstall the GlobalProtect app with password. Specify a 1 to prevent users from uninstalling the GlobalProtect app.
  3. Restart the PAN GP agent services or restart the machine to read the new value.
Uninstall 0 | 1 n/a n/a
Save User Credentials
Specify a 0 to prevent GlobalProtect from saving credentials, a 1 to save both username and password, or a 2 to save the username only.
save-user-credentials 0 | 1 | 2 n/a n/a
Not in portal
The Allow user to save password setting is deprecated in the web interface in PAN-OS 7.1 and later releases but is configurable from the Windows registry and macOS plist. Any value specified in the Save User Credentials field overwrites a value specified here.
can-save-password yes | no CANSAVEPASSWORD=”yes | no” yes
Windows only/Not in portal
This setting enables the GlobalProtect credential provider to display the Start GlobalProtect Connection button, which allows users to initiate the GlobalProtect pre-logon connection manually.
ShowPrelogonButton yes | no n/a no
Windows 10 only/Not in portal
This setting is used in conjunction with GlobalProtect SSO and enables the GlobalProtect credential provider to be set as the default sign-in option at the next Windows login and for subsequent logins.
MakeGPCPDefault yes | no MAKEGPCPDEFAULT=”yes | no” n/a
Windows only/Not in portal This setting is used in conjunction with GlobalProtect SSO and sets the number of seconds for users to wait to log in to Windows before establishing a tunnel connection. LogonWaitTime <5-30 seconds> n/a n/a
Windows only/Not in portal This setting is used in conjunction with GlobalProtect SSO and sets the number of seconds to delay users from logging in to Windows after establishing a tunnel connection. LogonPostWaitTime <3-10 second> n/a n/a

App Behavior Options

The following table lists the options that you can configure in the Windows Registry and macOS plist to customize the behavior of the GlobalProtect app.

Some settings do not have a corresponding portal configuration setting on the web interface and must be configured using the Windows Registry, Msiexec, or macOS plist. These settings are listed in the table as “Not in portal.” They include, but are not limited to, settings such as the following: portal <IPaddress> , prelogon 1 , and can-prompt-user-credential .

Portal Agent Configuration Windows Registry/macOS Plist Msiexec Parameter Default
Connect Method connect-method on-demand | pre-logon | user-logon CONNECTMETHOD=”on-demand | pre-logon | user-logon” user-logon
Conditional Connect Method Based on Network Type conditional-connect yes | no n/a no
Not supported on the portal intelligent-portal yes | no INTELLIGENTPORTAL=”yes | no” no
Portal IP Address for USA and China portal-country-map "<IP address>(US);<IP address>(CN)" PORTALCOUNTRYMAP = "<Portal IP address>(US);<Portal IP address>(CN)" n/a
User Location intelligent-portal-service "URL" INTELLIGENTPORTALSERVICE = "<IP location URL>" n/a
GlobalProtect App Config Refresh Interval (hours) refresh-config-interval <hours> REFRESHCONFIGINTERVAL= ”<hours>” 24
Send HIP Report Immediately if Windows Security Center (WSC) State Changes (Windows Only) wsc-autodetect yes | no n/a no
Detect Proxy for Each Connection (Windows Only) proxy-multiple-autodetect yes | no n/a no
Clear Single Sign-On Credentials on Logout (Windows Only) logout-remove-sso yes | no LOGOUTREMOVESSO=”yes | no” yes
Disable Single Sign-On on local machines
This setting allows you to disable the SSO feature even if it is configured on the portal. It overwrites the portal configuration when you manually add the key to the Windows registry or macOS plist and set the value as Yes .
For Windows endpoints, you must manually add this setting to the Windows registry:

Windows Path:
HKEY_LOCAL_MACHINE\SOFTWARE\Palo Alto Networks\GlobalProtect\Settings

Key Name/Value:
force-sso-disable yes | no

For macOS endpoints, you must manually add this setting to the macOS plist:

macOS Path:
/Library/Preferences/com.paloaltonetworks. GlobalProtect.settings.plist

Add the setting under Palo Alto Networks > GlobalProtect > Settings

Key Name/Value:
force-sso-disable yes | no

This setting is not supported in msiexec. n/a
Use Default Authentication on Kerberos Authentication Failure (Windows Only) krb-auth-fail-fallback yes | no KRBAUTHFAILFALLBACK= ”yes | no” no
Use Default Browser for SAML Authentication ( macOS plist )
default-browser yes | no
DEFAULTBROWSER= “yes | no” no
Custom Password Expiration Message (LDAP Authentication Only) ( Deprecated )
PasswordExpiryMessage <message>
n/a Password expires in <number> days
Portal Connection Timeout (sec) portal-timeout <portaltimeout> n/a 5
TCP Connection Timeout (sec) connect-timeout <connect-timeout> n/a 5
TCP Receive Timeout (sec) receive-timeout <receive-timeout> n/a 30
Client Certificate Store Lookup certificate-store-lookup user | machine | user and machine | invalid CERTIFICATESTORELOOKUP= "user | machine | user and machine | invalid" user and machine
SCEP Certificate Renewal Period (days) scep-certificate-renewal-period <renewalPeriod> n/a 7
Maximum Internal Gateway Connection Attempts max-internal-gateway-connection-attempts <maxValue> MIGCA="<maxValue>" 0
Extended Key Usage OID for Client Certificate ext-key-usage-oid-for-client-cert <oidValue> EXTCERTOID=”<oidValue>” n/a
User Switch Tunnel Rename Timeout (sec) user-switch-tunnel-rename-timeout <renameTimeout> n/a 0
Use Single Sign-On
(Windows Only)
use-sso yes | no USESSO="yes | no" yes
Use Single Sign-On for Smart Card (Windows Only) use-sso-pin yes | no USESSOPIN="yes | no" no
Inbound Authentication Message authentication-message n/a n/a
Allow Overriding Username from Client Certificate override-cc-username yes | no n/a no
Not in portal
This setting specifies the default portal IP address (or hostname).
portal <IPaddress> PORTAL="<IPaddress>" n/a
Not in portal
This setting enables GlobalProtect to initiate a VPN tunnel before a user logs in to the device and connects to the GlobalProtect portal.
prelogon 1 PRELOGON="1" 1
Not in portal
This setting is used in conjunction with single sign-on (SSO) and indicates whether or not to prompt the user for credentials if SSO fails.
( Windows )
can-prompt-user-credential yes | no
CANPROMPTUSERCREDENTIAL= ”yes | no” yes
Windows only/Not in portal
This setting filters the third-party credential provider’s tile from the Windows login page so that only the native Windows tile is displayed.*
wrap-cp-guid {third party credential provider guid} WRAPCPGUID=”{guid_value]" FILTERNONGPCP=”yes | no” no
Windows only/Not in portal
This setting is an additional option for the setting wrap-cp-guid, and allows the third-party credential provider tile to be displayed on the Windows login page, in addition to the native Windows logon tile.*
filter-non-gpcp no n/a n/a
Windows only/Not in portal
This setting allows you to assign static IP addresses to Windows endpoints.
reserved-ipv4 <reserved-ipv4>
reserved-ipv6 <reserved-ipv6>
RESERVEDIPV4=”<reserved-ipv4>”
RESERVEDIPV6=”<reserved-ipv6>”
n/a
(Windows Only)
This setting allows you to set a valid default gateway on GlobalProtect virtual adapter when you configure GlobalProtect app in Full-Tunnel mode.
fake-default-gateway yes | no FIXDEFAULTGATEWAY yes | no n/a
(Windows Only)
This setting allows you to collect HIP data on Windows endpoints.
collect-hip-data yes | no COLLECTHIPDATA= ”yes | no” n/a
(Windows Only)
This setting allows you to save gateway passwords on Windows endpoints.
save-gateway-password yes | no SAVEGATEWAYPASSWORD= ”yes | no” n/a
Windows Only/Not in portal
This setting allows you to press the Enter key to log in to GlobalProtect from the embedded browser on Windows endpoints during SAML authentication.
In some cases, enabling this setting will prevent the Enter key press from being accepted during sign on. If this occurs, change the setting to no .
Windows Registry Path:
HKEY_CURRENT_USER\SOFTWARE\Palo Alto Networks\GlobalProtect\Settings
Key Name/Value
translate-enter-key yes | no
TRANSLATEENTERKEY= "yes | no" yes

Script Deployment Options

The following table displays options that enable GlobalProtect to initiate scripts before and after establishing a connection and before disconnecting. Because these options are not available in the portal, you must define the values for the relevant key—either pre-vpn-connect , post-vpn-connect , or pre-vpn-disconnect —from the Windows registry or macOS plist.

If you are allowing end users to establish the VPN connection to the corporate network before logging in to the Windows endpoint by using Connect Before Logon, you must run VPN connect scripts with the context admin value specified the Windows registry. You cannot specify the default context user value because there is no user prior to Windows logon.

Portal Agent Configuration Windows Registry/macOS Plist Msiexec Parameter Default
Execute the script specified in the command setting (including any parameters passed to the script).
Environmental variables are supported.
Specify the full path in commands.
command <parameter1> <parameter2> [...]
Windows example:
command %userprofile%\vpn_script.bat c: test_user
macOS example:
command $HOME/vpn_script.sh /Users/test_user test_user
PREVPNCONNECTCOMMAND= ”<parameter1> <parameter2> [...]”
POSTVPNCONNECTCOMMAND= ”<parameter1> <parameter2> [...]”
PREVPNDISCONNECTCOMMAND= ”<parameter1> <parameter2> [...]”
n/a
( Optional ) Specify the privileges under which the command(s) can run (default is user: if you do not specify the context, the command runs as the current active user). context admin | user PREVPNCONNECTCONTEXT= ”admin | user”
POSTVPNCONNECTCONTEXT= ”admin | user”
PREVPNDISCONNECTCONTEXT= ”admin | user”
user
( Optional ) Specify the number of seconds the GlobalProtect app waits for the command to execute (range is 0-120). If the command does not complete before the timeout, the app proceeds to establish a connection or disconnect. A value of 0 (the default) means the app does not wait to execute the command.
Not supported for post-vpn-connect .
timeout <value>
Example:
timeout 60
PREVPNCONNECTTIMEOUT= ”<value>”
PREVPNDISCONNECTTIMEOUT= ”<value>”
0
( Optional ) Specify the full path of a file used in a command. The GlobalProtect app verifies the integrity of the file by checking it against the value specified in the checksum key.
Environmental variables are supported.
file <path_file> PREVPNCONNECTFILE= ”<path_file>”
POSTVPNCONNECTFILE= ”<path_file>”
PREVPNDISCONNECTFILE= ”<path_file>”
n/a
( Optional ) Specify the sha256 checksum of the file referred to in the file key. If the checksum is specified, the GlobalProtect app executes the command(s) only if the checksum generated by the GlobalProtect app matches the checksum value specified here. checksum <value> PREVPNCONNECTCHECKSUM= ”<value>”
POSTVPNCONNECTCHECKSUM= ”<value>”
PREVPNDISCONNECTCHECKSUM =”<value>”
n/a
( Optional ) Specify an error message to inform the user that either the command(s) cannot be executed or the command(s) exited with a non-zero return code.
The message must be 1,024 or fewer ANSI characters.
error-msg <message>
Example:
error-msg Failed executing pre-vpn-connect action!
PREVPNCONNECTERRORMSG= ”<message>”
POSTVPNCONNECTERRORMSG= ”<message>”
PREVPNDISCONNECTERRORMSG =”<message>”
n/a

Configure Conditional Connect Method Based on Network Type

Where Can I Use This? What Do I Need?
  • Prisma Access
  • GlobalProtect Subscription
  • Prisma Access Mobile Users license (for use with Prisma Access)
  • GlobalProtect app version 6.2 or later for Windows and macOS

Configure Conditional Connect to enable the GlobalProtect app to change the connect method dynamically based on whether the internal host detection determines that the user is on the internal network or working from a remote location. You deploy the conditional-connect setting transparently from the macOS plist or the Windows Registry. Before enabling Conditional Connect, make sure that you have:

graph TD
    A[Endpoint Starts] --> B{Is Internal?};
    B -- Yes --> C[No VPN Connection Needed];
    B -- No --> D[Establish VPN Tunnel];
    D --> E[Access Resources Securely];
    C --> F[Monitor Internal Network];
    F --> B;
    E --> F;
    D --> G{Connection Mode?};
    G -- On-demand --> D;
    G -- User-logon --> D;
    G -- Pre-logon --> D;
                
Figure: Simple Flowchart illustrating Conditional Connect Logic

Deploy App Settings to Windows Endpoints (Overview)

Use the Windows Registry or Windows Installer ( Msiexec ) to transparently deploy the GlobalProtect app and settings to Windows endpoints.

Deploy App Settings in the Windows Registry

You can enable deployment of GlobalProtect app settings to Windows endpoints prior to their first connection to the GlobalProtect portal by using the Windows Registry. Use the options described in the Customizable App Settings table to use the Windows Registry to customize app settings for Windows endpoints.

In addition to using the Windows Registry to deploy GlobalProtect app settings, you can enable the GlobalProtect app to collect specific Windows Registry information from Windows endpoints. You can then monitor the data and add it to a security rule to use as matching criteria. Endpoint traffic that matches registry settings you define can be enforced according to the security rule.

  1. Locate the GlobalProtect app customization settings in the Windows Registry.

Open the Windows Registry (enter regedit on the command prompt) and go to:

HKEY_LOCAL_MACHINE\SOFTWARE\Palo Alto Networks\GlobalProtect\Settings\
  1. Set the portal name.

If you do not want the end user to manually enter the portal address even for the first connection, you can pre-deploy the portal address through the Windows Registry.

If you want to define all other app settings, you can define keys in the Windows Registry ( HKEY_LOCAL_MACHINE\SOFTWARE\Palo Alto Networks\GlobalProtect\Settings\

  1. In the Window Registry, go to:
HKEY_LOCAL_MACHINE\SOFTWARE\Palo Alto Networks\GlobalProtect\PanSetup
  1. Right-click Portal and then select Modify .
  2. Enter the portal name in the Value data field, and then click OK .
Windows Registry Editor showing PanSetup key Figure: Windows Registry Editor showing the GlobalProtect PanSetup key and Portal value
  1. Deploy various settings to the Windows endpoint, including the connect method for the GlobalProtect app and SSO.

View Customizable App Settings for a full list of the commands and values you can set up using the Windows Registry.

You have the option to deploy connect before logon settings to the Windows endpoints prior to enabling end users to log in to the VPN before logging into the endpoint.

You have the option to deploy GlobalProtect credential provider settings to the Windows endpoints to delay the GlobalProtect credential provider Windows sign-in request or enforce the GlobalProtect credential provider as the default sign-in option.

  1. Enable the GlobalProtect app to wrap third-party credentials on the Windows endpoint, allowing for SSO when using a third-party credential provider.

Refer to Enable SSO Wrapping for Third-Party Credentials with the Windows Registry .

Deploy App Settings from Msiexec

On Windows endpoints, you have the option of automatically deploying the GlobalProtect app and the app settings from the Windows Installer ( Msiexec ) by using the following syntax:

msiexec.exe /i GlobalProtect.msi <SETTING>="<value>"

Msiexec is an executable program that installs or configures a product from the command line. On endpoints running Microsoft Windows XP or a later OS, the maximum string length that you can use at the command prompt is 8,191 characters.

Msiexec Example Description
msiexec.exe /i GlobalProtect.msi /quiet PORTAL=”portal.acme.com” Install GlobalProtect in quiet mode (no user interaction) and configure the portal address.
msiexec.exe /i GlobalProtect.msi CANCONTINUEIFPORTALCERTINVALID=”no” Install GlobalProtect with the option to prevent users from connecting to the portal if the certificate is not valid.

For a complete list of settings and the corresponding default values, see Customizable App Settings .

You can also Enable SSO Wrapping for Third-Party Credentials with the Windows Installer .

Deploy Scripts Using the Windows Registry

You can enable deployment of custom scripts to Windows endpoints using the Windows Registry.

You can configure the GlobalProtect app to initiate and run a script for any or all of the following events: before and after establishing the tunnel, and before disconnecting the tunnel. To run the script at a particular event, reference the batch script from a command registry entry for that event.

Depending on the configuration settings, the GlobalProtect app can run a script before and after the app establishes a connection to the gateway, and before the app disconnects. Use the following workflow to use the Windows Registry to customize app settings for Windows endpoints.

The registry settings that enable you to deploy scripts are supported on endpoints running GlobalProtect App 2.3 and later releases.

  1. Open the Windows registry, and locate the GlobalProtect app customization settings.

Open the Windows registry (enter regedit in the command prompt) and go to one of the following key locations, depending on when you want to execute scripts (pre/post connect or pre disconnect):

HKEY_LOCAL_MACHINE\SOFTWARE\Palo Alto Networks\GlobalProtect\Settings\pre-vpn-connect
HKEY_LOCAL_MACHINE\SOFTWARE\Palo Alto Networks\GlobalProtect\Settings\post-vpn-connect
HKEY_LOCAL_MACHINE\SOFTWARE\Palo Alto Networks\GlobalProtect\Settings\pre-vpn-disconnect

If the key does not exist within the Settings key, create it by right-clicking Settings and selecting New > Key ).

  1. Enable the GlobalProtect app to run scripts by creating a new String Value named command .

The batch file specified here should contain the specific script (including any parameters passed to the script) that you want run on the device.

  1. If the command string does not already exist, create it by right-clicking the pre-vpn-connect , post-vpn-connect , or pre-vpn-disconnect key, selecting New > String Value , and naming it command ).
  2. Right click command , and then select Modify .
  3. Enter the commands or script that the GlobalProtect app should run. For example:
%userprofile%\pre_vpn_connect.bat c: test_user
Windows Registry Editor showing script command value Figure: Windows Registry Editor showing the value data for a pre-vpn-connect script command
  1. ( Optional ) Add additional registry entries as needed for each command.

Create or modify registry strings and their corresponding values, including context , timeout , file , checksum , or error-msg . For additional information, see Script Deployment Options .

Deploy Scripts Using Msiexec

On Windows endpoints, you can use the Windows Installer ( Msiexec ) to deploy the GlobalProtect app, app settings, and scripts that the app will run automatically (see Script Deployment Options ). To do so, use the following syntax:

msiexec.exe /i GlobalProtect.msi <SETTING>="<value>"

Msiexec is an executable program that installs or configures a product from the command line. On systems running Microsoft Windows XP or later releases, the maximum string length that you can use at the command prompt is 8,191 characters.

This limitation applies to the command line, individual environment variables (such as the USERPROFILE variable) that are inherited by other processes, and all environment variable expansions. If you run batch files from the command line, this limitation also applies to batch file processing.

For example, to deploy scripts that run at specific connect or disconnect events, you can use syntax similar to the following examples:

Example: Use Msiexec to Deploy Scripts that Run Before a Connect Event

For a script that you can copy and paste, go here .

msiexec.exe /i GlobalProtect.msi
PREVPNCONNECTCOMMAND="%userprofile%\pre_vpn_connect.bat c: test_user"
PREVPNCONNECTCONTEXT="user"
PREVPNCONNECTTIMEOUT="60"
PREVPNCONNECTFILE="C:\Users\test_user\pre_vpn_connect.bat"
PREVPNCONNECTCHECKSUM="a48ad33695a44de887bba8f2f3174fd8fb01a46a19e3ec9078b0118647ccf599"
PREVPNCONNECTERRORMSG="Failed executing pre-vpn-connect action."
            

For a complete list of settings and the corresponding default values, see Script Deployment Options .

Example: Use Msiexec to Deploy Scripts that Run at Pre-Connect, Post-Connect, and Pre-Disconnect Events

For a script that you can copy and paste, go here .

msiexec.exe /i GlobalProtect.msi
PREVPNCONNECTCOMMAND="%userprofile%\pre_vpn_connect.bat c: test_user"
PREVPNCONNECTCONTEXT="user"
PREVPNCONNECTTIMEOUT="60"
PREVPNCONNECTFILE="C:\Users\test_user\pre_vpn_connect.bat"
PREVPNCONNECTCHECKSUM="a48ad33695a44de887bba8f2f3174fd8fb01a46a19e3ec9078b0118647ccf599"
PREVPNCONNECTERRORMSG="Failed executing pre-vpn-connect action."
POSTVPNCONNECTCOMMAND="c:\users\test_user\post_vpn_connect.bat c: test_user"
POSTVPNCONNECTCONTEXT="admin"
POSTVPNCONNECTFILE="%userprofile%\post_vpn_connect.bat"
POSTVPNCONNECTCHECKSUM="b48ad33695a44de887bba8f2f3174fd8fb01a46a19e3ec9078b0118647ccf598"
POSTVPNCONNECTERRORMSG="Failed executing post-vpn-connect action."
PREVPNDISCONNECTCOMMAND="%userprofile%\pre_vpn_disconnect.bat c: test_user"
PREVPNDISCONNECTCONTEXT="admin"
PREVPNDISCONNECTTIMEOUT="0"
PREVPNDISCONNECTFILE="C:\Users\test_user\pre_vpn_disconnect.bat"
PREVPNDISCONNECTCHECKSUM="c48ad33695a44de887bba8f2f3174fd8fb01a46a19e3ec9078b0118647ccf597"
PREVPNDISCONNECTERRORMSG="Failed executing pre-vpn-disconnect action."
            

For a complete list of settings and the corresponding default values, see Script Deployment Options .

Deploy Connect Before Logon Settings in the Windows Registry

You can deploy Connect Before Logon settings to Windows 10 endpoints prior to enabling end users to log in to the VPN before logging into the endpoint by using the Windows Registry. GlobalProtect retrieves the registry keys only once, when the GlobalProtect app initializes.

Follow these guidelines when deploying the Connect Before Logon settings:

  1. Configure the registry keys on the end user Windows endpoints.

You must change the Windows registry on the end users’ Windows endpoints before you can enable Connect Before Logon. You can automatically add the registry keys or manually add the keys.

  1. To automatically add the registry keys for PanPlapProvider and PanPlapProvider.dll in PanGPS.exe ( C:\Program Files\Palo Alto Networks\GlobalProtect ), use the -registerplap command to run as an administrator by using the following syntax:
PanGPS.exe -registerplap
  1. To automatically unregister the keys for PanPlapProvider and PanPlapProvider.dll in PanGPS.exe ( C:\Program Files\Palo Alto Networks\GlobalProtect ), use the -unregisterplap command to run as an administrator by using the following syntax:
PanGPS.exe -unregisterplap

To manually add the registry keys, open the Windows Registry Editor and enter regedit on the command prompt.

You must create the CLSID folder.

  1. In the Windows Registry, go to HKEY_CLASSES_ROOT\CLSID\{20A29589-E76A-488B-A520-63582302A285} . Add the PanPlapProvider value in the format @=PanPlapProvider .
  2. In the Windows Registry, go to HKEY_CLASSES_ROOT\CLSID\{20A29589-E76A-488B-A520-63582302A285}\InprocServer32@="PanPlapProvider.dll" . Verify that the ThreadingModel value is set to Apartment . This is the default value.
  3. In the Windows Registry, go to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\PLAP Providers\{20A29589-E76A-488B-A520-63582302A285}@="PanPlapProvider" . Add the PanPlapProvider value in the format @=PanPlapProvider .
  1. ( Optional ) Configure additional portal addresses or names to display.

If configured, Connect Before Logon will use the default portal address or name in the Windows Registry ( HKEY_LOCAL_MACHINE\SOFTWARE\PaloAlto Networks\GlobalProtect\PanSetup with key Portal ).

You can configure additional portal addresses or names that you want to display in the Portal drop-down by changing the registry keys on the end user Windows endpoints. You can add up to five portal addresses or names. You must change the Windows registry on the end users’ Windows endpoints before you can define the portal addresses or names.

Open the Windows Registry Editor and enter regedit on the command prompt.

  1. In the Windows Registry, create the CBL folder under HKEY_LOCAL_MACHINE\SOFTWARE\Palo Alto Networks\GlobalProtect .
  2. In the Windows Registry, go to HKEY_LOCAL_MACHINE\SOFTWARE\Palo Alto Networks\GlobalProtect\CBL .
  3. Select Edit > New > String Value to create a registry entry for each portal that you want to add. You must specify each entry as Portal1 , Portal2 , Portal3 , Portal4 , and Portal5 . Each entry cannot contain spaces.
  4. Right-click the portal registry value, and then select Modify .
  5. Enter the IP address or name of the GlobalProtect portal in the Value Data field, and then click OK .
  6. Repeat steps 3 and 4 for each portal that you want to add.
  1. ( Optional ) Display the predefined portal addresses or names.

You must change the Windows registry on the end users’ Windows endpoints before you can display the portal addresses or names.

Open the Windows Registry Editor and enter regedit on the command prompt.

  1. In the Windows Registry, create the CBL folder under HKEY_LOCAL_MACHINE\SOFTWARE\Palo Alto Networks\GlobalProtect .
  2. In the Windows Registry, go to HKEY_LOCAL_MACHINE\SOFTWARE\Palo Alto Networks\GlobalProtect\CBL .
  3. Select Edit > New > String Value to create a registry entry for AlwaysShowPortal .
  4. Enter the value as yes in the Value Data field, and then click OK .

By default, Connect Before Logon does not display the portal address or name if only one portal is defined.

  1. ( Optional ) Enable end users to authenticate using a smart card.

You must change the Windows registry on the end users’ Windows endpoints before you can enable smart card authentication.

Open the Windows Registry Editor and enter regedit on the command prompt.

  1. In the Windows Registry, create the CBL folder under HKEY_LOCAL_MACHINE\SOFTWARE\Palo Alto Networks\GlobalProtect .
  2. In the Windows Registry, go to HKEY_LOCAL_MACHINE\SOFTWARE\Palo Alto Networks\GlobalProtect\CBL .
  3. Select Edit > New > String Value to create a registry entry for UseSmartCard .
  4. Enter the value as yes in the Value Data field, and then click OK .
  1. Reboot the endpoint.

You must reboot the endpoint in order for the PLAP and Connect Before Logon registry keys to take effect.

  1. Verify the configuration.

After you have configured the settings in the Windows registry and to use Connect Before Logon starting with GlobalProtect™ app 5.2, choose the authentication method:

Deploy GlobalProtect Credential Provider Settings in the Windows Registry

You can deploy the GlobalProtect credential provider settings to delay the GlobalProtect credential provider Windows sign-in request or to enforce the GlobalProtect credential provider as the default sign-in option for Windows 10 by using the Windows Registry.

  1. Delay the GlobalProtect credential provider Windows sign-in request.

Establishing the GlobalProtect tunnel before Windows login can be useful in certain situations. For example, you may want to enforce the Windows device to synchronize data with the Active Directory or want to delay the GlobalProtect credential provider Windows sign-in request.

You can configure the amount of time (in seconds) that the GlobalProtect credential provider waits for the tunnel to be established before submitting a Windows sign-in request when single sign on (SSO) is enabled. By default, the GlobalProtect Credential Provider Support to Delay Windows Login Before Establishing the Tunnel Connection feature is disabled and the GlobalProtect credential provider submits the sign-in requests without any delay.

  1. From the command prompt, enter the regedit command to open the Windows Registry Editor.
  2. In the Windows Registry, go to HKEY_LOCAL_MACHINE\SOFTWARE\Palo Alto Networks\GlobalProtect\PanSetup
  3. Right-click PreLogonState and then select New > DWORD (32-bit) Value .
  4. Right-click New Value #1 and then select Rename .

Enter LogonWaitTime . Right-click LogonWaitTime and then select Modify . In the Value data field, set the number of seconds (range is 5-30) for end users to wait to log in to Windows before establishing a tunnel connection. Click OK .

Windows Registry Editor showing LogonWaitTime setting Figure: Windows Registry Editor showing the LogonWaitTime DWORD value
  1. Repeat substeps 1, 2, and 3 to delay the GlobalProtect credential provider from submitting the Windows sign-in request after the tunnel is established.

Enter LogonPostWaitTime . Right-click LogonPostWaitTime and then select Modify . In the Value data field, set the number of seconds (range is 3-10) for end users to wait to log in to Windows. Click OK .

You are required to first enter the amount of time (in seconds) for LogonWaitTime , and then enter the amount of time (in seconds) for LogonPostWaitTime .

Windows Registry Editor showing LogonPostWaitTime setting Figure: Windows Registry Editor showing the LogonPostWaitTime DWORD value
  1. Enforce GlobalProtect credential provider as the default sign-in option for Windows 10.

When GlobalProtect SSO is enabled on Windows devices, users can have more than one sign-in option in addition to using the GlobalProtect credential provider options such as a third-party credential, smart card, Windows Hello PIN, Windows Hello Password, or Windows Hello Fingerprint. Users can use any of these sign-in options to sign in to their Windows device and set it as the default sign-in option at the next Windows login making GlobalProtect SSO unavailable. Users must manually switch to the GlobalProtect credential provider again to enable GlobalProtect SSO. When the GlobalProtect credential provider is enabled as the default sign-in option even when users can login with any other sign-in option, the GlobalProtect credential provider sign-in option is selected at the next Windows login and for subsequent logins.

When GlobalProtect is installed on Windows devices, users cannot log in to the device using the User Principal Name (UPN)- for example, username@domain - when the GlobalProtect credential provider is selected and the device is offline.

Follow these guidelines when you are enforcing the GlobalProtect credential provider to be the default-sign option on Windows devices:

  1. From the command prompt, enter the regedit command to open the Windows Registry Editor.
  2. In the Window Registry, go to:
HKEY_LOCAL_MACHINE\SOFTWARE\Palo Alto Networks\GlobalProtect
  1. Right-click the GlobalProtect folder, then select New > String Value to add a new string value.
  2. Enter the MakeGPCPDefault string value. Right-click MakeGPCPDefault and then select Modify .

In the Value data field, enter yes to enable the GlobalProtect credential provider to be the default sign-in option at the next Windows login. If you set the Value data to no , the MakeGPCPDefault setting is disabled and the user selected sign-in option will be used as the default at the next Windows login. Click OK .

Windows Registry Editor showing MakeGPCPDefault setting Figure: Windows Registry Editor showing the MakeGPCPDefault string value

SSO Wrapping for Third-Party Credential Providers on Windows Endpoints (Overview)

On Windows 7 endpoints, the GlobalProtect app utilizes the Microsoft credential provider framework to support single sign-on (SSO). With SSO, the GlobalProtect credential provider wraps the Windows native credential provider, enabling GlobalProtect to use Windows login credentials to automatically authenticate and connect to the GlobalProtect portal and gateway. In addition to this, SSO wrapping enables Windows 10 users to update their Active Directory (AD) password using the GlobalProtect credential provider when their password expires or an administrator requires a password change at the next login.

When other third-party credential providers also exist on the endpoint, the GlobalProtect credential provider is unable to gather the user's Windows login credentials. As a result, GlobalProtect fails to connect to the GlobalProtect portal and gateway automatically.

If SSO fails, you can identify the third-party credential provider and configure the GlobalProtect app to wrap those third-party credentials, which enables users to successfully authenticate to Windows, GlobalProtect, and the third-party credential provider using only their Windows login credentials.

Optionally, you can configure Windows to display separate login tiles: one for each third-party credential provider and another for the native Windows login. This is useful when a third-party credential provider adds additional functionality that does not apply to GlobalProtect.

If you want to remove the GlobalProtect credential provider from your Windows endpoint, execute the GlobalProtectPanGPS.exe -u command in the Command Prompt.

Use the Windows registry or the Windows Installer ( msiexec ) to allow GlobalProtect to wrap third-party credentials:

GlobalProtect SSO wrapping for third-party credential providers (CPs) is dependent on the third-party CP settings. In some cases, GlobalProtect SSO wrapping might not work correctly if the third-party CP implementation does not allow GlobalProtect to successfully wrap their CP.

Enable SSO Wrapping for Third-Party Credentials with the Windows Registry

Use the following steps in the Windows Registry to enable SSO to wrap third-party credentials on Windows 7 endpoints.

  1. Open the Windows Registry and locate the globally unique identifier (GUID) for the third-party credential provider that you want to wrap.
  1. From the command prompt, enter the regedit command to open the Windows Registry Editor.
  2. Go to the following Windows Registry location to view the list of currently installed credential providers:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\Credential Providers.
  1. Copy the GUID key for the credential provider that you want to wrap (including the curly brackets — { and } — on either end of the GUID):
Windows Registry Editor showing Credential Providers with GUIDs Figure: Windows Registry Editor showing the list of installed Credential Providers and their GUIDs
  1. Enable SSO wrapping for third-party credential providers by adding the wrap-cp-guid setting to the GlobalProtect Registry.
  1. Go to the following Windows Registry location:
HKEY_LOCAL_MACHINE\SOFTWARE\Palo Alto Networks\GlobalProtect:
Windows Registry Editor showing GlobalProtect key Figure: Windows Registry Editor showing the GlobalProtect key location
  1. Right-click the GlobalProtect folder, and then select New > String Value to add a new string value:
Windows Registry Editor showing New String Value option Figure: Windows Registry Editor showing the option to create a new String Value
  1. Configure the following String Value fields:

For the Value data field, the GUID value that you enter must be enclosed with curly brackets: { and } .

The following is an example of what a third-party credential provider GUID in the Value data field might look like:

{A1DA9BCC-9720-4921-8373-A8EC5D48450F}
  1. For the new String Value , wrap-cp-guid is displayed as the string value’s Name and the GUID is displayed as the Value Data .
  2. Windows Registry Editor showing wrap-cp-guid value Figure: Windows Registry Editor showing the wrap-cp-guid string value and its data
  1. Next Steps:
  1. ( Optional ) Allow the third-party credential provider tile to be displayed to users at login.

Add a second String Value with the Name filter-non-gpcp and enter no for the string’s Value data :

Windows Registry Editor showing filter-non-gpcp value set to 'no' Figure: Windows Registry Editor showing the filter-non-gpcp string value set to 'no'

After you add this string value to the GlobalProtect settings, two login options are presented to users on the Windows logon screen: the native Windows tile and the third-party credential provider’s tile.

  1. Assign a default credential provider for user login.
  1. Open the Windows Registry to locate the globally unique identifier (GUID) for the third-party credential provider that you want to assign as the default credential provider.
  1. From the command prompt, enter the regedit command to open the Windows Registry Editor.
  2. Go to the following Windows Registry location to view the list of currently installed credential providers:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\Credential Providers.
  1. Copy the complete GUID key for the credential provider (including the curly brackets — { and } —on either end of the GUID).
  1. Open the Local Group Policy Editor to enable and assign a default credential provider.
  1. From the command prompt, enter the gpedit.msc command to open the Local Group Policy Editor.
  2. Select Computer Configuration > Administrative Templates > System > Logon .
  3. Under Setting , double-click Assign a default credential provider to open the Assign a default credential provider window.
  4. Set the policy to Enabled .
  5. Under Assign the following credential provider as the default credential provider , enter the GUID of the credential provider (copied from the Windows Registry).
  6. Click Apply , and the click OK to save your changes.
  1. ( Optional ) Hide a third-party credential provider tile from the Windows logon screen.
  1. Open the Windows Registry to locate the globally unique identifier (GUID) for the third-party credential provider that you want to hide.
  1. From the command prompt, enter the regedit command to open the Windows Registry Editor.
  2. Go to the following Windows Registry location to view the list of currently installed credential providers:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\Credential Providers.
  1. Copy the complete GUID key for the credential provider that you want to hide (including the curly brackets — { and } — on either end of the GUID).
  1. Open the Local Group Policy Editor to hide the third-party credential provider.
  1. From the command prompt, enter the gpedit.msc command to open the Local Group Policy Editor.
  2. Select Computer Configuration > Administrative Templates > System > Logon .
  3. Under Setting , double-click Exclude credential providers to open the Exclude credential providers window.
  4. Set the policy to Enabled .
  5. Under Exclude the following credential providers , enter the GUID of the credential provider you want to hide (copied from the Windows Registry).

To hide multiple credential providers, separate each GUID with a comma.

  1. Click Apply , and then click OK to save your changes.
  1. Finalize your changes.

Once your changes are finalized, reboot your system for the changes to take effect.

Enable SSO Wrapping for Third-Party Credentials with the Windows Installer

Use the following options in the Windows Installer ( Msiexec ) to enable SSO to wrap third-party credential providers on Windows 7 endpoints.

Use the following syntax from the Windows Installer ( Msiexec ):

msiexec.exe /i GlobalProtect.msi WRAPCPGUID=”{guid_value}” FILTERNONGPCP=”yes”

In the syntax above, the FILTERNONGPCP parameter simplifies authentication for the user by filtering the option to log in to the system using the third-party credentials.

FILTERNONGPCP=”no”

In the syntax above, the FILTERNONGPCP parameter is set to “no” , which filters out the third-party credential provider’s logon tile so that only the native tile displays. In this case, both the native Windows tile and the third-party credential provider tile are displayed to users when logging in to the Windows endpoint.

Deploy App Settings to macOS Endpoints (Overview)

Use the macOS global plist (property list) file to set the GlobalProtect app customization settings or to deploy scripts to macOS endpoints.

Deploy App Settings in the macOS Plist

You can set the GlobalProtect app customization settings in the macOS global plist (Property list) file. This enables deployment of GlobalProtect app settings to macOS endpoints prior to their first connection to the GlobalProtect portal.

On macOS endpoints, plist files are either located in /Library/Preferences or in ~/Library/Preferences . The tilde ( ~ ) symbol indicates that the location is in the current user's home folder. The GlobalProtect app on a macOS endpoint first checks for the GlobalProtect plist settings. If the plist does not exist at that location, the GlobalProtect app searches for plist settings in ~/Library/Preferences .

In addition to using the macOS plist to deploy GlobalProtect app settings, you can enable the GlobalProtect app to collect specific macOS plist information from the endpoints. You can then monitor the data and add it to a security rule to use as matching criteria. Endpoint traffic that matches registry settings you define can be enforced according to the security rule.

  1. Open the GlobalProtect plist file and locate the GlobalProtect app customization settings.

Use Xcode or an alternate plist editor to open the plist file:

/Library/Preferences/com.paloaltonetworks.GlobalProtect.settings.plist

Then go to:

/Palo Alto Networks/GlobalProtect/Settings

If the Settings dictionary does not exist, create it. Add each key to the Settings dictionary as a string.

  1. Set the portal name.

If you do not want the end user to manually enter the portal address even for the first connection, you can pre-deploy the portal address through the plist. In the PanSetup dictionary, configure an entry for Portal .

  1. Deploy various settings to the macOS endpoint, including the connect method for the GlobalProtect app.

View Customizable App Settings for a full list of the keys and values that you can configure using the macOS plist.

  1. ( Optional ) If you are using system extensions and need to switch to kernel extensions, set the key value to UseKextAnyway in the macOS plist ( /Library/Preferences/com.paloaltonetworks.GlobalProtect.settings.plist ) for the GlobalProtect app.

Follow these guidelines when you are using system extensions and need to switch to kernel extensions:

You must specify UseKextAnyway as the plist key before installing GlobalProtect app 5.2.6 or later releases or upgrading from an earlier release to GlobalProtect app 5.2.6 or later releases running Catalina 10.15.4 or later. However, if you are upgrading from an earlier release to GlobalProtect app 5.2.6 or later releases running macOS Big Sur 11 or later, you must enable system extensions.

Deploy Scripts Using the macOS Plist

When a user connects to the GlobalProtect gateway for the first time, the GlobalProtect app downloads the configuration file and stores app settings in a GlobalProtect macOS property file (plist). In addition to making changes to the app settings, you use the plist to deploy scripts at any or all of the following events: before and after establishing the tunnel, and before disconnecting the tunnel. Use the following workflow to use the plist to deploy scripts to macOS endpoints.

The macOS plist settings that enable you to deploy scripts are supported on endpoints running GlobalProtect App 2.3 and later releases.

  1. ( Endpoints running Mac OS X 10.9 or a later OS ) Flush the settings cache. This prevents the OS from using the cached preferences after making changes to the plist.

To clear the default preferences cache, run the killall cfprefsd command from a macOS terminal.

  1. Open the GlobalProtect plist file, and locate or create the GlobalProtect dictionary associated with the connect or disconnect event. The dictionary under which you will add the settings determines when the GlobalProtect app runs the script(s).

Use Xcode or an alternate plist editor to open the plist file ( /Library/Preferences/com.paloaltonetworks.GlobalProtect.settings.plist ) and go to one of the following dictionary locations:

If Settings dictionary does not exist, create it. Then, in Settings , create a new dictionary for the event or events at which you want to run scripts.

  1. Enable the GlobalProtect app to run scripts by creating a new String named command .

The value specified here should reference the shell script (and the parameters to pass to the script) that you want run on your endpoints.

If the command string does not already exist, add it to the dictionary and specify the script and parameters in the Value field. For example:

$HOME/pre_vpn_connect.sh
/Users/username username

Environmental variables are supported.

As a best practice, specify the full path in commands.

  1. ( Optional ) Add additional settings related to the command, including administrator privileges, a timeout value for the script, checksum value for the batch file, and an error message to display if the command fails to execute successfully.

Create or modify additional strings in the plist ( context , timeout , file , checksum , and/or error-msg) and enter their corresponding values. For additional information, see Script Deployment Options .

  1. Save the changes to the plist file.

Save the plist.

Deploy App Settings to Linux Endpoints

You can set the GlobalProtect app customization settings in the pre-deployment configuration file ( pangps.xml ). This enables deployment of GlobalProtect app settings to Linux endpoints prior to their first connection to the GlobalProtect portal.

On Linux endpoints, the pre-deployment configuration file ( pangps.xml ) is located in /opt/paloaltonetworks/globalprotect .

The following table lists the pre-deployment settings for Linux endpoints that you can add to the pangps.xml file to customize the behavior of the GlobalProtect app and how the user interacts with the GlobalProtect app.

Portal Agent Configuration Linux Default
Connect Method connect-method on-demand | user-logon user-logon
Allow User to Change Portal Address can-change-portal yes | no yes
Allow User to Continue with Invalid Portal Server Certificate can-continue-if-portal-cert-invalid yes | no yes
Use Default Browser for SAML Authentication default-browser yes | no no
Portal Connection Timeout (sec) portal-timeout <portaltimeout> 5
TCP Connection Timeout (sec) connect-timeout <connect-timeout> 5
TCP Receive Timeout (sec) receive-timeout <receive-timeout> 30
Not in portal
This setting is used to predeploy the full chain certificate verification flag.
full-chain-cert-verify
<Settings>
<full-chain-cert-verify>yes</full-chain-cert-verify>
</Settings>
n/a
Not in portal
This setting specifies the default portal IP address (or hostname).
Portal <IPaddress> n/a

If you have already installed the GlobalProtect app on the Linux endpoint, follow these instructions:

  1. Modify the pre-deployment setting you want to edit for the pangps.xml file in /opt/paloaltonetworks/globalprotect .
  2. Reboot the Linux endpoint in order for the pre-deployment configuration changes to take effect.

If you are installing the GlobalProtect app for the first time, follow these instructions to deploy various settings to the Linux endpoint.

  1. Create the /opt/paloaltonetworks/globalprotect/pangps.xml pre-deployment configuration file.
  2. Add the pre-deployment settings to the pangps.xml file, including the connect method for the GlobalProtect app and the default browser for SAML authentication.

The following example shows the XML configuration of the pre-deployment changes that you deployed on the Linux endpoint, including the portal IP address (or hostname) under <PanSetup> .

<?xml version="1.0" encoding="UTF-8"?>
<GlobalProtect>
    <Settings>
        <connect-method>on-demand</connect-method>
        <can-continue-if-portal-cert-invalid>yes</can-continue-if-portal-cert-invalid>
        <can-change-portal>no</can-change-portal>
        <portal-timeout>100</portal-timeout>
        <connect-timeout>100</connect-timeout>
        <receive-timeout>100</receive-timeout>
        <default-browser>yes</default-browser>
    </Settings>
    <PanSetup>
        <Portal>portal.acme.com</Portal>
    </PanSetup>
    <PanGPS>
    </PanGPS>
</GlobalProtect>
            
  1. Install the GlobalProtect app for Linux .

GlobalProtect User Authentication

The first time a GlobalProtect app connects to the portal, the user is prompted to authenticate to the portal. If authentication succeeds, the GlobalProtect portal sends the GlobalProtect configuration, which includes the list of gateways to which the app can connect, and optionally a client certificate for connecting to the gateways. After successfully downloading and caching the configuration, the app attempts to connect to one of the gateways specified in the configuration.

Because these components provide access to your network resources and settings, they also require the end user to authenticate. The appropriate security level required on the portal and gateways varies with the sensitivity of the resources that the gateway protects.

GlobalProtect provides a flexible authentication framework that allows you to choose the authentication profile and certificate profile that are appropriate to each component. GlobalProtect provides the following authentication methods:

SAML SSO is supported with Windows Hello for Business. SAML SSO is not supported on macOS.

Cloud Identity Engine supports the following authentication methods for GlobalProtect:

How Does the App Know What Credentials to Supply?

By default, the GlobalProtect app attempts to use the same login credentials for the gateway that it used for portal login. In the simplest case, where the gateway and the portal use the same authentication profile or certificate profile, the app connects to the gateway transparently.

On a per-app configuration basis, you can also customize which GlobalProtect portal and gateways—internal, external, or manual only—require different credentials (such as unique OTPs). This enables the GlobalProtect portal or gateway to prompt for the unique OTP without first prompting for the credentials specified in the authentication profile.

There are two options for modifying the default app authentication behavior so that authentication is both stronger and faster:

Credential Forwarding to Some or All Gateways

With two-factor authentication, you can specify the portal and types of gateways (internal, external, or manual only) that prompt for their own set of credentials. This option speeds up the authentication process when the portal and the gateway require different credentials (either different OTPs or different login credentials entirely). For each portal or gateway that you select, the app does not forward credentials, allowing you to customize the security for different GlobalProtect components. For example, you can have the same security on your portals and internal gateways, while requiring a second factor OTP or a different password for access to those gateways that provide access to your most sensitive resources.

For an example of how to use this option, see Set Up Two-Factor Authentication.

How Does the App Know Which Certificate to Supply?

When you configure GlobalProtect to use client certificates for authentication on macOS or Windows endpoints, GlobalProtect must present a valid client certificate to authenticate with the portal and gateways.

For a client certificate to be valid, it must meet the following requirements:

When only one client certificate meets the requirements above, the app automatically uses that client certificate for authentication. However, when multiple client certificates meet these requirements, GlobalProtect prompts the user to select the client certificate from a list of valid client certificates on the endpoint.

While GlobalProtect requires users to select the client certificate only when they first connect, users might not know which certificate to select. In this case, we recommend you to narrow the list of available client certificates by certificate purpose (as indicated by the OID) and certificate store.

For more information on these and other settings you can configure to customize your app, see Customize the GlobalProtect Agent.

Set Up External Authentication

The following workflows describe how to set up the GlobalProtect portal and gateways to use an external authentication service. The supported authentication services include LDAP, Kerberos, RADIUS, SAML, and TACACS+.

GlobalProtect also supports local authentication. To use local authentication, create a local user database ( Device > Local User Database ) that contains the users and groups to which you want to allow GlobalProtect access, and then refer to that database in the authentication profile.

For more information, see GlobalProtect User Authentication.

The options for setting up external authentication include:

Set Up LDAP Authentication

Organizations often use LDAP as an authentication service and a central repository for user information. They can also use LDAP to store the role information for application users.

  1. Create a server profile.

The server profile identifies the external authentication service and instructs the firewall how to connect to that authentication service and access the authentication credentials for your users.

When you use LDAP to connect to Active Directory (AD), you must create a separate LDAP server profile for every AD domain.

  1. Select Device > Server Profiles > LDAP , and then Add an LDAP server profile.
  2. Enter a Profile Name , such as GP-User-Auth .
  3. If this profile is for a firewall with multiple virtual systems capability, select a virtual system or Shared as the Location where the profile is available.
  4. Click Add in the Server List area, and then enter the necessary information for connecting to the authentication server, including the server Name , IP address or FQDN of the LDAP Server , and Port .
  5. Select the LDAP server Type .
  6. Enter the Bind DN and Password to enable the authentication service to authenticate the firewall.
  7. ( Optional ) If you want the endpoint to use SSL or TLS for a more secure connection with the directory server, enable the option to Require SSL/TLS secured connection (enabled by default). The protocol that the endpoint uses depends on the server port:
    • 389 (default)—TLS (Specifically, the device uses the StartTLS operation , which upgrades the initial plaintext connection to TLS).
    • 636—SSL.
    • Any other port—The device first attempts to use TLS. If the directory server does not support TLS, the device falls back to SSL.
  8. ( Optional ) For additional security, enable to the option to Verify Server Certificate for SSL sessions so that the endpoint verifies the certificate that the directory server presents for SSL/TLS connections. To enable verification, you must also enable the option to Require SSL/TLS secured connection . For verification to succeed, the certificate must meet one of the following conditions:
    • It's in the list of device certificates: Device > Certificate Management > Certificates > Device Certificates. If necessary, import the certificate into the device.
    • The certificate signer is in the list of trusted certificate authorities: Device > Certificate Management > Certificates > Default Trusted Certificate Authorities .
  9. Click OK to save the server profile.
  1. ( Optional ) Create an authentication profile.

The authentication profile specifies the server profile that the portal or gateways use when they authenticate users. On a portal or gateway, you can assign one or more authentication profiles to one or more client authentication profiles. For descriptions of how an authentication profile within a client authentication profile supports granular user authentication, see Configure a GlobalProtect Gateway and Set Up Access to the GlobalProtect Portal.

To enable users to connect and change their expired passwords without administrative intervention, consider using Remote Access VPN with Pre-Logon.

If a user’s password expires, you can assign a temporary LDAP password to enable them to log in to GlobalProtect. In this case, the temporary password may be used to authenticate to the portal, but the gateway login can fail because the same temporary password can't be reused. To prevent this issue, configure an authentication override in the portal configuration ( Network > GlobalProtect > Portal ) to enable the GlobalProtect app to use a cookie to authenticate to the portal and the temporary password to authenticate to the gateway.

  1. Select Device > Authentication Profile , and then Add a new profile.
  2. Enter a Name for the profile.
  3. Set the Authentication Type to LDAP .
  4. Select the LDAP authentication Server Profile that you created in step 1.
  5. Enter sAMAccountName as the Login Attribute .
  6. Set the Password Expiry Warning to specify the number of days before password expiration that users are notified. By default, users are notified seven days prior to password expiration (range is 1-255). Because users must change their passwords before the end of the expiration period, you must provide a notification period that is adequate for your users in order to ensure continued access to GlobalProtect. To use this feature, you must specify one of the following LDAP server types in your LDAP server profile: active-directory , e-directory , or sun .

Unless you enable pre-logon, users can't access GlobalProtect when their passwords expire.

  1. Specify the User Domain and Username Modifier . The endpoint combines the User Domain and Username Modifier values to modify the domain and username string that a user enters during login. The endpoint uses the modified string for authentication and the User Domain value for User-ID group mapping. Modifying user input is useful when the authentication service requires domain\username strings in a particular format but you don't want to rely on users to enter the domain correctly. You can select from the following options:
    • To send only the unmodified user input, leave the User Domain blank (the default) and set the Username Modifier to the variable %USERINPUT% (the default).
    • To prepend a domain to the user input, enter a User Domain and set the Username Modifier to %USERDOMAIN%\%USERINPUT% .
    • To append a domain to the user input, enter a User Domain and set the Username Modifier to %USERINPUT%@%USERDOMAIN% .
  2. On the Advanced tab, Add an Allow List to select the users and user groups that are allowed to authenticate with this profile. The all option allows every user to authenticate with this profile. By default, the list has no entries, which means no users can authenticate.
  3. Click OK .
  1. Commit the configuration.

Click Commit .

Set Up SAML Authentication

Security Assertion Markup Language (SAML) is an XML-based, open-standard data format used to exchange authentication and authorization data between parties, specifically between an identity provider (IdP) and a service provider. SAML is a product of the OASIS Security Services Technical Committee.

  1. Create a server profile.

The server profile identifies the external authentication service and instructs the firewall on how to connect to that authentication service and access the authentication credentials for your users.

The following steps describe how you can import a SAML metadata file from the IdP so that the firewall can automatically create a server profile and populate the connection, registration, and IdP certificate information. If the IdP does not provide a metadata file, select Device > Server Profiles > SAML Identity Provider , and then Add a server profile manually.

  1. Export the SAML metadata file from the IdP to an endpoint that the firewall can access.

Refer to your IdP documentation for instructions on how to export the file.

  1. Select Device > Server Profiles > SAML Identity Provider .
  2. Import the metadata file onto the firewall.
  3. Enter a Profile Name to identify the server profile, such as GP-User-Auth .
  4. Browse for the metadata file.
  5. Select Validate Identity Provider Certificate (default) so that the firewall validates the IdP certificate.

Validation occurs only after you assign the server profile to an authentication profile and Commit the changes. The firewall uses the certificate profile within the authentication profile to validate the certificate.

  1. Enter the Maximum Clock Skew , which is the allowed system time difference (in seconds) between the IdP and the firewall when the firewall validates IdP messages. The default value is 60 seconds, and the range is 1-900 seconds. If the difference exceeds this value, authentication fails.
  2. Click OK to save the server profile.
  1. (Optional) Create an authentication profile.

The authentication profile specifies the server profile that the portal or gateways use when they authenticate users. On a portal or gateway, you can assign one or more authentication profiles to one or more client authentication profiles. For more information on how an authentication profile within a client authentication profile supports granular user authentication, see Configure a GlobalProtect Gateway and Set Up Access to the GlobalProtect Portal.

SAML authentication supports Remote Access VPN with Pre-Logon with GlobalProtect app 5.0 and later releases.

  1. Select Device > Authentication Profile , and then Add a new authentication profile.
  2. Enter a Name for the authentication profile.
  3. Set the Authentication Type to SAML .
  4. Select the SAML IdP Server Profile that you created in step 1.
  5. Configure the following options to enable certificate authentication between the firewall and the SAML identity provider.
    • The Certificate for Signing Requests that the firewall uses to sign messages that it sends to the IdP.
    • The Certificate Profile that the firewall uses to validate the IdP certificate.
  6. Specify the username and admin role formats.
    • Specify the Username Attribute and User Group Attribute .

Unlike other external authentication types, the SAML authentication profile does not have a User Domain attribute.

    • ( Optional ) If you plan to use this profile to authenticate the administrative accounts that you manage in the IdP identity store, specify the Admin Role Attribute and Access Domain Attribute .
  1. On the Advanced tab, Add an Allow List to select the users and groups that are allowed to authenticate with this profile. The all option allows every user to authenticate with this profile. By default, the list has no entries, which means no users can authenticate.

Make sure the username in the Allow List matches the username returned from the SAML IdP server.

  1. Click OK .
  1. Commit the configuration.
  2. (Chromebooks only ) Enable SAML SSO for Chromebooks.

These steps allow you to set up SAML SSO for the GlobalProtect app for Android on Chromebooks.

  1. Sign in to the Google Admin Console and select Security .
Google Admin Console Security Page Figure: Google Admin Console Security Page
  1. Select Set up single sign-on (SSO) .
  2. ( Optional ) If you want to set up SSO with any other provider besides Google, select Setup SSO with third party identity provider and specify the Sign-in page URL and Sign-out page URL and upload a valid Verification certificate .
Google Admin Console SSO Setup Figure: Google Admin Console SSO Setup options
  1. Configure the SAML identity provider in GlobalProtect.
  1. In the GlobalProtect console, select Device > Server Profiles > SAML Identity Provider .
  2. Match the values you entered for the IdP in the Google Admin Console.
GlobalProtect SAML Identity Provider Configuration Figure: GlobalProtect SAML Identity Provider Configuration matching Google Admin Console settings

About the Embedded Browser for SAML Authentication

Beginning with the GlobalProtect app 6.0.9 and later, 6.2.3 and later, and 6.3 and later releases, the embedded browser framework for SAML authentication has been upgraded to Microsoft Edge WebView2 (Windows) and WKWebView (macOS). This provides a consistent experience between the embedded browser and the GlobalProtect client.

By default, tenants using SAML authentication are configured to utilize the embedded WebView2 (Windows) or WKWebView (macOS) instead of relying on the system's default browser. With this enhancement, there's no need for end users to configure a SAML landing page, eliminating the necessity to manually close the browser. This streamlines the authentication process.

Windows endpoints only: In a Microsoft Entra-joined environment with SSO enabled, users are not required to enter their credentials in order to authenticate to Prisma Access using GlobalProtect. This seamless experience is true whether the user is logging in to their environment for the first time or whether they have logged in before. If there is an error during the authentication, it is displayed in the embedded browser. This authentication process works across all device states.

In a non-Entra-joined environment with SSO enabled, users must enter their credentials during the initial login. On subsequent logins, the credentials are auto-filled as long as the SAML identity provider (IdP) session is active and has not timed out.

Use the Default System Browser for SAML Authentication

If you have configured the GlobalProtect portal to authenticate users through SAML authentication, end users can connect to the app or other SAML-enabled applications without having to re-enter their credentials, for a seamless single sign-on (SSO) experience. End users can benefit from using the default system browser for SAML authentication because they can leverage the same login for GlobalProtect with their saved user credentials on the default system browser such as Chrome, Firefox, or Safari.

In addition, on any browser that supports the Web Authentication ( WebAuthn ) API, you can use the Universal 2nd Factor (U2F) security tokens such as YubiKeys for multi-factor authentication (MFA) to identify providers ( IdPs ) such as Onelogin or Okta.

This feature is supported for Windows, macOS, Linux, and Android, and iOS devices starting with GlobalProtect™ app 5.2.

  1. Change the pre-deployed settings on Windows, macOS, Linux, and Android, and iOS endpoints to use the default system browser for SAML authentication.

You must set the pre-deployed settings on the client endpoints before you can enable the default system browser for SAML authentication. GlobalProtect retrieves these entries only once, when the GlobalProtect app initializes.

If there is no pre-deployed value specified on the end users’ Windows or macOS endpoints when using the default system browser for SAML authentication, the Use Default Browser for SAML Authentication option is set to Yes in the portal configuration, and users upgrade the app from release 5.0.x or release 5.1.x to release 5.2.0 for the first time, the app will open an embedded browser instead of the default system browser. After users connect to the GlobalProtect app and the Use Default Browser for SAML Authentication option is set to Yes in the portal configuration, the app will open the default system browser on Windows and macOS endpoints at the next login.

If the default browser value is set to Yes in the pre-deployed setting of the client machine and the Use Default Browser for SAML Authentication option is set to No in the portal configuration, end users will not have the best user experience. The app will open the default system browser for SAML authentication for the first time. Because the default browser values differ between the client machine and the portal, the app detects a mismatch and opens an embedded browser at the next login.

The Use Default Browser for SAML Authentication option of the GlobalProtect portal and the pre-deployed settings in the client machine must have the same value to provide the best user experience.

  1. On Windows endpoints, you can use the System Center Configuration Manager (SCCM) to pre-deploy the GlobalProtect app 5.2 and set the DEFAULTBROWSER value to yes from the Windows Installer ( Msiexec ) using the following syntax:
msiexec.exe /i GlobalProtect.msi DEFAULTBROWSER=YES
  1. On macOS endpoints, set the default-browser value to yes in the macOS plist ( /Library/Preferences/com.paloaltonetworks.GlobalProtect.settings.plist ) for the GlobalProtect app using the following syntax:
sudo defaults write /Library/Preferences/com.paloaltonetworks.GlobalProtect.settings.plist '{"Palo Alto Networks" ={GlobalProtect={Settings={default-browser=yes;};};};}'

You must specify the plist key to launch the default system browser for SAML authentication after GlobalProtect app 5.2 is installed.

After you add the plist key, you must restart the GlobalProtect app in order for the plist key to take effect. After you restart the GlobalProtect app, the default system browser for SAML authentication launches. To restart the GlobalProtect app:

  1. Launch the Finder.
  2. Open the Applications folder:
    • From the Finder sidebar, select Applications . If you do not see Applications in the Finder sidebar, select Go > Applications from the Finder menu bar.
  3. Open the Utilities folder.
  4. Launch Terminal.
  5. Execute the following commands:
username>$ launchctl unload -S Aqua /Library/LaunchAgents/com.paloaltonetworks.gp.pangpa.plist
username>$ launchctl unload -S Aqua /Library/LaunchAgents/com.paloaltonetworks.gp.pangps.plist
username>$ launchctl load -S Aqua /Library/LaunchAgents/com.paloaltonetworks.gp.pangpa.plist
username>$ launchctl load -S Aqua /Library/LaunchAgents/com.paloaltonetworks.gp.pangps.plist
            
  1. On Linux endpoints, set the default-browser value to yes in the /opt/paloaltonetworks/globalprotect/pangps.xml pre-deployment configuration file under <Settings> . After you add the default-browser value, follow the pre-deployment instructions before you reboot the Linux endpoint in order for the change to take effect.

Starting from GlobalProtect Linux version 6.2.1, end users have the option to use the command-line interface (CLI) to connect to the GlobalProtect app when it is configured with SAML authentication and the default browser. Previously, the only way to connect to the GlobalProtect app configured with SAML authentication and the default browser was through the GUI version. To connect to the GlobalProtect app configured with SAML authentication using either the CLI or GUI version, it is mandatory to have the Firefox browser installed on the Linux endpoint. Use the latest Firefox ESR release version to ensure a seamless connection with SAML authentication on the default browser using either the CLI or GUI version.

  1. On Android and iOS endpoints, create a VPN profile by using the supported mobile device management system (MDM) such as Workspace ONE.
  1. Log in to Workspace ONE UEM as an administrator.
  2. Select an existing VPN profile ( Devices > Profiles & Resources > Profiles ) in the list.
  3. Select VPN to add a VPN profile.

On Android endpoints, enter the Custom Data Key ( use_default_browser_for_saml ). Enter the Custom Data Value ( true ).

On iOS endpoints, enter the Custom Data Key ( saml-use-default-browser ). Enter the Custom Data Value ( true ).

Workspace ONE VPN Profile Configuration Figure: Workspace ONE VPN Profile configuration for SAML default browser setting
  1. Click Save and Publish to save your changes.
  1. Set up SAML authentication to authenticate users.

In order for the default system browser for SAML authentication to not open multiple tabs for each connection, we recommend that you configure an authentication override.

  1. Enable the GlobalProtect app so that end users can leverage the same login for GlobalProtect and their default system browser for SAML authentication.
  1. Select Network > GlobalProtect > Portals > <portal-config> > Agent > <agent-config> > App > Use Default Browser for SAML Authentication .
  2. Select Yes to enable the GlobalProtect app to open the default system browser for SAML authentication.

If single-sign-on (SSO) is enabled, we recommend that you disable it. Set Use Single Sign-On (Windows) or Use Single Sign-On (macOS) to No to disable single sign-on when using the default system browser for SAML authentication.

  1. Click OK twice.
  2. Commit the configuration.
  3. Verify that end users can successfully authenticate to the IdP using their saved credentials.
  1. Select Refresh Connection , Connect , or Enable on the GlobalProtect app to initiate the connection. A new tab on the default browser of the system will open for SAML authentication.
  2. Login using the username and password to authenticate on the IdP.
  3. After end users can successfully authenticate on the IdP, click Open GlobalProtect .
  4. Connect to the GlobalProtect app or other SAML-enabled applications without re-entering the user credentials.

Enable Default Browser for SAML Authentication Using Client Authentication Setting

This feature is available starting from the PAN-OS 11.1.0 version.

This feature enables you to configure the GlobalProtect app to use the default browser to authenticate to the GlobalProtect portal through the Client Authentication setting ( Network > GlobalProtect > Portals > <portal-config> > Authentication > <client-authentication-config> ) of the portal configuration.

You can now select the Use Default Browser option on the Client Authentication screen for the app to use the default browser for SAML/CAS authentication to authenticate to the portal for the first time. The Use Default Browser option is displayed on the Client Authentication screen only when you choose SAML/CAS as the authentication profile.

Starting from PAN-OS 11.1.0, you do not need to set the pre-deployment keys/plist entries to configure the app to choose whether the app should use the default browser or embedded browser instead you can configure it through the Client Authentication setting of the portal configuration.

Consider the following while performing upgrade or downgrade of the PAN-OS versions:

Upgrade PAN-OS version from 11.0.x to 11.1.0:

Downgrade PAN-OS version from 11.1.0 to an earlier version

If you downgrade the PAN-OS version from 11.1.0 to an earlier version, the Use Default Browser configuration that you have configured in the Client Authentication setting of the portal will be removed.

GlobalProtect gateway authentication configurations are not affected during the upgrade/downgrade scenarios.

Customize the SAML/CAS ACS Landing Page

Where Can I Use This? What Do I Need?
  • GlobalProtect Subscription License
  • PAN-OS 10.2.11
  • GlobalProtect app running on Windows, macOS, iOS, Android, and Linux endpoints.

You can now customize the SAML/CAS ACS landing page displayed on the default browser when you are using the SAML/CAS authentication method to authenticate to the GlobalProtect app. You can configure to rebrand or debrand the SAML/CAS ACS landing page on the default browser by using command-line interface (CLI) commands. By default, the feature is not enabled for the app.

This feature is not available on Panorama.

Before you customize the SAML/CAS ACS landing page, you must:

  1. Ensure that the GlobalProtect Portal is configured.
  2. Ensure that the GlobalProtect Gateway is configured.
  3. Ensure that the default browser for SAML authentication is enabled in the portal configuration through either or both of the following methods:
    • Set the Use Default Browser for SAML Authentication option to Yes in the app settings of the GlobalProtect portal configuration.
    • Enable the Use Default-Browser option in the client authentication setting of the portal configuration.

To configure the GlobalProtect portal to rebrand or debrand the SAML/CAS ACS landing page on the default browser, use the following CLI commands:

On the firewall hosting the portal, enter the following CLI command.

<username@hostname> set global-protect auth-response-page

The screen displays the CLI commands for the SAML/CAS ACS page customization feature:

CLI output for auth-response-page Figure: CLI output showing options for `set global-protect auth-response-page`

Use the following CLI commands to customize the SAML/CAS ACS landing page:

set global-protect auth-response-page type <default | none | custom>
  1. To continue using the default ACS page, leave the type empty or use the CLI command:
  2. set global-protect auth-response-page type <default>

When you configure the global-protect auth-response-page type as <default> and the authentication is successful, the default ACS page is displayed with Authentication Complete message. If the Authentication fails, the screen displays the Authentication Failed message.

Default Authentication Complete page Figure: Default Authentication Complete landing page
  1. To remove the default logo, background image, footer logo, and footer text, use the CLI command:
  2. set global-protect auth-response-page type <none>
Blank Authentication Complete page Figure: Blank Authentication Complete landing page after removing default elements
  1. To customize the page, use the CLI command:
  2. set global-protect auth-response-page type <custom>
Customized Authentication Complete page Figure: Example of a customized Authentication Complete landing page

Use the following CLI commands to customize the fields of the SAML/CAS ACS landing page:

set global-protect auth-response-page background-image <value>
set global-protect auth-response-page main-logo <value>
set global-protect auth-response-page auth-message <value>
set global-protect auth-response-page footer-logo <value>
set global-protect auth-response-page footer-text <value>
CLI commands for customization fields Figure: CLI commands to set custom fields for the ACS landing page
  1. You can leave the values empty for all the fields except for the type <value>
  2. For image <value> , you must enter a valid HTTP or HTTPS URL
  3. For text <value> , do not enter any control characters such as \n, \r, \t, \0 or characters whose ascii value is < 0x1F

Use the following CLI command to view the current authentication response page settings:

set global-protect auth-response-page <show>
CLI output showing current settings Figure: CLI output showing current customized authentication response page settings

Character Limits for the Customized Fields

The following table lists the maximum character limits for the fields that you can customize and the screen displays error messages when you enter a value that exceeds the character limit.

Field Character Limit Error Messages (When the Character Limit Exceeds)
Background Image URL 2000 Should be less than or equal to 2000 characters
Main Logo URL 2000 Should be less than or equal to 2000 characters
Footer Logo URL 2000 Should be less than or equal to 2000 characters
Authentication Message 500 Should be less than or equal to 500 characters
Footer Text 256 Should be less than or equal to 256 characters

Image Resolution and Types for the Customized Fields

The feature supports all image types such as . png , .jpeg/.jpg, and . svg based on the browser compatibility. You must use proper image resolution (width x height) depending on the dimensions of the devices.

The following table lists the image resolution that you can apply while customizing the page:

Image Image Resolution
Background Image Background image block width is 100% of the device/browser window width, and the height is calculated by the browser using the image aspect ratio.
Main Logo Main logo image block width is around 50% of the device/browser window width with maximum width of 340 px , and the height is calculated by the browser using the image aspect ratio.
Footer Logo Footer logo image block width is fixed to 30 px , and the height is calculated by the browser using the image aspect ratio.

For the footer logo image the aspect ratio for the width: height must not be more than three times of the width (1:3). If the height ratio increases such as 1:4, the footer text may not be properly displayed on the screen.

Set Up Kerberos Authentication

Kerberos is a computer network authentication protocol that uses tickets to allow nodes that communicate over a non-secure network to prove their identity to one another in a secure manner. Kerberos SSO maintains a seamless logon experience by providing accurate User-ID information without user interaction. Networks that support Kerberos SSO require end users to log in only during initial network access. After the initial login, end users can access any Kerberos-enabled service in the network (such as webmail) without having to log in again until the SSO session expires (the SSO session duration is established by the Kerberos administrator). This authentication method helps identify users for user and HIP policy enforcement.

Kerberos authentication is supported on Windows (7, 8, and 10) and macOS (10.10 and later releases) endpoints. Kerberos authentication for macOS endpoints requires a minimum GlobalProtect app version of 4.1.0.

Kerberos authentication is not supported in FIPS-CC mode.

If you enable both Kerberos SSO and an External Authentication (such as RADIUS), GlobalProtect attempts SSO first. You can configure GlobalProtect to fall back to an external authentication service when SSO fails or you can configure GlobalProtect to use only Kerberos SSO for authentication.

In this implementation, the GlobalProtect portal and gateway act as Kerberos service principals and the GlobalProtect app acts as a user principal that authenticates end users with a Kerberos service ticket from the Key Distribution Center (KDC).

The following items must be in place for the GlobalProtect app for macOS endpoints to support Kerberos SSO:

The KDC must be reachable from the endpoints on which the GlobalProtect app is running. In most instances, the KDC is reachable only from inside the enterprise network, which means the GlobalProtect app can use Kerberos authentication only when the endpoint is internal. However, if the KDC is reachable from outside the enterprise network (from the Internet), the GlobalProtect app can use Kerberos authentication when the endpoint is external.

If the user certificate store contains at least one certificate that is issued by the same CA as the certificate used for pre-logon tunnel establishment, you can also use Kerberos authentication with pre-logon to enable the GlobalProtect app to use Kerberos authentication when the endpoint is external.

When an end user attempts to access protected network resources using Kerberos authentication, the AS grants the user a Ticket to Get Tickets (TGT), which is a service request used to generate service tickets from the TGS. The service ticket is then used to authenticate the end user and establish a service session.

Service accounts are required for creating Kerberos keytabs , which are files that contain the principal name and password of each GlobalProtect portal or gateway.

  1. Create a Kerberos keytab file.
  1. Log in to the KDC using your Kerberos service account credentials.
  2. Open a command prompt and then enter the following command:
ktpass /princ <principal_name> /pass <password> /crypto <algorithm> /ptype KRB5_NT_PRINCIPAL /out <file_name>.keytab

The <principal_name> and <password> are the principal name and password of the GlobalProtect portal or gateway. The <algorithm> must match the algorithm in the service ticket issued by the TGS, which is determined by the Kerberos administrator. If the GlobalProtect portal or gateway is running in FIPS or CC mode, the algorithm must be aes128-cts-hmac-sha1-96 or aes256-cts-hmac-sha1-96 . If the portal or gateway is not running in FIPS or CC mode, you can also use des3-cbc-sha1 or arcfour-hmac .

  1. Create a server profile for Kerberos authentication.

The server profile identifies the external authentication service and instructs the firewall on how to connect to that authentication service and access the authentication credentials for your users.

  1. Select Device > Server Profiles > Kerberos , and then Add a Kerberos server profile.
  2. Enter a Profile Name , such as GP-User-Auth .
  3. If this profile is for a firewall with multiple virtual systems capability, select a virtual system or Shared as the Location where the profile is available.
  4. Click Add in the Servers area, and then enter the following information for connecting to the authentication server:
    • Server Name
    • IP address or FQDN of the Kerberos Server
    • Port
  5. Click OK to save the server profile.
  1. ( Optional ) Create an authentication profile.

The authentication profile specifies the server profile that the portal or gateways use when they authenticate users. On a portal or gateway, you can assign one or more authentication profiles in one or more client authentication profile. For information on how an authentication profile within a client authentication profile supports granular user authentication, see Configure a GlobalProtect Gateway and Set Up Access to the GlobalProtect Portal.

To enable users to connect and change their expired passwords without administrative intervention, consider using Remote Access VPN with Pre-Logon.

  1. Select Device > Authentication Profile , and then Add a new profile.
Authentication Profile Configuration Figure: Authentication Profile Configuration window
  1. Enter a Name for the profile, and then select Kerberos as the authentication Type .
  2. Select the Kerberos authentication Server Profile that you created in step 1.
  3. Specify the User Domain and Username Modifier . The endpoint combines these values to modify the domain/username string that a user enters during login. The endpoint uses the modified string for authentication and the User Domain value for User-ID group mapping. Modifying user inputs is useful when the authentication service requires domain/username strings in a particular format but you do not want to rely on users entering the domain correctly. You can select from the following options:
    • To send the unmodified user input, leave the User Domain blank (default) and set the Username Modifier to the variable %USERINPUT% (default).
    • To prepend a domain to the user input, enter a User Domain and set the Username Modifier to %USERDOMAIN%\%USERINPUT% .
    • To append a domain to the user input, enter a User Domain and set the Username Modifier to %USERINPUT%@%USERDOMAIN% .
  4. Configure Kerberos single sign-on (SSO) if your network supports it.
  1. Enter the Kerberos Realm (up to 127 characters) to specify the hostname portion of the user login name. For example, the user account name user@EXAMPLE.LOCAL has the realm EXAMPLE.LOCAL.
  2. Import a Kerberos Keytab file. When prompted, Browse for the keytab file, and then click OK .
Kerberos Keytab Import Figure: Importing a Kerberos Keytab file
  1. On the Advanced tab, Add an Allow List to select the users and user groups that are allowed to authenticate with this profile. The all option allows every user to authenticate with this profile. By default, the list has no entries, which means no users can authenticate.

During authentication, the endpoint first attempts to establish SSO using the keytab . If it is successful, and the user attempting access is in the Allow List , authentication succeeds immediately. Otherwise, the authentication process falls back to manual (username/password) authentication using the specified authentication Type . The Type does not have to be Kerberos. To change this behavior so users can authenticate using only Kerberos, set Use Default Authentication on Kerberos Authentication Failure to No in the GlobalProtect portal agent configuration.

  1. Click OK .
  1. Assign the authentication profile a gateway.
  1. Select Network > GlobalProtect > Gateways to modify an existing gateway or Add a new one.
GlobalProtect Gateway Authentication Tab Figure: GlobalProtect Gateway Authentication Tab
  1. Select an existing SSL/TLS Service Profile for securing the gateway, or Add a new service profile ( Network > GlobalProtect > Gateways > <gateway-config> > Authentication ).
  2. Add a Client Authentication configuration ( Network > GlobalProtect > Gateways > <gateway-config> > Authentication ), and then configure the following settings:
    • Name —Name of the client authentication configuration.
    • OS —Operating systems on which the gateway can be accessed.
    • Authentication Profile —Authentication profile to which your Kerberos keytab file was imported.
    • ( Optional ) Username Label —Custom username label for GlobalProtect gateway login.
    • ( Optional ) Password Label —Custom password label for GlobalProtect gateway login.
    • ( Optional ) Authentication Message —Message that is displayed when end users authenticate to the gateway.
  3. Click OK to save your changes.
  1. Assign the authentication profile to the GlobalProtect portal.
  1. Select Network > GlobalProtect > Portals .
  2. Select an existing portal or Add a new one.
GlobalProtect Portal Authentication Tab Figure: GlobalProtect Portal Authentication Tab
  1. Select an existing SSL/TLS Service Profile for securing the portal, or Add a new service profile ( Network > GlobalProtect > Portals > <portal-config> > Authentication ).
  2. Add a Client Authentication configuration ( Network > GlobalProtect > Portals > <portal-config> > Authentication ), and then configure the following settings:
    • Name —Name of the client authentication configuration.
    • OS —Operating systems on which the portal can be accessed.
    • Authentication Profile —Authentication profile to which your Kerberos keytab file is imported.
    • ( Optional ) Username Label —Custom username label for GlobalProtect portal login.
    • ( Optional ) Password Label —Custom password label for GlobalProtect portal login.
    • ( Optional ) Authentication Message —Message that is displayed when end users log in to the portal.
  3. Click OK to save your changes.
  1. Commit the configuration.

Click Commit .

Set Up RADIUS or TACACS+ Authentication

RADIUS is a client/server protocol and software that enables remote access servers to communicate with a central server to authenticate dial-in users and authorize their access to the requested system or service. TACACS+ is a well-established authentication protocol, common to UNIX networks, that allows a remote access server to forward a user's login password to an authentication server to determine whether access can be allowed to a given system.

  1. Create a server profile.

The server profile identifies the external authentication service and instructs the firewall how to connect to that authentication service and access the authentication credentials for your users.

If you want to Enable Delivery of VSAs to a RADIUS Server, you must create a RADIUS server profile.

  1. Select Device > Server Profiles , and then select the profile type ( RADIUS or TACACS+ ).
  2. Add a new RADIUS or TACACS+ server profile.
  3. Enter a Profile Name , such as GP-User-Auth .
  4. If this profile is for a firewall with multiple virtual systems capability, select a virtual system or Shared as the Location where the profile is available.
  5. Configure the following Server Settings :
    • Timeout (sec) —The number of seconds before a server connection request times out due to lack of response from the authentication server.
    • Authentication Protocol —The protocol used to connect to the authentication server. Options include CHAP , PAP , PEAP-MSCHAPv2 , PEAP with GTC , or EAP-TTLS with PAP .

If you configure PEAP-MSCHAPv2 (Protected Extensible Authentication Protocol Microsoft Challenge Handshake Authentication Protocol version 2) as the authentication protocol, remote users can change their RADIUS or Active Directory (AD) passwords through the GlobalProtect app when their password expires or a RADIUS/AD administrator requires a password change at the next login.

    • ( RADIUS Only ) Retries —The number of times the firewall attempts to connect to the authentication server before dropping the request.
    • ( TACACS+ only ) Use single connection for all authentication —Option that allows all TACACS+ authentication requests to occur over a single TCP session rather than separate sessions for each request.
  1. Click Add in the Servers area, and then enter the following information for connecting to the authentication server:
    • Name
    • RADIUS or TACACS+ Server (IP address or FQDN of the server)
    • Secret (shared secret that enables the authentication service to authenticate the firewall)
    • Port
  2. Click OK to save the server profile.
  1. (Optional) Create an authentication profile.

The authentication profile specifies the server profile that the portal or gateways use when they authenticate users. On a portal or gateway, you can assign one or more authentication profiles in one or more client authentication profiles. For information on how an authentication profile within a client authentication profile supports granular user authentication, see Configure a GlobalProtect Gateway and Set Up Access to the GlobalProtect Portal.

To enable users to connect and change their own expired passwords without administrative intervention, consider using Remote Access VPN with Pre-Logon.

  1. Select Device > Authentication Profile , and then Add a new profile.
  2. Enter a Name for the profile.
  3. Select the Authentication Type ( RADIUS or TACACS+ ).
  4. Select the RADIUS or TACACS+ authentication Server Profile that you created in step 1 from the drop-down.
  5. ( RADIUS only ) Enable Retrieve user group from RADIUS if you want to include this information in the authentication profile.
  6. Specify the User Domain and Username Modifier . The endpoint combines these values to modify the domain/username string that a user enters during login. The endpoint uses the modified string for authentication and the User Domain value for User-ID group mapping. Modifying user inputs is useful when the authentication service requires domain/username strings in a particular format and but you do not want to rely on users entering the domain correctly. You can select from the following options:
    • To send the unmodified user input, leave the User Domain blank (the default) and set the Username Modifier to the variable %USERINPUT% (the default).
    • To prepend a domain to the user input, enter a User Domain and set the Username Modifier to %USERDOMAIN%\%USERINPUT% .
    • To append a domain to the user input, enter a User Domain and set the Username Modifier to %USERINPUT%@%USERDOMAIN% .
  7. On the Advanced tab, Add an Allow List to select the users and user groups that are allowed to authenticate with this profile. The all option allows every user to authenticate with this profile. By default, the list has no entries, which means no users can authenticate.
  8. Click OK .
  1. Commit the configuration.

Set Up Client Certificate Authentication

With the optional client certificate authentication, the user presents a client certificate along with a connection request to the GlobalProtect portal or gateway. The portal or gateway can use either a shared or unique client certificate to validate that the user or endpoint belongs to your organization.

If you configure the portal or gateway to authenticate users through client certificate authentication, users will not have the option to Sign Out of the GlobalProtect app if they authenticate successfully using only a client certificate.

Starting from GlobalProtect for Governments app 6.0.12 version (FIPS-CC mode), certificate-based authentication is supported on iOS endpoints.

For an agent configuration profile that specifies client certificates, each user receives a client certificate. The mechanism for providing the certificates determines whether a certificate is unique to each user or the same for all users under that agent configuration:

Use an optional certificate profile to verify the client certificate that the endpoint presents with a connection request. The certificate profile specifies the contents of the username and user domain fields; lists CA certificates; criteria for blocking a session; and offers ways to determine the revocation status of CA certificates.

Because the certificate is part of the authentication of the endpoint or user for a new session, you must pre-deploy certificates used in certificate profiles to the endpoints before the users’ initial portal login.

The certificate profile specifies which certificate field contains the username. If the certificate profile specifies Subject in the Username Field, the certificate presented by the endpoint must contain a common-name for the endpoint to connect. If the certificate profile specifies a Subject-Alt with an Email or Principal Name as the Username Field, the certificate from the endpoint must contain the corresponding fields, which will be used as the username when the GlobalProtect app authenticates to the portal or gateway.

GlobalProtect also supports authentication by common access cards (CACs) and smart cards, which rely on a certificate profile. With these cards, the certificate profile must contain the root CA certificate that issued the certificate to the smart card or CAC.

If you specify client certificate authentication, you should not configure a client certificate in the portal configuration because the endpoint provides it when the user connects.

For an example of how to configure client certificate authentication, see Remote Access VPN (Certificate Profile).

The methods for deploying client certificates depend on the security requirements for your organization:

Deploy Shared Client Certificates for Authentication

To confirm that an endpoint user belongs to your organization, you can use the same client certificate for all endpoints or generate separate certificates to deploy with a particular agent configuration. Use this workflow to issue self-signed client certificates and deploy them from the portal.

If you include a client certificate in the portal configuration for mobile devices, you can only use client certificate authentication in the gateway configuration because the client certificate passphrase is saved in the portal configuration. Additionally, the client certificate can only be used after the certificate is retrieved from the portal configuration.

  1. Generate a certificate to deploy to multiple GlobalProtect endpoints.
  1. Create the root CA certificate for issuing self-signed certificates for the GlobalProtect components.
  2. Select Device > Certificate Management > Certificates > Device Certificates , and then Generate a new certificate.
  3. Set the Certificate Type to Local (default).
  4. Enter a Certificate Name . This name cannot contain spaces.
  5. Enter a Common Name to identify this certificate as an app certificate (for example, GP_Windows_App ). Because this certificate will be deployed to all apps using the same agent configuration, it does not need to uniquely identify a specific user or endpoint.
  6. In the Signed By field, select your root CA.
  7. Select an OCSP Responder to verify the revocation status of certificates.
  8. Click OK to generate the certificate.
  1. Set Up Two-Factor Authentication.

Configure authentication settings in a GlobalProtect portal agent configuration to enable the portal to transparently deploy the client certificate, which is Local to the firewall, to apps that receive the configuration.

Deploy Machine Certificates for Authentication

To confirm that the endpoint belongs to your organization, use your own public-key infrastructure (PKI) to issue and distribute machine certificates to each endpoint (recommended) or generate a self-signed machine certificate for export. With the pre-logon connect methods, a machine certificate is required and must be installed on the endpoint before GlobalProtect components grant access.

To confirm that the endpoint belongs to your organization, you must also configure an authentication profile to authenticate the user (see Two-Factor Authentication).

Use the following workflow to create the client certificate and manually deploy it to an endpoint. For more information, see GlobalProtect User Authentication. For an example configuration, see Remote Access VPN (Certificate Profile).

  1. Issue client certificates to GlobalProtect apps and endpoints.

This enables the GlobalProtect portal and gateways to validate that the endpoint belongs to your organization.

  1. Create the root CA certificate for issuing self-signed certificates for the GlobalProtect components.
  2. Select Device > Certificate Management > Certificates > Device Certificates , and then click Generate .
  3. Enter a Certificate Name . The certificate name cannot contain any spaces.
  4. Enter the IP address or FQDN that will appear on the certificate in the Common Name field.
  5. Select your root CA from the Signed By drop-down.
  6. Select an OCSP Responder to verify the revocation status of certificates.
  7. Configure the Cryptographic Settings for the certificate, including the encryption Algorithm , key length ( Number of Bits ), Digest algorithm (use sha1, sha256, sha384, or sha512), and Expiration (in days) for the certificate.

If the firewall is in FIPS-CC mode and the key generation algorithm is RSA, the RSA keys must be 2,048 bits or 3072 bits.

  1. In the Certificate Attributes area, Add and define the attributes that uniquely identify the endpoints as belonging to your organization. Keep in mind that if you add a Host Name attribute (which populates the SAN field of the certificate), it must be the same as the Common Name value you defined.
  2. Click OK to generate the certificate.
  1. Install certificates in the personal certificate store on the endpoints.

If you are using unique user certificates or machine certificates, you must install each certificate in the personal certificate store on the endpoint prior to the first portal or gateway connection.

  1. Windows —Install machine certificates to the Local Computer certificate store and install user certificates to the Current User certificate store.
  2. macOS —Install machine certificates in the System Keychain and install user certificates in the Keychain on macOS.
  3. Linux —If you use the Cloud Identity Engine for authentication, import the client certificate into any browsers that access web pages that require authentication.

For example, to install a certificate on a Windows system using the Microsoft Management Console:

  1. From the command prompt, enter mmc to launch the Microsoft Management Console.
  2. Select File > Add/Remove Snap-in .
  3. From the list of Available snap-ins , select Certificates , and then Add and select one of the following certificate snap-ins, depending on what type of certificate you are importing:
    • Computer account —Select this option if you are importing a machine certificate.
    • My user account —Select this option if you are importing a user certificate.
Add or Remove Snap-ins window Figure: Microsoft Management Console Add or Remove Snap-ins window
  1. From the Console Root , expand Certificates , and then select Personal .
  2. In the Actions column, select Personal > More Actions > All Tasks > Import and follow the steps in the Certificate Import Wizard to import the PKCS file you received from the CA.
Certificate Import Wizard Figure: Certificate Import Wizard
  1. Browse to and select the .p12 certificate file to import (select Personal Information Exchange as the file type to browse for) and enter the Password that you used to encrypt the private key. Set the Certificate store to Personal .
  1. Verify that the certificate has been added to the personal certificate store.

Navigate to the personal certificate store from the Console Root ( Certificates > Personal > Certificates ):

Personal Certificate Store Figure: Personal Certificate Store view in Microsoft Management Console
  1. Import the root CA certificate used to issue the client certificates onto the firewall.

This step is required only if an external CA issued the client certificates, such as a public CA or an enterprise PKI CA. If you are using self-signed certificates, the root CA is already trusted by the portal and gateways.

  1. Download the root CA certificate used to issue the client certificates (Base64 format).
  2. Import the root CA certificate from the CA that generated the client certificates onto the firewall:
  1. Select Device > Certificate Management > Certificates > Device Certificates and click Import
  2. Set the Certificate Type to Local (default).
  3. Enter a Certificate Name that identifies the certificate as your client CA certificate.
  4. Browse to and select the Certificate File you downloaded from the CA.
  5. Set the File Format to Base64 Encoded Certificate (PEM) , and then click OK .
  6. On the Device Certificates tab, select the certificate you just imported to open the Certificate Information.
  7. Select Trusted Root CA and then click OK .
  1. Create a client certificate profile.

When you configure two-factor authentication to use client certificates, the external authentication service uses the username value to authenticate the user, if specified, in the client certificate. This ensures that the user who is logging is in is actually the user to whom the certificate was issued.

  1. Select Device > Certificates > Certificate Management > Certificate Profile to Add a new certificate profile.
  2. Enter a profile Name .
  3. Select one of the following Username Field values:
    • If you intend for the client certificate to authenticate individual users, select the certificate field that identifies the user.
    • If you are deploying the client certificate from the portal, select None .
    • If you are setting up a certificate profile for use with a pre-logon connect method, select None .
  4. Add the CA Certificates that you want to assign to the profile, and then configure the following settings:
  1. Select the CA certificate , either a trusted root CA certificate or the CA certificate from a SCEP server. If necessary, import the certificate.
  2. ( Optional ) Enter the Default OCSP URL .
  3. ( Optional ) Select a certificate for OCSP Verify Certificate .
  4. ( Optional ) Enter the Template Name for the template that was used to sign the certificate.
  1. ( Optional ) Select the following options to specify when to block the user’s requested session:
    • Status of certificate is unknown.
    • GlobalProtect component does not retrieve certificate status within the number of seconds in Certificate Status Timeout .
    • Serial number attribute in the subject of a client certificate does not match the host ID that the GlobalProtect app reports for the endpoint.
    • Certificates have expired.
  2. Click OK .
  1. Save the configuration.

Commit the changes.

Deploy User-Specific Client Certificates for Authentication

To authenticate individual users, you must issue a unique client certificate to each GlobalProtect user and deploy the client certificate to the endpoints prior to enabling GlobalProtect. To automate the generation and deployment of user-specific client certificates, you can configure your GlobalProtect portal to act as a Simple Certificate Enrollment Protocol (SCEP) client to a SCEP server in your enterprise PKI.

If you include a client certificate in the portal configuration for mobile devices, you can only use client certificate authentication in the gateway configuration because the client certificate passphrase is saved in the portal configuration. Additionally, the client certificate can only be used after the certificate is retrieved from the portal configuration.

SCEP operation is dynamic in that the enterprise PKI generates a user-specific certificate when the portal requests it and sends the certificate to the portal. The portal then deploys the certificate to the app transparently. When a user requests access, the app can then present the client certificate to authenticate with the portal or gateway.

The GlobalProtect portal or gateway uses identifying information about the endpoint and the user to evaluate whether to permit access to the user. GlobalProtect blocks access if the host ID is on a device block list or if the session matches any blocking options specified in a certificate profile.

If authentication fails due to an invalid SCEP-based client certificate, the GlobalProtect app tries to authenticate with the portal (based on the settings in the authentication profile) and retrieve the certificate. If the app cannot retrieve the certificate from the portal, the endpoint is not able to connect.

  1. Create a SCEP profile.
  1. Select Device > Certificate Management > SCEP , and then Add a new SCEP profile.
  2. Enter a Name to identify the SCEP profile.
  3. If this profile is for a firewall with multiple virtual systems capability, select a virtual system or Shared as the Location where the profile is available.
  1. ( Optional ) To make the SCEP-based certificate generation more secure, configure a SCEP challenge-response mechanism between the PKI and portal for each certificate request.

After you configure this mechanism, its operation is invisible, and no further input is necessary.

To comply with the U.S. Federal Information Processing Standard (FIPS), use a Dynamic SCEP Challenge and specify a Server URL that uses HTTPS (see step 7).

Select one of the following SCEP Challenge options:

  1. Specify the connection settings between the SCEP server and the portal to enable the portal to request and receive client certificates.

You can include additional information about the endpoint or user by specifying tokens in the Subject name of the certificate.

In the Subject field of the CSR to the SCEP server, the portal includes the token value as CN and Host-ID as SerialNumber . The host ID varies by endpoint type: GUID (Windows), MAC address of the interface (macOS), Android ID (Android endpoints), UDID (iOS endpoints), or a unique name that GlobalProtect assigns (Chrome).

  1. In the Configuration area, enter the Server URL that the portal uses to reach the SCEP server in the PKI (for example, http://10.200.101.1/certsrv/mscep/ ).
  2. Enter a CA-IDENT Name (up to 255 characters in length) to identify the SCEP server.
  3. Enter the Subject name to use in the certificates generated by the SCEP server. The subject must be a distinguished name in the <attribute>=<value> format and must include a common name (CN) attribute ( CN=<variable> ). The CN supports the following dynamic tokens:
    • $USERNAME —Use this token to enable the portal to request certificates for a specific user. To use this variable, you must also Enable Group Mapping. The username entered by the user must match the name in the user-group mapping table.
    • $EMAILADDRESS —Use this token to request certificates associated with a specific email address. To use this variable, you must also Enable Group Mapping and configure the Mail Attributes in the Mail Domains area of the server profile. If GlobalProtect cannot identify an email address for the user, it generates a unique ID and populates the CN with that value.
    • $HOSTID —To request certificates for the endpoint only, specify the host ID token. When a user attempts to log in to the portal, the endpoint sends identifying information that includes its host ID value.

When the GlobalProtect portal pushes the SCEP settings to the app, the CN portion of the subject name is replaced with the actual value (username, host ID, or email address) of the certificate owner (for example, O=acme,CN=johndoe ).

  1. Select the Subject Alternative Name Type :
    • RFC 822 Name —Enter the email name in a certificate’s subject or Subject Alternative Name extension.
    • DNS Name —Enter the DNS name used to evaluate certificates.
    • Uniform Resource Identifier —Enter the name of the resource from which the app will obtain the certificate.
    • None —Do not specify attributes for the certificate.
  1. ( Optional ) Configure Cryptographic Settings for the certificate.
  1. Select the Number of Bits (key length) for the certificate.

If the firewall is in FIPS-CC mode and the key generation algorithm is RSA. The RSA keys must be 2,048 bits or larger.

  1. Select the Digest for CSR which indicates the digest algorithm for the certificate signing request (CSR): sha1, sha256, sha384, or sha512.
  1. ( Optional ) Configure the permitted uses of the certificate, either for signing or encryption.
  1. To use this certificate for signing, select the Use as digital signature check box. This option enables the endpoint to use the private key in the certificate to validate a digital signature.
  2. To use this certificate for encryption, select the Use for key encipherment check box. This option enables the app to use the private key in the certificate to encrypt data exchanged over the HTTPS connection established with the certificates issued by the SCEP server.
  1. ( Optional ) To ensure that the portal is connecting to the correct SCEP server, enter the CA Certificate Fingerprint . Obtain this fingerprint from the Thumbprint field of the SCEP server interface.
  1. Enter the URL for the SCEP server’s administrative UI (for example, http://<hostname or IP>/CertSrv/mscep_admin/ ).
  2. Copy the thumbprint and enter it in the CA Certificate Fingerprint field.
  1. Enable mutual SSL authentication between the SCEP server and the GlobalProtect portal. This is required to comply with the U.S. Federal Information Processing Standard (FIPS).

FIPS-CC operation is indicated on the firewall login page and its status bar.

Select the SCEP server’s root CA Certificate . Optionally, you can enable mutual SSL authentication between the SCEP server and the GlobalProtect portal by selecting a Client Certificate .

  1. Save and commit the configuration.
  1. Click OK to save the settings.
  2. Commit the configuration.

The portal attempts to request a CA certificate using the settings in the SCEP profile, and then saves it to the firewall hosting the portal. If successful, the CA certificate is shown in Device > Certificate Management > Certificates .

  1. ( Optional ) If the portal fails to obtain the certificate after saving the SCEP profile, you can manually generate a certificate signing request (CSR) from the portal.
  1. Select Device > Certificate Management > Certificates > Device Certificates , and then Generate a new certificate.
  2. Select SCEP as the Certificate Type .
  3. Enter a Certificate Name . This name cannot contain spaces.
  4. Select the SCEP Profile to use to submit a CSR to your enterprise PKI.
  5. Click OK to submit the request and generate the certificate.
  1. Set Up Two-Factor Authentication.

Assign the SCEP profile a GlobalProtect portal agent configuration to enable the portal to transparently request and deploy client certificates to apps that receive the configuration.

Enable Certificate Selection Based on OID

If you deploy multiple certificates to your end user devices for distinct use cases--for example machine certificates, user certificates, and email encryption certificates all issued by the same certificate authority--it can be difficult to distinguish which certificate to use in which use case. To help with this, you can designate a specific object identifier (OID) that you want GlobalProtect to use to identify which certificate to use. This simplifies and improves the certificate selection process when your macOS or Windows endpoints have multiple certificates installed.

An OID is a numeric value that identifies the application or service for which a certificate is used. When the certificate authority (CA) creates the certificate, the CA automatically includes the OID in the Enhanced Key Usage field.

Certificate Enhanced Key Usage field with OIDs Figure: Certificate Details showing Enhanced Key Usage field with OIDs

When you create the certificate, you can specify the OID to identify the certificate’s purpose. By default, GlobalProtect automatically filters the certificates for those that specify a Client Authentication purpose (OID 1.3.6.1.5.5.7.3.2) so it is not necessary to specify the OID associated with Client Authentication. However, if you want to use a different OID to distinguish the certificate you want GlobalProtect to select, you can specify a different certificate usage when you create the certificate and then instruct GlobalProtect to select the certificate with the corresponding OID. Some of the most commonly used OIDs are:

For example, say your endpoints have four client certificates installed, but the one you want your users to select has the OID 1.3.6.1.5.5.7.3.1. Rather than having the GlobalProtect app to present all four client certificates to the user, you can specify the Extended Key Usage OID in the GlobalProtect portal app configuration for the users whose endpoints have multiple client certificates.

Keep in mind that if multiple client certificates on the endpoint have the matching OID, GlobalProtect will prompt the user to select the client certificate from the filtered list.

GlobalProtect uses only the Extended Key Usage OID field of the certificate and does not evaluate any other certificate fields such as Subject Name to determine whether to present the certificates.

Note that the Extended Key Usage OID value is different from the Certificate Template Information OID. For other certificate selection requirements, see How Does the App Know Which Certificate to Supply?

To configure the OID as a requirement for certificate selection:

  1. ( Optional ) Create or edit the client certificate and note the associated OID.
  1. Open the Certificate Templates snap-in.
  2. In the Details pane, create or edit the certificate template you want to modify, and then click Properties.
  3. On the Extensions tab, select Application Policies > Edit .
  4. In the Edit Application Policies Extension dialog box, click Add .
  5. In Add Application Policy, ensure that the application you are creating does not exist, and then click New .
  6. In the New Application Policy dialog box, provide the name for the new application policy (for example GlobalProtect Authentication).
  7. Note the generated object identifier, and then click OK .
  1. Specify the certificate’s object identifier (OID) in the Extended Key Usage OID field as part of the appropriate GlobalProtect portal app configuration.
GlobalProtect App Configuration with Extended Key Usage OID Figure: GlobalProtect Portal App Configuration showing Extended Key Usage OID field

Support for Native Certificate Store for Prisma Access and GlobalProtect App on Linux Endpoints

Where Can I Use This? What Do I Need?
  • Prisma Access
  • GlobalProtect™ Subscription
  • Prisma Access Mobile Users license (for use with Prisma Access)
  • GlobalProtect app 6.2 or later GlobalProtect app versions
  • GlobalProtect endpoints running on Linux versions

The support for native certificate store enables the GlobalProtect app installed on the Linux endpoints to use certificates from the certificate store for:

Previously the GlobalProtect app used the client certificates installed using the GlobalProtect CLI command, which is available only in the /opt/paloaltonetworks/globalprotect/ file directory on Linux endpoints.

To configure GlobalProtect app to use the certificate in the native certificate store, you must:

  1. Place the certificate in the native store location.

For example:

sudo cp xxxxx.cert.pem /etc/ssl/certs
sudo cp xxxxx.key.pem /etc/ssl/private

The following are the cert store locations for various Linux platforms:

The supported formats are:

Root access is required to place the certificate using sudo cp command in the locations as mentioned in Step 1 for various Linux platforms, for example, for Ubuntu:

Linux CLI showing sudo cp command Figure: Linux CLI showing the use of `sudo cp` to place certificate files
  1. Optional Store the key in the /etc/ssl/private folder if the certificate is .pem format.
  2. Connect GlobalProtect, select your client certificate, and proceed with the next steps. End users must enter the passcode to authenticate to the app for the first time. The app will not prompt end users to enter the passcode for the subsequent authentication attempts unless the app is uninstalled or the user is signed out of GlobalProtect from the portal.

If the certificate format used is .pem and when there is more than one certificate matching the criteria, the GlobalProtect app filters the certificates and displays the list of certificates in the Certificate Selection pop-up window. For the Certificate Selection pop-up window to display the certificate in the list, it should;

If the format used is .p12 , the app does not filter the certificates and the Certificate Selection pop-up window displays all the certificates.

Upgrade Scenario:

Set Up Two-Factor Authentication

If you require strong authentication to protect sensitive assets or comply with regulatory requirements, such as PCI, SOX, or HIPAA, configure GlobalProtect to use an authentication service that uses a two-factor authentication scheme. A two-factor authentication scheme requires two things: something the end user knows (such as a PIN or password) and something the end user has (a hardware or software token/OTP, smart card, or certificate).

You can also enable two-factor authentication using a combination of external authentication services, and client and certificate profiles.

Two-factor authentication supports Remote Access VPN with Pre-Logon with GlobalProtect app 5.0 and later releases.

The following topics provide examples on how to set up two-factor authentication on GlobalProtect:

Enable Two-Factor Authentication Using Certificate and Authentication Profiles

The following workflow describes how to configure GlobalProtect to require users to authenticate to both a certificate profile and an authentication profile. The user must successfully authenticate using both methods in order to connect to the portal/gateway. For more details on this configuration, see Remote Access VPN with Two-Factor Authentication.

If the certificate profile specifies a Username Field , from which GlobalProtect can obtain a username, the external authentication service automatically uses that username to authenticate the user to the external authentication service specified in the authentication profile. For example, if the Username Field in the certificate profile is set to Subject , the common-name field value of the certificate is used as the username when the authentication server tries to authenticate the user. If you do not want to force users to authenticate with a username from the certificate, make sure the Username Field in the certificate profile is set to None .

See Remote Access VPN with Two-Factor Authentication for an example configuration.

  1. Create an authentication server profile.

The authentication server profile determines how the firewall connects to an external authentication service and retrieves the authentication credentials for your users.

If you are using LDAP to connect to Active Directory (AD), you must create a separate LDAP server profile for every AD domain.

  1. Select Device > Server Profiles and a profile type ( LDAP , Kerberos , RADIUS , or TACACS+ ).
  2. Add a new server profile.
  3. Enter a Profile Name , such as gp-user-auth .
  4. ( LDAP Only ) Select the LDAP server Type ( active-directory , e-directory , sun , or other ).
  5. Click Add in the Servers or Servers List area (depending on the type of server profile), and then enter the following information for connections to the authentication service:
    • Name of the server
    • IP address of FQDN of the Server
    • Port
  6. ( RADIUS, TACACS+, and LDAP only ) Specify the following settings to enable the firewall to authenticate to the authentication service:
    • RADIUS and TACACS+—Enter the shared Secret when adding the server entry.
    • LDAP—Enter the Bind DN and Password .
  7. ( LDAP only ) If you want the endpoint to use SSL or TLS for a more secure connection with the directory server, enable the option to Require SSL/TLS secured connection (enabled by default). The protocol that the endpoint uses depends on the server Port in the Server list :
    • 389 (default)—TLS (specifically, the endpoint uses the StartTLS operation to upgrade the initial plaintext connection to TLS).
    • 636—SSL.
    • Any other port—The endpoint first attempts to use TLS. If the directory server does not support TLS, the endpoint uses SSL.
  8. ( LDAP only ) For additional security, enable the option to Verify Server Certificate for SSL sessions so that the endpoint verifies the certificate that the directory server presents for SSL/TLS connections. To enable verification, you also must enable the option to Require SSL/TLS secured connection . In order for verification to succeed, one of the following conditions must be true:
    • The certificate is in the list of device certificates: Device > Certificate Management > Certificates > Device Certificates . Import the certificate into the endpoint if necessary.
    • The certificate signer is in the list of trusted certificate authorities: Device > Certificate Management > Certificates > Default Trusted Certificate Authorities .
  9. Click OK to save the server profile.
  1. Create an authentication profile that identifies the service for authenticating users. You later have the option of assigning the profile on the portal and gateways.
  1. Select Device > Authentication Profile , and then Add a new profile.
  2. Enter a Name for the profile.
  3. Select the Authentication Type .
  4. Select the Server Profile you created in step 1.
  5. ( LDAP Only ) Enter sAMAccountName as the Login Attribute .
  6. Click OK to save the authentication profile.
  1. Create a client certificate profile that the portal uses to authenticate the client certificates that come from user endpoints.

When you configure two-factor authentication to use client certificates, the external authentication service uses the username value to authenticate the user, if specified, in the client certificate. This ensures that the user who is logging is in is actually the user to whom the certificate was issued.

  1. Select Device > Certificates > Certificate Management > Certificate Profile , and then Add a new certificate profile.
  2. Enter a Name for the profile.
  3. Select one of the following Username Field values:
    • If you intend for the client certificate to authenticate individual users, select the certificate field that identifies the user.
    • If you are deploying the client certificate from the portal, select None .
    • If you are setting up a certificate profile for use with a pre-logon connect method, select None .
  4. Add the CA Certificates that you want to assign to the profile, and then configure the following settings:
  1. Select the CA certificate , either a trusted root CA certificate or the CA certificate from a SCEP server. If necessary, import the certificate.
  2. ( Optional ) Enter the Default OCSP URL .
  3. ( Optional ) Select a certificate for OCSP Verify Certificate .
  4. ( Optional ) Enter the Template Name for the template that was used to sign the certificate.
  1. ( Optional ) Select the following options to specify when to block the user’s requested session:
    • Status of certificate is unknown.
    • GlobalProtect component does not retrieve certificate status within the number of seconds in Certificate Status Timeout .
    • Serial number attribute in the subject of a client certificate does not match the host ID that the GlobalProtect app reports for the endpoint.
    • Certificates have expired.
  2. Click OK .
  1. ( Optional ) Issue client certificates to GlobalProtect clients and endpoints.

To deploy client certificates transparently, configure your portal to distribute a shared client certificate to your endpoints or configure the portal to use SCEP to request and deploy unique client certificates for each user.

  1. Use your enterprise PKI or a public CA to issue a client certificate to each GlobalProtect user.
  2. For the pre-logon connect methods, install certificates in the personal certificate store on the endpoint.
  1. Save the GlobalProtect configuration.

Click Commit .

Enable Two-Factor Authentication Using One-Time Passwords (OTPs)

Use this workflow to configure two-factor authentication using one-time passwords (OTPs) on the portal and gateways. When a user requests access, the portal or gateway prompts the user to enter an OTP. The authentication service sends the OTP as a token to the user’s RSA device.

Setting up a two-factor authentication scheme is similar to setting up other types of authentication. The two-factor authentication scheme requires you to configure:

By default, the app supplies the same credentials used to log in to the portal and gateway. In the case of OTP authentication, this behavior causes the authentication to initially fail on the gateway and, because of the delay this causes in prompting the user for a login, the user’s OTP may expire. To prevent this, you must configure the portals and gateways that prompt for the OTP instead of using the same credentials on a per-app configuration basis.

You can also reduce the frequency in which users are prompted for OTPs by configuring an authentication override. This enables the portals and gateways to generate and accept a secure encrypted cookie to authenticate the user for a specified amount of time. The portals and/or gateways do not require a new OTP until the cookie expires, thus reducing the number of times users must provide an OTP.

  1. After you have configured the back-end RADIUS service to generate tokens for the OTPs and ensured users have any necessary devices (such as a hardware token), set up a RADIUS server to interact with the firewall.

For specific instructions, refer to the documentation for your RADIUS server. In most cases, you need to set up an authentication agent and a client configuration on the RADIUS server to enable communication between the firewall and the RADIUS server. You must also define the shared secret to use for encrypting sessions between the firewall and the RADIUS server.

  1. On each firewall that hosts the gateways and/or portal, create a RADIUS server profile. (For a small deployment, one firewall can host the portal and gateways.)
  1. Select Device > Server Profiles > RADIUS .
  2. Add a new profile.
  3. Enter a Profile Name for this RADIUS profile.
  4. In the Servers area, Add a RADIUS instance, and then enter the following:
    • A descriptive Name to identify this RADIUS server.
    • The IP address of the RADIUS Server .
    • The shared Secret for encrypting sessions between the firewall and the RADIUS server.
    • The Port number on which the RADIUS server listens for authentication requests (default 1812).
  5. Click OK to save the profile.
  1. Create an authentication profile.
  1. Select Device > Authentication Profile and Add a new profile.
  2. Enter a Name for the profile. The name cannot contain spaces.
  3. Select RADIUS as the authentication service Type .
  4. Select the Server Profile you created for accessing your RADIUS server.
  5. Enter the User Domain name. The firewall uses this value for matching authenticating users against Allow List entries and for User-ID group mapping.
  6. Select a Username Modifier to modify the username/domain format expected by the RADIUS server.
  7. Click OK to save the authentication profile.
  1. Assign the authentication profile to the GlobalProtect portal and/or gateway.

You can configure multiple client authentication configurations for the portal and gateways. For each client authentication configuration, you can specify the authentication profile to apply to endpoints of a specific OS.

This step describes how to add the authentication profile to the portal or gateway configuration. For additional details on setting up these components, see GlobalProtect Portals and GlobalProtect Gateways.

  1. Select Network > GlobalProtect > Portals or Gateways .
  2. Select an existing portal or gateway configuration, or Add a new one. If you are adding a new portal or gateway, specify its name, location, and network parameters.
  3. On the Authentication tab, select an SSL/TLS service Profile or Add a new profile.
  4. Add a new Client Authentication configuration, and then configure the following settings:
    • The Name of the client authentication configuration.
    • The endpoint OS to which this configuration applies.
    • The Authentication Profile you created in step 3.
    • ( Optional ) A custom Username Label .
    • ( Optional ) A custom Password Label .
    • ( Optional ) A custom Authentication Message .
  5. Click OK to save the configuration.
  1. ( Optional ) Configure the portal or gateway to prompt for a username and password or only a password each time the user logs in. Saved passwords are not supported with two-factor authentication using OTPs because the user must enter a dynamic password each time they log in.

This step describes how to configure the password setting in a portal agent configuration. For additional details, see Customize the GlobalProtect App.

  1. Select Network > GlobalProtect > Portals , and then select an existing portal configuration.
  2. On the GlobalProtect Portal Configuration dialog, select Agent .
  3. Select an existing agent configuration or Add a new one.
  4. On the Authentication tab, set Save User Credentials to Save Username Only or No . This setting enables GlobalProtect to prompt users for dynamic passwords on each component that you select in the following step.
  5. Click OK twice to save the configuration.
  1. Select the GlobalProtect components—portal and types of gateways—that prompt for dynamic passwords, such as OTPs.
  1. Select Network > GlobalProtect > Portals , and then select an existing portal configuration.
  2. On the GlobalProtect Portal Configuration dialog, select Agent .
  3. Select an existing agent configuration or Add a new one.
  4. On the Authentication tab, select the Components that Require Dynamic Passwords (Two-Factor Authentication) . When selected, the portal and/or types of gateways prompt for OTPs.

Do not select the Components that Require Dynamic Passwords (Two-Factor Authentication) option for any components that use SAML authentication.

  1. Click OK twice to save the configuration.
  1. If single sign-on (SSO) is enabled, disable it. Because the agent configuration specifies RADIUS as the authentication service, Kerberos SSO is not supported.

This step describes how to disable SSO. For more details, see Define the GlobalProtect Agent Configurations.

  1. Select Network > GlobalProtect > Portals , and then select an existing portal configuration.
  2. On the GlobalProtect Portal Configuration dialog, select Agent .
  3. Select an existing agent configuration or Add a new one.
  4. On the App tab, set Use Single Sign-on (Windows Only) to No .
  5. Click OK twice to save the configuration.
  1. ( Optional ) To minimize the number of times a user must provide credentials, configure an authentication override.

By default, the portal or gateways authenticate the user with an authentication profile and optional certificate profile. With authentication override, the portal or gateway authenticates the user with an encrypted cookie that it has deployed to the endpoint. While the cookie is valid, the user can log in without entering regular credentials or an OTP. For more information, see Cookie Authentication on the Portal or Gateway.

If you must immediately block access to an endpoint whose cookie has not yet expired (for example, if the endpoint is lost or stolen), you can Identification and Quarantine of Compromised Device by adding the device to a quarantine list.

For more details, see GlobalProtect Portals and GlobalProtect Gateways.

  1. Select Network > GlobalProtect > Portals or Gateways .
  2. Select an existing portal or gateway configuration, or Add a new one.
  3. Depending on whether you are configuring a portal or gateway, select one of the following:
    • GlobalProtect Portal Configuration —On the GlobalProtect Portal Configuration dialog, select Agent > <agent-config> > Authentication .
    • GlobalProtect Gateway Configuration —On the GlobalProtect Gateway Configuration dialog, select Agent > Client Settings > <client-setting> > Authentication Override .
  4. Configure the following Authentication Override settings:
    • Name of the authentication override.
    • Generate cookie for authentication override —Enables the portal or gateway to generate encrypted, endpoint-specific cookies. After users successfully authenticate, the portal or gateway issue the authentication cookie to the endpoint.

The authentication cookie includes the following fields:

      • user —Username that is used to authenticate the user.
      • domain —Domain name of the user.
      • os —Application name that is used on the device.
      • hostID —Unique ID that is assigned by GlobalProtect to identify the host.
      • gen time —Date and time that the authentication cookie was generated.
      • ip —IP address of the device that is used to successfully authenticate to GlobalProtect and to obtain the cookie.
    • Accept cookie for authentication override —Instructs the portal or gateway to authenticate the user through a valid, encrypted cookie. When the endpoint presents a valid cookie, the portal or gateway verifies that the cookie was encrypted by the portal or gateway, decrypts the cookie, and then authenticates the user.

The GlobalProtect app must know the username of the connecting user in order to match and retrieve the associated authentication cookies from the user’s endpoint. After the app retrieves the cookies, it sends them to the portal or gateway for user authentication.

( Windows only ) If you set the Use Single Sign-On option to Yes (SSO is enabled) in the portal agent configuration ( Network > GlobalProtect > Portals > <portal-config> > Agent > <agent-config> > .App ), the GlobalProtect app uses the Windows username to retrieve the local authentication cookie for the user. If you set the Use Single Sign-On option to No (SSO is disabled), you must enable the GlobalProtect app to Save User Credentials in order for the app to retrieve the authentication cookie for the user. Set the Save User Credentials option to Yes to save both the username and password or Save Username Only to save only the username.

( macOS only ) Because macOS endpoints do not support single sign-on, you must enable the GlobalProtect app to Save User Credentials in order for the app to retrieve the authentication cookie for the user. Set the Save User Credentials option to Yes to save both the username and password or Save Username Only to save only the username.

    • Cookie Lifetime —Specifies the hours, days, or weeks that the cookie is valid. Typical lifetime is 24 hours for gateways—which protect sensitive information—or 15 days for the portal. The range for hours is 1–72; for weeks, 1–52; and for days, 1–365. After the cookie expires on either the portal or gateway (whichever occurs first), the portal or gateway prompts the user to authenticate, and subsequently encrypts a new cookie to send to the endpoint.

If you have set the Authentication Override Cookie Lifetime value higher than the Tunnel Login Lifetime , review the tables below.

PAN-OS Version Cookie Lifetime Value
PAN-OS 10.1 On PAN-OS 10.1.x versions, the Authentication Override Cookie Lifetime cannot exceed the Tunnel Login Lifetime value. Even if you set the authentication override cookie lifetime to be higher, it will remain valid only for the duration of the tunnel login lifetime.
PAN-OS 10.2 On PAN-OS versions 10.2 through 10.2.13, the Authentication Override Cookie Lifetime can exceed the Tunnel Login Lifetime value. On PAN-OS versions 10.2.14 and later 10.2.x versions, the Authentication Override Cookie Lifetime cannot exceed the Tunnel Login Lifetime value. Even if you set the authentication override cookie lifetime to be higher, it will remain valid only for the duration of the tunnel login lifetime.
PAN-OS 11.0 On PAN-OS versions 11.0 through 11.0.6, the Authentication Override Cookie Lifetime can exceed the Tunnel Login Lifetime value. On PAN-OS versions 11.0.7 and later 11.0.x versions, the Authentication Override Cookie Lifetime cannot exceed the Tunnel Login Lifetime value. Even if you set the authentication override cookie lifetime to be higher, it will remain valid only for the duration of the tunnel login lifetime.
PAN-OS 11.1 On PAN-OS 11.1.x versions, the Authentication Override Cookie Lifetime cannot exceed the Tunnel Login Lifetime value. Even if you set the authentication override cookie lifetime to be higher, it will remain valid only for the duration of the tunnel login lifetime.
    • Certificate to Encrypt/Decrypt Cookie —Specifies the RSA certificate to use to encrypt and decrypt the cookie. You must use the same certificate on the portal and gateways.

As a best practice, configure the RSA certificate to use the strongest digest algorithm that your network supports.

The portal and gateways use the RSA encrypt padding scheme PKCS#1 V1.5 to generate the cookie (using the public key of the certificate) and decrypt the cookie (using the private key of the certificate).

  1. Click OK twice to save the configuration.
  1. Commit the configuration.
  2. Verify the configuration.

From an endpoint running the GlobalProtect app, try to connect to the gateway or portal on which you enabled OTP authentication. You should see prompts similar to the following:

OTP Pop-Up Prompt

OTP Pop-up Prompt Figure: GlobalProtect App OTP Pop-up Prompt

OTP Prompt on the GlobalProtect Status Panel

OTP Prompt on Status Panel Figure: GlobalProtect App Status Panel showing OTP Prompt

Enable Two-Factor Authentication Using Smart Cards

If you want to enable your end users to authenticate using a smart card or common access card (CAC), you must import the Root CA certificate that issued the certificates contained on the CAC or smart cards onto the portal and gateway. You can then create a certificate profile that includes that Root CA and apply it to your portal and/or gateway configurations to enable use of the smart card in the authentication process.

Two-factor authentication using smart cards is supported on macOS and Windows endpoints.

  1. Set up your smart card infrastructure.

This procedure assumes that you have deployed smart cards and smart card readers to your end users.

For specific instructions, refer to the documentation for the authentication provider software.

In most cases, the smart card infrastructure setup involves the generating of certificates for end users and participating servers, which are the GlobalProtect portal and gateway(s) in this use case.

  1. Import the Root CA certificate that issued the client certificates contained on the end user smart cards.

Make sure the certificate is accessible from your management system, and then complete the following steps:

  1. Select Device > Certificate Management > Certificates > Device Certificates , and then Import a certificate.
  2. Enter a Certificate Name .
  3. Enter the path and name of the Certificate File received from the CA, or Browse to locate the file.
  4. Select Base64 Encoded Certificate (PEM) from the File Format drop-down, and then click OK to import the certificate.
  1. Create the certificate profile on each portal/gateway on which you plan to use CAC or smart card authentication.

For details on other certificate profile fields, such as whether to use CRL or OCSP, refer to the online help.

  1. Select Device > Certificate Management > Certificate Profile .
  2. Select an existing certificate profile or Add a new one.
  3. Enter a Name for the certificate profile.
  4. Select the certificate Username Field that PAN-OS uses to match the IP address for User-ID—either Subject to use a common name, Subject Alt: Email to use an email address, or Subject Alt: Principal Name to use the Principal Name.
  5. In the CA Certificates area, Add the trusted root CA certificate you imported in step 2 to the certificate profile. When prompted, select the CA Certificate , and then click OK .
  6. Click OK to save the certificate profile.
  1. Assign the certificate profile to the portal or gateway. This step describes how to add the certificate profile to the portal or gateway configuration. For details on setting up these components, see GlobalProtect Portals and GlobalProtect Gateways.
  1. Select Network > GlobalProtect > Portals or Gateways
  2. Select an existing portal or gateway configuration or Add a new one.
  3. On the GlobalProtect Gateway Configuration dialog, select Authentication .
  4. Select the Certificate Profile you just created.
  5. Click OK to save the configuration.
  1. Commit the configuration.
  2. Verify the configuration.

From an endpoint running the GlobalProtect app, try to connect to the gateway or portal on which you set up smart card-enabled authentication. When prompted, insert your smart card and verify that you can successfully authenticate to GlobalProtect.

Enhancements for Authentication Using Smart Cards - Removal of Multiple PIN Prompts

Where Can I Use This? What Do I Need?
  • GlobalProtect Subscription License
  • GlobalProtect app version 6.3.0 or later
  • GlobalProtect app running on Windows endpoints

When Connect Before Logon (CBL) is configured for the GlobalProtect app, you can now use the app with smart card and ActivClient software without entering the smart card PIN multiple times.

Previously, when ActivClient software was installed on the devices and Connect Before Logon was configured for the GlobalProtect app, end-users were prompted to enter the smart card PIN multiple times while trying to connect using the CBL method.

This new enhancement removes the multiple smart card PIN prompts received by the end-users from the Windows identity provider and ActivClient while connecting the GlobalProtect app with smart card along with ActivClient software. The GlobalProtect app now asks for a PIN only once and the PIN prompt is from ActivClient software.

To use this feature, you must set the following prerequisites:

End users have to reenter the smart card PIN in the following scenarios because the ActivClient software clears the PIN cache when the user:

End users do not have to reenter the PIN when the system wakes up from sleep mode or hibernation mode.

Enhancements for Authentication Using Smart Cards - Authentication Fallback

Where Can I Use This? What Do I Need?
  • GlobalProtect Subscription License
  • GlobalProtect app version 6.3.0 or later for Windows
  • GlobalProtect app version 6.3.1 or later for macOS
  • GlobalProtect app running on Windows and macOS endpoints
  • Content Version for Smartcard for macOS: 8890-8951

If you have configured On-demand mode for the GlobalProtect app running on Windows or macOS endpoints with smart card authentication as the authentication method, the app now displays the authentication profile options with or without the PIV smart card.

GlobalProtect App PIV Smart Card Options (Windows) Figure: GlobalProtect App showing PIV Smart Card options on Windows

If Always-On connect method is configured for the GlobalProtect app and authentication profile keys are pre-deployed, the default profile option <smartcard> will be selected. The end user has the option to disconnect the app and change the profile option if required.

If On-Demand connect method is configured for the GlobalProtect app and authentication profile keys are pre-deployed, the end user can choose either <smartcard> or <no smartcard> option from the app user interface ( Portals drop-down).

If you have configured Connect Before Logon - On-demand mode for the GlobalProtect app with smart card authentication as the authentication method, the app now displays the authentication profile options with or without the PIV smart card.

For the GlobalProtect app to display the authentication profile options with or without the PIV smart card, you must:

  1. Ensure that Connect Before Logon (CBL) is configured with On-demand mode for the GlobalProtect app.
  2. Select the Allow Authentication with User Credentials OR Client Certificate option while configuring the GlobalProtect gateway and portal. This option defines whether users can authenticate to the portal or gateway using credentials and/or client certificates.
  3. In the Windows Registry, define the pre-deployment settings for the app to display the authentication profile options with <smartcard> and <no smartcard> .
  1. Launch the Command Prompt and enter regedit to open the Windows Registry.
  2. In the Windows Registry, go to: HKEY_LOCAL_MACHINE\SOFTWARE\Palo Alto Networks\GlobalProtect\Settings .
  3. Click Edit and then select New > String Value .
  4. When prompted, specify the Name of the new registry value as PIV-profile .
  5. Right-click the new registry value and Modify it.
  6. Set the Value Data to yes
  7. Click OK .

To pre-deploy the setting from Windows Installer ( Msiexec ) use the following syntax:

msiexec.exe / globalprotect64.msi /i PIVPROFILE=yes

Customize the Windows Registry Keys for Profile Options

Starting with GlobalProtect version 6.3.1, you can pre-deploy the customized registry key values for the profile options; <PIV> and <NO PIV> .

Enhancements for Authentication Using Smart Cards on macOS Endpoints

Where Can I Use This? What Do I Need?
  • GlobalProtect Subscription License
  • GlobalProtect app version 6.3.1 or later
  • Content Version for Smartcard for macOS: 8890-8951

If you have configured On-demand mode for the GlobalProtect app running on macOS endpoints with smart card authentication as the authentication method, the app now displays the authentication profile options with or without the PIV smart card.

GlobalProtect App PIV Smart Card Options (macOS) Figure: GlobalProtect App showing PIV Smart Card options on macOS

If Always-On connect method is configured for the GlobalProtect app and authentication profile keys are pre-deployed, the default profile option <smartcard> will be selected. The end user has the option to disconnect the app and change the profile option if required.

If On-Demand connect method is configured for the GlobalProtect app and authentication profile keys are pre-deployed, the end user can choose either <smartcard> or <no smartcard> option from the app user interface ( Portals drop-down).

For the GlobalProtect app to display the authentication profile options with or without the Smart Card on macOS endpoints, you must:

  1. Ensure that the connect method is configured with On-demand mode for the GlobalProtect app.
  2. Select the Allow Authentication with User Credentials OR Client Certificate option while configuring the GlobalProtect gateway and portal. This option defines whether users can authenticate to the portal or gateway using credentials and/or client certificates.
  3. In the macOS GlobalProtect plist file, define the pre-deployment settings for the app to display the authentication profile options with <smartcard> and <nO smartcard> .
  1. Open the GlobalProtect plist file and locate the GlobalProtect customization settings.
    • Launch a plist editor, such as Xcode.
    • In the plist editor, open the following plist file: /Library/Preferences/ com.paloaltonetworks.GlobalProtect.settings.plist .
    • Locate the GlobalProtect Settings dictionary: /Palo Alto Networks/ GlobalProtect/Settings . If the Settings dictionary does not exist, create it. You can add each key to the Settings dictionary as a string.
  2. In the Settings dictionary, add the following key-value pair to enable the authentication PIV profile with or without PIV smartcard:
<key>PIV-profile</key>
<string>yes</string>
macOS Plist showing PIV-profile key Figure: macOS Plist editor showing the PIV-profile key-value pair

To pre-deploy the customized keys, use:

Enable Two-Factor Authentication Using a Software Token Application

If your organization uses a software token (soft token) application, such as RSA SecurID, to implement two-factor authentication, users are required to first open their software token app and enter their PIN to obtain a passcode, then enter the passcode in their GlobalProtect app in the Password field. This two-step process complicates the login process.

To simplify the login process and improve the users’ experience, GlobalProtect offers seamless soft-token authentication. The user enters the RSA PIN in the GlobalProtect Password field, and GlobalProtect retrieves the passcode from RSA and proceeds with the connection without the user taking the extra step of opening the RSA application.

This feature is supported for all three RSA modes: PinPad Style (PIN integrated with token code), Fob Style (PIN followed by token code) and Pinless mode. For PinPad and Fob Style, the user enters the PIN in the Password field and GlobalProtect retrieves the passcode. In Pinless mode, the Password field is grayed out and users enter their username.

This feature is supported for Windows devices starting with GlobalProtect™ app 5.1.

  1. Change the registry keys on the client Windows devices to enable seamless soft-token authentication.

You must change the Windows registry on the clients’ Windows devices before you can enable seamless soft-token authentication. GlobalProtect retrieves this registry entry only once, when the GlobalProtect app initializes.

  1. Open the Windows Registry Editor and select HKEY_LOCAL_MACHINE\SOFTWARE\Palo Alto Networks\GlobalProtect\Settings .
  2. Change the auth-api value to yes .

Because auth-api is set as yes in the client machine, you should configure the portal and gateways with RSA-based authentication. No other authentication profile is supported because GlobalProtect will attempt to retrieve the passcode.

Because the portal and gateway use RSA Authentication, we recommend that you enable cookie-based authentication on gateways. The token that is retrieved for the portal may still be active when GlobalProtect tries to get passcode for the gateway, and authentication may fail because the passcode was already used. Therefore, we suggest that you generate an Authentication Override cookie on the portal and Accept the cookie on the gateway.

Windows Registry Editor showing auth-api setting Figure: Windows Registry Editor showing the auth-api setting
  1. Configure the portal and gateway with RSA-based authentication.
  2. Enable cookie-based authentication on the GlobalProtect portal.

Specifying GlobalProtect to override an existing authentication allows GlobalProtect to overwrite an existing passcode with a newly-created passcode.

  1. Select Network > GlobalProtect > Portals > <portal-config> ; then select the Agent tab.
  2. Add an Agent config or select an existing one.
  3. Select Generate cookie for authentication override .

The authentication cookie includes the following fields:

    • user —Username that is used to authenticate the user.
    • domain —Domain name of the user.
    • os —Application name that is used on the device.
    • hostID —Unique ID that is assigned by GlobalProtect to identify the host.
    • gen time —Date and time that the authentication cookie was generated.
    • ip —IP address of the device that is used to successfully authenticate to GlobalProtect and to obtain the cookie.
Portal Authentication Override Configuration Figure: GlobalProtect Portal Authentication Override Configuration
  1. Enable the GlobalProtect gateway to accept cookies for authentication overrides.
  1. Select Network > GlobalProtect > Gateways > <gateway> and select the Agent tab.
  2. Select Client Settings , then select the GlobalProtect client config or add a new one.
  3. Select Authentication Override ; then, select Accept cookie for authentication override .

The authentication cookie includes the following fields:

    • user —Username that is used to authenticate the user.
    • domain —Domain name of the user.
    • os —Application name that is used on the device.
    • hostID —Unique ID that is assigned by GlobalProtect to identify the host.
    • gen time —Date and time that the authentication cookie was generated.
    • ip —IP address of the device that is used to successfully authenticate to GlobalProtect and to obtain the cookie.
Gateway Authentication Override Configuration Figure: GlobalProtect Gateway Authentication Override Configuration
  1. Select Network > GlobalProtect > Portals > <portal-config> ; then select the Authentication tab.
  2. Add a new client authentication profile or select an existing one; then, select Automatically retrieve passcode from SoftToken application .
Automatic Passcode Retrieval Setting Figure: Client Authentication Configuration showing the option for automatic passcode retrieval

Set Up Authentication for strongSwan Ubuntu and CentOS Endpoints

To extend GlobalProtect access to strongSwan Ubuntu and CentOS endpoints, set up authentication for these endpoints.

To view the minimum GlobalProtect release version that supports strongSwan on Ubuntu Linux and CentOS, see What OS Versions are Supported with GlobalProtect?.

To connect to the GlobalProtect gateway, the user must successfully authenticate.

The following workflows show examples of how to enable authentication for strongSwan endpoints. For complete information about strongSwan, see the strongSwan wiki .

Enable Certificate Authentication for strongSwan Endpoints

The following workflow shows how to enable authentication for strongSwan clients using a certificate profile.

  1. Configure an IPsec tunnel for the GlobalProtect gateway for communicating with a strongSwan client.

Extended authentication (X-Auth) is not supported for Prisma Access deployments.

  1. Select Network > GlobalProtect > Gateways .
  2. Select an existing gateway or Add a new one.
  3. On the Authentication tab of the GlobalProtect Gateway Configuration dialog, select the Certificate Profile that you want to use for authentication.
  4. Select Agent > Tunnel Settings to enable Tunnel Mode and specify the following settings to set up the tunnel:
    • Select the check box to Enable X-Auth Support .
    • If a Group Name and Group Password are already configured, remove them.
    • Click OK to save the settings.
  1. Verify that the default connection settings in the conn %default section of the IPsec tunnel configuration file ( ipsec.conf ) are correctly defined for the strongSwan client.

The ipsec.conf file is usually found in the /etc folder.

The configurations in this procedure are tested and verified for the following releases:

The configurations in this procedure can be used for reference if you are using a different version of strongSwan. Refer to the strongSwan wiki for more information.

Modify the following settings in the conn %default section of the ipsec.conf file to these recommended settings.

ikelifetime=20m
reauth=yes
rekey=yes
keylife=10m
rekeymargin=3m
rekeyfuzz=0%
keyingtries=1
type=tunnel
  1. Modify the strongSwan client’s IPsec configuration file ( ipsec.conf ) and the IPsec password file ( ipsec.secrets ) to use recommended settings.

The ipsec.secrets file is usually found in the /etc folder.

Use the strongSwan client username as the certificate’s common name.

Modify the following items in the ipsec.conf file to these recommended settings.

conn <connection name>
keyexchange=ikev1
authby=rsasig
ike=aes-sha1-modp1024,aes256
left=<strongSwan/Linux-client-IP-address>
leftcert=<client certificate with the strongSwan client username used as the certificate’s common name>
leftsourceip=%config
leftauth2=xauth
right=<GlobalProtect-Gateway-IP-address>
rightid=“CN=<Subject-name-of-gateway-certificate>”
rightsubnet=0.0.0.0/0
auto=add

Modify the following items in the ipsec.conf file to these recommended settings.

:RSA
<private key file> “<passphrase if used>”
  1. Start strongSwan IPsec services and connect to the IPsec tunnel that you want the strongSwan client to use when authenticating to the GlobalProtect gateway.

Use the config <name> variable to name the tunnel configuration.

ipsec up <name>
strongswan up <name>
  1. Verify that the tunnel is set up correctly and the VPN connection is established to both the strongSwan client and the GlobalProtect gateway.
  1. Verify the detailed status information on a specific connection (by naming the connection) or verify the status information for all connections from the strongSwan client:
    • Ubuntu:
ipsec statusall [<connection name>]
    • CentOS:
strongswan statusall [<connection name>]
  1. Select Network > GlobalProtect > Gateways . In the Info column, select Remote Users for the gateway configured for the connection to the strongSwan client. The strongSwan client should be listed under Current Users .

Enable X-Auth Support for strongSwan Endpoints

The following workflow shows how to enable authentication for strongSwan clients using an authentication profile. The authentication profile specifies which server profile to use when authenticating strongSwan clients.

  1. Set up the IPsec tunnel that the GlobalProtect gateway will use for communicating with a strongSwan client.

Extended authentication (X-Auth) is not supported for Prisma Access deployments.

  1. Select Network > GlobalProtect > Gateways .
  2. Select an existing gateway or Add a new one.
  3. On the Authentication tab of the GlobalProtect Gateway Configuration dialog, select the Authentication Profile you want to use.
  4. Select Agent > Tunnel Settings to enable Tunnel Mode and specify the following settings to set up the tunnel:
    • Select the check box to Enable X-Auth Support .
    • Enter a Group Name and Group Password if they are not yet configured.
    • Click OK to save these tunnel settings.
  1. Verify that the default connection settings in the conn %default section of the IPsec tunnel configuration file ( ipsec.conf ) are correctly defined for the strongSwan client.

The ipsec.conf file usually resides in the /etc folder.

The configurations in this procedure are tested and verified for the following releases:

Use the configurations in this procedure as a reference if you are using a different version of strongSwan. Refer to the strongSwan wiki for more information.

In the conn %default section of the ipsec.conf file, configure the following recommended settings:

ikelifetime=20m
reauth=yes
rekey=yes
keylife=10m
rekeymargin=3m
rekeyfuzz=0%
keyingtries=1
type=tunnel
  1. Modify the strongSwan client’s IPsec configuration file ( ipsec.conf ) and the IPsec password file ( ipsec.secrets ) to use recommended settings.

The ipsec.secrets file is usually found in the /etc folder.

Use the strongSwan client username as the certificate’s common name.

Configure the following recommended settings in the ipsec.conf file:

conn <connection name>
keyexchange=ikev1
ikelifetime=1440m
keylife=60m
aggressive=yes
ike=aes-sha1-modp1024,aes256
esp=aes-sha1
xauth=client
left=<strongSwan/Linux-client-IP-address>
leftid=@#<hex of Group Name configured in the GlobalProtect gateway>
leftsourceip=%modeconfig
leftauth=psk
rightauth=psk
leftauth2=xauth
right=<gateway-IP-address>
rightsubnet=0.0.0.0/0
xauth_identity=<LDAP username>
auto=add

Configure the following recommended settings in the ipsec.secrets file:

: PSK <Group Password configured in the gateway>
<username> : XAUTH “<user password>”
  1. Start strongSwan IPsec services and connect to the IPsec tunnel that you want the strongSwan client to use when authenticating to the GlobalProtect gateway.

Use the config <name> variable to name the tunnel configuration.

ipsec up <name>
strongswan up <name>
  1. Verify that the tunnel is set up correctly and the VPN connection is established to both the strongSwan client and the GlobalProtect gateway.
  1. Verify the detailed status information on a specific connection (by naming the connection) or verify the status information for all connections from the strongSwan client:
    • Ubuntu:
ipsec statusall [<connection name>]
    • CentOS:
strongswan statusall [<connection name>]
  1. Select Network > GlobalProtect > Gateways . In the Info column, select Remote Users for the gateway configured for the connection to the strongSwan client. The strongSwan client should be listed under Current Users .

Enable Two-Factor Authentication for strongSwan Endpoints

With two-factor authentication, the strongSwan client needs to successfully authenticate using both a certificate profile and an authentication profile to connect to the GlobalProtect gateway. The following workflow shows how to enable authentication for strongSwan clients using two-factor authentication.

  1. Set up the IPsec tunnel that the GlobalProtect gateway will use for communicating with a strongSwan client.

Extended authentication (X-Auth) is not supported for Prisma Access deployments.

  1. Select Network > GlobalProtect > Gateways .
  2. Select an existing gateway or Add a new one.
  3. On the Authentication tab of the GlobalProtect Gateway Configuration dialog, select the Certificate Profile and Authentication Profile that you want to use.
  4. Select Agent > Tunnel Settings to enable Tunnel Mode and specify the following settings to set up the tunnel:
    • Select the check box to Enable X-Auth Support .
    • If a Group Name and Group Password are already configured, remove them.
    • Click OK to save these tunnel settings.
  1. Verify that the default connection settings in the conn %default section of the IPsec tunnel configuration file ( ipsec.conf ) are correctly defined for the strongSwan client.

The ipsec.conf file usually resides in the /etc folder.

The configurations in this procedure are tested and verified for the following releases:

Use the configurations in this procedure as a reference if you are using a different version of strongSwan. Refer to the strongSwan wiki for more information.

Configure the following recommended settings in the conn %default section of the ipsec.conf file:

ikelifetime=20m
reauth=yes
rekey=yes
keylife=10m
rekeymargin=3m
rekeyfuzz=0%
keyingtries=1
type=tunnel
  1. Modify the strongSwan client’s IPsec configuration file ( ipsec.conf ) and the IPsec password file ( ipsec.secrets ) to use recommended settings.

The ipsec.secrets file is usually found in the /etc folder.

Use the strongSwan client username as the certificate’s common name.

Configure the following recommended settings in the ipsec.conf file:

conn <connection name>
keyexchange=ikev1
authby=xauthrsasig
ike=aes-sha1-modp1024
esp=aes-sha1
xauth=client
left=<strongSwan/Linux-client-IP-address>
leftcert=<client-certificate-without-password>
leftsourceip=%config
leftauth2=xauth
right=<GlobalProtect-gateway-IP-address>
rightid=%anyCN=<Subject-name-of-gateway-cert>”
rightsubnet=0.0.0.0/0
leftauth2=xauth
xauth_identity=<LDAP username>
auto=add

Configure the following recommended settings in the ipsec.secrets file:

<username> :XAUTH “<user password>”
::RSA <private key file> “<passphrase if used>”
  1. Start strongSwan IPsec services and connect to the IPsec tunnel that you want the strongSwan client to use when authenticating to the GlobalProtect gateway.

Use the config <name> variable to name the tunnel configuration.

ipsec up <name>
strongswan up <name>
  1. Verify that the tunnel is set up correctly and the VPN connection is established to both the strongSwan client and the GlobalProtect gateway.
  1. Verify the detailed status information on a specific connection (by naming the connection) or verify the status information for all connections from the strongSwan client:
    • Ubuntu:
ipsec statusall [<connection name>]
    • CentOS:
strongswan statusall [<connection name>]
  1. Select Network > GlobalProtect > Gateways . In the Info column, select Remote Users for the gateway configured for the connection to the strongSwan client. The strongSwan client should be listed under Current Users .

Set Up Cloud Identity Engine Authentication

Where Can I Use This? What Do I Need?
  • NGFW (managed by Panorama and Strata Cloud Manager)
  • Prisma Access (managed by Panorama and Strata Cloud Manager)
  • GlobalProtect endpoints running on Windows and macOS
  • GlobalProtect app 6.2.6 and later 6.2.x releases for Cloud Identity Engine OIDC authentication
  • GlobalProtect app 6.3.0 and later for Cloud Identity Engine SAML and client certificate authentication
  • GlobalProtect 6.3.1 and later for Cloud Identity Engine multi-authentication SSO hub skip feature
  • PAN-OS 10.2 and later for Cloud Identity Engine client certificate and OIDC authentication
  • PAN-OS 11.2 and later for Cloud Identity Engine SAML authentication with Embedded Web View

Cloud Identity Engine supports the following authentication methods for GlobalProtect:

  1. Set Up an Authentication Profile.
  2. In your environment, navigate to the Add Authentication screen for GlobalProtect.
  3. Select Cloud Identity Engine as the authentication method and the profile you created in step 1.
  4. Follow the on-screen prompts to set up the desired Cloud Identity authentication.

Cloud Identity Engine SAML Authentication with Embedded Web-View

The system browser is the default browser for Cloud Identity Engine SAML Authentication.

Follow the steps below to use the embedded web-view:

  1. Disable the Use Default Browser for SAML Authentication option in the app settings of the portal configuration.
    1. Select Network > GlobalProtect > Portals > <portal-config> > Agent > <agent-config> > App .
    2. In the App Configurations area, set Use Default Browser for SAML Authentication option to No to enable the GlobalProtect app to open the embedded browser for CIE authentication. After you set the option as No and when the GlobalProtect app tries to reconnect, the app prompts the end users to reauthenticate using CIE as the authentication method.
GlobalProtect App Configuration - Embedded Browser Setting Figure: GlobalProtect App Configuration showing the option to disable the default browser for SAML
  1. Set the browser option in the Client Authentication settings of the portal configuration.
    1. Select Network > GlobalProtect > Portals > <portal-config> > Authentication > <client-authentication-config> .
    2. Uncheck the Use default browser option in the Client Authentication window to use the embedded browser for CIE authentication.
Client Authentication - Use Default Browser Figure: Client Authentication settings showing the "Use default browser" checkbox
  1. Click OK .
  2. Commit the configuration.

Cloud Identity Engine Multi-Authentication

You can create an authentication profile that redirects users to the authentication type (either a client certificate or a SAML 2.0-compliant identity provider) you configure for authentication. For more information, see Configure Cloud Identity Engine Authentication on the Firewall or Panorama .

With Cloud Identity Engine multi-authentication, you can enable the end user to bypass the SSO hub page (which prompts the user for their SAML username) on Windows endpoints by pre-deploying the following registry key:

CASSKIPHUBPAGE

using the following syntax:

msiexec.exe /i globalprotect64.msi CASSKIPHUBPAGE=yes

The registry key is displayed in the Windows registry path \HKEY_LOCAL_MACHINE\SOFTWARE\Palo Alto Networks\GlobalProtect\Settings .

This feature is supported on the default browser and embedded web-view for the following actions:

For the GlobalProtect app with Connect Before Logon (CBL) installed on Windows endpoints, you must use the default browser for Cloud Identity Engine SAML authentication.

Before enabling this feature, ensure the following:

Configure GlobalProtect to Facilitate Multi-Factor Authentication Notifications

Where Can I Use This? What Do I Need?
  • NGFW (managed by Panorama and Strata Cloud Manager)
  • Prisma Access (managed by Panorama and Strata Cloud Manager)
  • GlobalProtect endpoints running on Windows and macOS
  • GlobalProtect app 6.2.6 and later 6.2.x releases for Cloud Identity Engine OIDC authentication
  • GlobalProtect app 6.3.0 and later for Cloud Identity Engine SAML and client certificate authentication
  • GlobalProtect 6.3.1 and later for Cloud Identity Engine multi-authentication SSO hub skip feature
  • PAN-OS 10.2 and later for Cloud Identity Engine client certificate and OIDC authentication
  • PAN-OS 11.2 and later for Cloud Identity Engine SAML authentication with Embedded Web View

To protect critical applications and stop attackers from using stolen credentials to conduct lateral movement throughout your network, you can configure policy-based multi-factor authentication. This ensures that each user responds to multiple authentication challenges of different types (factors) before they can access highly sensitive services and applications.

Multi-Factor Authentication Diagram Figure: Diagram illustrating the flow of Multi-Factor Authentication

If a user session matches the Authentication policy, the type of application or service determines the user experience for notifications about the authentication challenge:

To configure GlobalProtect to display MFA notifications for non-browser-based applications, use the following workflow:

  1. Before you configure GlobalProtect, configure multi-factor authentication on the firewall.

If you are using two-factor authentication with GlobalProtect to authenticate to the gateway or portal, a RADIUS server profile is required. If you are using GlobalProtect to notify the user about an authentication policy match (UDP message), a Multi Factor Authentication server profile is sufficient.

To use multi-factor authentication for protecting sensitive resources, the easiest solution is to integrate the firewall with an MFA vendor that is already established in your network.

When your MFA structure is ready, you can start configuring the components of your authentication policy.

  1. ( External gateways only ) For GlobalProtect to support multi-factor authentication on external gateways, you must configure a response page for the ingress tunnel interface on the firewall:
  1. Select Device > Response Pages > MFA Login Page .
  2. Select and then Export the Predefined template to a location of your choice.
  3. On your endpoint, use an HTML editor to customize the downloaded response page and save it with a unique filename.
  4. Return to the MFA Login Page dialog on the firewall, Import your customized page, Browse to select the Import File , and select the Destination (virtual system or shared location). Click OK , and then click Close .
  1. ( External gateways only ) Enable Response Pages as a permitted service on the Interface Mgmt profile:
  1. Select Network > Network Profiles > Interface Mgmt and then select the profile.
  2. In the Permitted Services area, select Response Pages and click OK .
  1. ( External gateways only ) Attach the Interface Mgmt profile to a tunnel interface:
  1. Select Network > Interfaces > Tunnel , and the tunnel interface on which you want to use the response page.
  2. Select Advanced , and then select the Interface Mgmt profile you configured in the previous step as the Management Profile .
  1. ( External gateways only ) Enable User Identification on the Zone associated with the tunnel interface ( Network > Zones > <tunnel-zone ).
  2. Configure GlobalProtect clients to support multi-factor authentication notifications for non-browser-based applications.
  1. Select Network > GlobalProtect > Portals and select a portal configuration (or Add one).
  2. Select Agent , and then select an existing agent configuration or Add a new one.
  3. On the App tab, specify the following:
    • Set Enable Inbound Authentication Prompts from MFA Gateways to Yes . To support multi-factor authentication (MFA), the GlobalProtect app must receive and acknowledge UDP authentication prompts that are inbound from the gateway. Select Yes to enable the GlobalProtect app to receive and acknowledge the prompt. By default, this value is set to No , meaning GlobalProtect will block UDP authentication prompts from the gateway.
    • In the Network Port for Inbound Authentication Prompts (UDP) field, specify the port number that the GlobalProtect app uses to receive inbound UDP authentication prompts from MFA gateways. The default port is 4501. To change the port, specify a number from 1 to 65535.
    • In the Trusted MFA Gateways field, specify the gateway address and port number (required only for non-default ports, such as 6082) of the redirect URL that the GlobalProtect app will trust for multi-factor authentication. When a GlobalProtect app receives a UDP authentication prompt with a redirect URL destined for the specified network port, GlobalProtect displays an authentication message only if the redirect URL is trusted.
    • Configure the Default Message for Inbound Authentication Prompts . When users try to access a resource that requires additional authentication, GlobalProtect receives a UDP packet containing the inbound authentication prompt and displays this message. The UDP packet also contains the URL for the Authentication Portal page you specified when you set up multi-factor authentication. GlobalProtect automatically appends the URL to the message. For example, to display the notification shown in the beginning of this topic enter the following message:

You have attempted to access a protected resource that requires additional authentication. Proceed to authenticate at:

  1. Save the agent configuration (click OK twice), and then Commit your changes.

Enable Delivery of VSAs to a RADIUS Server

When communicating with portals or gateways, GlobalProtect endpoints send information that includes the endpoint IP address, operating system (OS), hostname, user domain, and GlobalProtect app version. You can enable the firewall to send this information as Vendor-Specific Attributes (VSAs) to a RADIUS server during authentication (by default, the firewall does not send the VSAs). RADIUS administrators can then perform administrative tasks based on those VSAs. For example, RADIUS administrators might use the OS attribute to define a policy that mandates regular password authentication for Microsoft Windows users and one-time password (OTP) authentication for Google Android users.

The following are prerequisites for this procedure:

  1. Log in to the firewall CLI.
  2. Enter the command for each VSA you want to send:
  3. username@hostname> set authentication radius-vsa-on client-source-ip
  4. username@hostname> set authentication radius-vsa-on client-os
  5. username@hostname> set authentication radius-vsa-on client-hostname
  6. username@hostname> set authentication radius-vsa-on user-domain
username@hostname> set authentication radius-vsa-on client-gp-version

If you later want to stop the firewall from sending particular VSAs, run the same commands but use the radius-vsa-off option instead of radius-vsa-on .

Enable Group Mapping

Because the agent or app running on your end-user systems requires the user to successfully authenticate before being granted access to GlobalProtect, the identity of each GlobalProtect user is known. However, if you want to be able to define GlobalProtect configurations and/or security policies based on group membership, the firewall must retrieve the list of groups and the corresponding list of members from your directory server. This is known as group mapping .

To enable this functionality, you must create an LDAP server profile that instructs the firewall how to connect and authenticate to the directory server and how to search the directory for the user and group information. After the firewall connects to the LDAP server and retrieves the group mappings, you can select groups when you define the agent configurations and security policies. The firewall supports a variety of LDAP directory servers, including Microsoft Active Directory (AD), Novell eDirectory, and Sun ONE Directory Server.

Use the following procedure to connect to your LDAP directory to enable the firewall to retrieve user-to-group mapping information:

  1. Create an LDAP Server Profile that specifies how to connect to the directory servers to which the firewall should connect to obtain group mapping information.
  1. Select Device > Server Profiles > LDAP and click Add .
  2. Enter a Profile Name to identify the server profile.
  3. If this profile is for a firewall with multiple virtual systems capability, select a virtual system or Shared as the Location where the profile is available.
  4. For each LDAP server (up to four), Add and enter a Name (to identify the server), server IP address ( LDAP Server field), and server Port (default 389).
  5. Select the server Type from the drop-down: active-directory , e-directory , sun , or other .
  6. If you want the device to use SSL or TLS for a more secure connection with the directory server, select the Require SSL/TLS secured connection check box (it is selected by default). The protocol that the device uses depends on the server Port :
    • 389 (default)—TLS (Specifically, the device uses the StartTLS operation , which upgrades the initial plaintext connection to TLS.)
    • 636—SSL
    • Any other port—The device first attempts to use TLS. If the directory server doesn’t support TLS, the device falls back to SSL.
  7. For additional security, you can select the Verify Server Certificate for SSL sessions check box (it is cleared by default) so that the device verifies the certificate that the directory server presents for SSL/TLS connections. To enable verification, you also have to select the Require SSL/TLS secured connection check box. For verification to succeed, one of the following conditions must be true:
    • It is in the list of device certificates: Device > Certificate Management > Certificates > Device Certificates . Import the certificate into the device, if necessary.
    • The certificate signer is in the list of trusted certificate authorities: Device > Certificate Management > Certificates > Default Trusted Certificate Authorities .
  8. Click OK .
  1. Add the LDAP server profile to the User-ID Group Mapping configuration.
    1. Select Device > User Identification > Group Mapping Settings and then Add a new group mapping configuration.
    2. Select Server Profile .
    3. Enter a Name for the group mapping configuration.
    4. Select the Server Profile you just created.
    5. Specify the Update Interval (in seconds) after which the firewall initiates a connection with the LDAP directory server to obtain any updates that are made to the groups that the firewall policies use (range of 60 to 86,400 seconds).
    6. Make sure the server profile is Enabled for group mapping.
  1. ( Optional ) Enable GlobalProtect to retrieve serial numbers from the directory server.

GlobalProtect can identify the status of connecting endpoints and enforce HIP-based security policies based on the presence of the endpoint serial number. If an endpoint is managed, you can bind the serial number of the endpoint to the machine account of the endpoint in your directory server. The firewall can then pre-fetch the serial numbers for these managed endpoints when it retrieves group mapping information from the directory server.

  1. From your group mapping configuration, select Server Profile .
  2. Enable the option to Fetch list of managed devices .
  1. ( Optional ) Specify attributes to identify users and user groups.
    1. From your group mapping configuration, select User and Group Attributes .
    2. In the User Attributes area, specify the Primary Username , E-Mail , and Alternate Username 1-3 used to identify individual users.
    3. In the Group Attributes area, specify the Group Name , Group Member , and E-Mail used to identify user groups.
  1. ( Optional ) Limit which groups can be selected in policy rules.

By default, if you don’t specify groups, all groups are available in policy rules.

  1. Add existing groups from the directory service:
  1. From your group mapping configuration, select Group Include List .
  2. In the Available Groups list, select the groups you want to appear in policy rules, and then click the Add ( Add icon ) icon to move the group to the Included Groups list.
  1. If you want to base policy rules on user attributes that don’t match existing user groups, create custom groups based on LDAP filters:
  1. From your group mapping configuration, select Custom Group .
  2. Add a new custom group.
  3. Enter a group Name that is unique in the group mapping configuration for the current firewall or virtual system. If the Name has the same value as the Distinguished Name (DN) of an existing AD group domain, the firewall uses the custom group in all references to that name (for example, in policies and logs).
  4. Specify an LDAP Filter of up to 2,048 UTF-8 characters, then click OK . The firewall doesn’t validate LDAP filters.

To optimize LDAP searches and minimize the performance impact on the LDAP directory server, use indexed attributes and reduce the search scope to include the user and group objects that you require for policy or visibility. Alternatively, you can create custom groups based on LDAP filters.

  1. Commit your changes.

Click OK and Commit .

GlobalProtect Processes to be Whitelisted on EDR Deployments

To ensure seamless operation of GlobalProtect, we suggest configuring your antivirus, EDR (Endpoint Detection and Response), or firewall applications to recognize GlobalProtect processes as safe. These security applications may sometimes mistakenly identify GlobalProtect processes as malicious. To prevent this, it is advisable to whitelist or create security exceptions for the following GlobalProtect processes before installation.

Here are the GlobalProtect processes that you must whitelist on your EDR deployments.

macOS Process
/Library/SystemExtensions/[UUID]/com.paloaltonetworks.GlobalProtect.client.extension.systemextension/Contents/MacOS/com.paloaltonetworks.GlobalProtect.client.extension
/Applications/GlobalProtect.app/Contents/Resources/PanGPS
/Applications/GlobalProtect.app/Contents/Resources/PanGpHip
/Applications/GlobalProtect.app/Contents/Resources/PanGpHipMp
/Applications/GlobalProtect.app/Contents/MacOS/GlobalProtect
/Applications/GlobalProtect.app/Contents/Resources/gp_support.sh
/Applications/GlobalProtect.app/Contents/Resources/systemext_gp.sh
/Applications/GlobalProtect.app/Contents/Resources/uninstall_gp.sh
/Applications/GlobalProtect.app/Contents/Resources/gplogin.bundle/Contents/MacOS/gplogin
Windows Process
C:\Program Files\Palo Alto Networks\GlobalProtect\PanGPA.exe
C:\Program Files\Palo Alto Networks\GlobalProtect\PanGPS.exe
C:\Program Files\Palo Alto Networks\GlobalProtect\PanGpHip.exe
C:\Program Files\Palo Alto Networks\GlobalProtect\PanGpHipMp.exe
C:\Program Files\Palo Alto Networks\GlobalProtect\wa_3rd_party_host_32.exe
C:\Program Files\Palo Alto Networks\GlobalProtect\wa_3rd_party_host_64.exe
C:\Program Files\Palo Alto Networks\GlobalProtect\PanVcrediChecker.exe
C:\Program Files\Palo Alto Networks\GlobalProtect\PanGPSupport.exe
C:\Windows\System32\PanPlapApp.exe

GlobalProtect App Quiz

1. What is the primary function of the GlobalProtect app on user endpoints?

Explanation: The GlobalProtect app extends the security policy used on the corporate network to mobile users, ensuring their traffic is secured regardless of location. It's more than just a VPN, integrating security policies. (Relevance: Important)

2. According to the documentation, where can end users directly download the GlobalProtect app software package?

Explanation: The documentation explicitly states there is no direct download link on the Palo Alto Networks site for end users. Administrators must host it on the portal or a web server. Mobile versions are available in app stores. (Relevance: Gotcha, Important)

3. What is the minimum RAM requirement for the GlobalProtect app on a Windows endpoint?

Explanation: The table for Windows hardware requirements specifies 2GB minimum RAM. (Relevance: PCNSE/PCNSA)

4. When hosting GlobalProtect app updates, why might an administrator choose to host them on an external web server instead of directly on the portal firewall?

Explanation: Hosting updates on a web server offloads the download traffic from the firewall, which is beneficial if a large number of endpoints require simultaneous updates. (Relevance: Important, PCNSE/PCNSA)

5. Which of the following deployment methods for macOS and Windows endpoints allows automatic deployment of app settings using the Windows Installer?

Explanation: The documentation mentions Msiexec as a command-line tool for transparent deployment of app settings on Windows endpoints. (Relevance: Important, PCNSA)

6. What administrative privilege level is required for the initial installation of the GlobalProtect app software on a Windows endpoint?

Explanation: The testing installation section explicitly states that the end user must be logged in with administrative privileges for the initial installation. (Relevance: Important)

7. When testing the app installation by logging into the portal via a web browser, what page typically appears immediately after successful login if Clientless VPN is NOT enabled?

Explanation: The testing installation steps indicate that the app download page appears immediately after login unless Clientless VPN is enabled, in which case the applications page appears first. (Relevance: PCNSA)

8. What are the two main options for collecting GlobalProtect app logs from end users' endpoints?

Explanation: The section on viewing and collecting logs lists "Collect logs" (manually by the user) and "Report an issue" (sends logs to Strata Logging Service) as the two options. (Relevance: Important, PCNSE/PCNSA)

9. Where are transparent app settings for Linux endpoints defined?

Explanation: The documentation specifies that for Linux, transparent app settings are defined in the `/opt/paloaltonetworks/globalprotect/pangps.xml` file. (Relevance: PCNSE)

10. What happens if there is a conflict between a setting defined in the GlobalProtect portal configuration and the same setting defined in the Windows Registry or macOS plist on an endpoint?

Explanation: The documentation clearly states that settings defined in the portal configuration always override settings defined in the endpoint's registry, plist, or pangps.xml file. (Relevance: Critical, PCNSE/PCNSA)

11. Which transparent app setting allows the administrator to pre-configure the default portal address for endpoints?

Explanation: The "portal" setting, typically under PanSetup, is used to specify the default portal IP address or hostname for pre-deployment. (Relevance: Important, PCNSA)

12. Which connection method, when configured transparently, enables the GlobalProtect app to initiate a VPN tunnel before a user logs in to the device?

Explanation: The "prelogon" setting (with a value of 1) enables the Connect Before Logon functionality, allowing the tunnel to establish before the user logs into the OS. (Relevance: Important, PCNSA)

13. When deploying a script using the Windows Registry for a "Connect Before Logon" scenario, what context must the script typically run under?

Explanation: For Connect Before Logon, where no user is logged in yet, VPN connect scripts must be configured to run under the "admin" context. (Relevance: Gotcha, PCNSE)

14. Which Windows command-line tool can be used to automatically deploy GlobalProtect app settings during installation?

Explanation: The documentation specifically mentions using `msiexec.exe /i GlobalProtect.msi` with parameters to deploy settings from the command line during installation. (Relevance: Important, PCNSA)

15. What is the primary benefit of configuring SSO Wrapping for Third-Party Credential Providers on Windows endpoints?

Explanation: SSO Wrapping allows GlobalProtect to integrate with third-party credential providers so that the user's single Windows login authenticates across all three platforms (Windows, GP, 3rd Party CP). (Relevance: Important, PCNSE)

16. What needs to be specified in the Windows Registry (using `wrap-cp-guid`) to enable SSO Wrapping for a specific third-party credential provider?

Explanation: The steps for enabling SSO wrapping via the Windows Registry involve finding and specifying the unique GUID associated with the third-party credential provider. (Relevance: Important, PCNSE)

17. After making changes to the macOS plist file for GlobalProtect settings, what command can be run from the terminal to clear the settings cache without rebooting?

Explanation: The documentation mentions using `killall cfprefsd` on macOS 10.9 or later to flush the settings cache after modifying the plist. (Relevance: PCNSE)

18. Which of the following is a process that might need to be whitelisted on an EDR deployment for Windows endpoints running GlobalProtect?

Explanation: The table listing Windows processes to whitelist includes `PanGPS.exe`, which is the GlobalProtect Service executable. `globalprotectd` is a macOS process name, `pangps.xml` is a configuration file, and `regedit.exe` is the Windows Registry editor. (Relevance: Important, PCNSE/PCNSA)

19. What is a "Gotcha" mentioned regarding switching from System Extensions to Kernel Extensions on macOS?

Explanation: The documentation highlights that switching to kernel extensions might cause issues with WebKit-based traffic (Safari, Teams, Slack) when application-based split tunneling is configured. (Relevance: Gotcha, PCNSE)

20. According to the documentation, what is considered a "Critical Point" regarding transparent app settings defined in the portal vs. on the endpoint?

Explanation: The documentation explicitly flags this as a critical point: portal settings take precedence over transparent settings configured on the endpoint. (Relevance: Critical, PCNSE/PCNSA)