Saviynt unveils its cutting-edge Intelligence Suite products to revolutionize Identity Security!
Click HERE to see how Saviynt Intelligence is transforming the industry.
Saviynt Copilot Icon

Google Analytics - Saviynt Published Connector

Brian
New Contributor III
New Contributor III

Regarding the Saviynt published connector for Google Analytics, which is found on the forums rather than the docs site:

https://forums.saviynt.com/t5/community-sourced-integrations/google-analytics-integration-guide/ta-p...

I had to download and import the Connection package, since GoogleApps(REST) type is not present.  When importing the package the ImportAccountEntJSON is readable from the import but the ConnectionJSON is encrypted and cannot be read/modified in the REST Questionnaire - I could not find Saviynt documentation on how this ConnectionJSON should be set up as I've been unsuccessful so far.

As a side note, the Google userLinks endpoints that are in this connector appear to have been deprecated by Google in 2023 so this connector will need modified in addition to figuring out the connection (found here https://developers.google.com/analytics/devguides/config/admin/v1/changelog#2023-02-24_access_bindin...)

Does anyone have any tips for setting the ConnectionJSON for Google Analytics?

1 REPLY 1

Falcon
Saviynt Employee
Saviynt Employee

Try this out

{
  "authentications": {
    "userAuth": {
      "authType": "Jwt",
      "httpParamsName": "assertion",
      "jwtConfig": {
        "jwtHeader": {
          "alg": "RS256",
          "typ": "JWT"
        },
        "jwtPayload": {
          "iss": "@ISSUER@",
          "sub": "@SUBJECT@",
          "aud": "@AUDIENCE@",
          "scope": "https://www.googleapis.com/auth/analytics.readonly"
        },
        "signedAlgorithm": "RS256",
        "key": "@KEY@",
        "jwtExpiryDuration": 3500
      },
      "url": "https://oauth2.googleapis.com/token",
      "httpMethod": "POST",
      "httpParams": {
        "grant_type": "urn:ietf:params:oauth:grant-type:jwt-bearer",
        "assertion": "@ASSERTION@"
      },
      "httpHeaders": {
        "Content-Type": "application/x-www-form-urlencoded"
      },
      "retryFailureStatusCode": [
        401,
        500,
        400
      ],
      "authError": [
        "SESSION_NOT_VALID",
        "AuthenticationFailed",
        "ExpiredJwtException",
        "401 Unauthorized",
        "401",
        "You couldn't be authenticated"
      ],
      "errorPath": "code",
      "maxRefreshTryCount": 5,
      "tokenResponsePath": "access_token",
      "tokenType": "Bearer",
      "accessToken": "XXXXXXXX"
    }
  }
}