Deploy User-Specific Client Certificates for Authentication
Focus
Focus
GlobalProtect

Deploy User-Specific Client Certificates for Authentication

Table of Contents
End-of-Life (EoL)

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 DeviceCertificate ManagementSCEP, 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.
  2. (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:
    • None—(Default) The SCEP server does not challenge the portal before it issues a certificate.
    • Fixed—Enter the enrollment challenge Password obtained from the SCEP server in the PKI infrastructure.
    • Dynamic—Enter a Username and Password of your choice (possibly the credentials of the PKI administrator) and the SCEP Server URL where the portal-client submits these credentials. The credentials are used to authenticate with the SCEP server, which transparently generates an OTP password for the portal upon each certificate request (you can see this OTP change after a screen refresh in The enrollment challengepassword is field after each certificate request). The PKI transparently passes each new password to the portal, which then uses the password for its certificate request.
  3. 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).
    4. 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.
  4. (Optional) Configure Cryptographic Settings for the certificate.
    • 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.
    • Select the Digest for CSR which indicates the digest algorithm for the certificate signing request (CSR): sha1, sha256, sha384, or sha512.
  5. (Optional) Configure the permitted uses of the certificate, either for signing or encryption.
    • 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.
    • 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.
  6. (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.
  7. 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.
  8. 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 DeviceCertificate ManagementCertificates.
  9. (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 DeviceCertificate ManagementCertificatesDevice 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.
  10. 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.