javascriptsaml-2.0auth0freshdesk

How to integrate freshdesk with auth0?


The documentation on how to integrate auth0 with freshdesk is sparse and the ones I did find were outdated

freshdesk support article auth0 support article


Solution

  • The following is broken down by service into steps

    Auth0:

    1. Assuming you have already made a new client, go to Applications / Create Application.
    2. Select Single Page Web App or Regular Web App.
    3. Go to Settings tab.
    4. Under Allowed Callback URLs insert https://[YOURDOMAIN].freshdesk.com/login/saml.
    5. Under Allowed Web Origins be sure to put your domain.
    6. Under Allowed Origins (CORS) be sure to put your domain.
    7. Go to Addons tab.
    8. Select SAML 2
    9. Under Application Callback URL be sure the url is https://[YOURDOMAIN].freshdesk.com/login/saml.
    10. Under settings place the following:
    {
      "audience": "https://[YOURDOMAIN].freshdesk.com",
      "mappings": {
        "email": "Email",
        "name": "username",
        "given_name": "FirstName",
        "family_name": "LastName"
      },
      "nameIdentifierFormat": "urn:oasis:names:tc:SAML:2.0:nameid-format:email",
      "nameIdentifierProbes": [
        "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress"
      ],
      "signatureAlgorithm": "rsa-sha256",
      "digestAlgorithm": "sha256",
      "lifetimeInSeconds": 3600,
      "signResponse": false
    }
    
    1. Note that the signature algorithm must be rsa-sha256 as this is what freshdesk is expecting
    2. Under the Usage tab download the Auth0 certificate
    3. Store the Identity Provider Login URL as we will be using this on freshdesk.

    Freshdesk:

    1. Go to Settings / General Settings / Security
    2. Turn on Single Sign On (SSO)
    3. Under SAML Login URL paste in the Identity Provider Login URL from auth0.
    4. Open the Auth0 certificate and find the sha256 fingerprint and place into the Security Certificate Fingerprint field. Note: you may need to format your fingerprint to include : between each value.
    5. Hit save

    Special Note: I did notice that agents will now have to go through auth0 in order to get to the admin dashboard. To circumvent that try logging in through this portal: https://[YOURDOMAIN].freshdesk.com/login/normal.

    I hope that these instructions help you out in your freshdesk auth0 integrations. good luck!