Connections > Google BigQuery V2 connection properties > Prerequisites for Workload Identity Federation (Client Credentials) authentication
  

Prerequisites for Workload Identity Federation (Client Credentials) authentication

Before you configure a Google BigQuery V2 connection to use Workload Identity Federation (Client Credentials) authentication, you need to register Microsoft Entra ID as the identity provider, and then complete the following tasks in order:
  1. 1Register an application in Microsoft Entra ID.
  2. 2Register Microsoft Entra ID with a Workload Identity Pool.
  3. 3Assign the required roles to the Workload Identity Pool principal.
After you complete these tasks, you have the tenant ID, client ID, client secret, project number, pool ID, and provider ID that you use to configure the connection.
Note:
Data Ingestion and Replication can't use the Workload Identity Federation (Client Credentials) authentication.

Network access requirements

The Secure Agent machine requires outbound HTTPS access to the following endpoints:
Endpoint
Purpose
login.microsoftonline.com
Request an OpenID Connect (OIDC) token from Microsoft Entra ID.
sts.googleapis.com
Exchange the Entra ID token for a federated Google access token.
iamcredentials.googleapis.com
Generate a short-lived access token for the target service account when you enable service account impersonation.
bigquery.googleapis.com
Run BigQuery jobs and queries.
storage.googleapis.com
Stage data in Google Cloud Storage buckets.
cloudresourcemanager.googleapis.com
Look up the data project when you clear the Use Data Project property and the connection resolves the project associated with the workload identity pool.

Register an application in Microsoft Entra ID

Register the application and generate credentials

Register an application in Microsoft Entra ID to get the client ID, client secret, and tenant ID. The connection uses these values to request access tokens.
Sign in to the Microsoft Entra admin center with an account that has permissions to register applications and create client secrets.
For more information, see Microsoft app registration quickstart in the Microsoft documentation.
Note:
The third-party information included in Informatica documentation is subject to change without prior notice. Check the third-party documentation for the most up-to-date information.
  1. 1Go to Identity > Applications > App registrations, and click New registration.
  2. 2On the Register an application page, enter a name for the application in the Name field.
  3. 3In the Supported account types field, select Accounts in this organizational directory only (Single tenant).
  4. 4Click Register.
  5. 5On the application overview page, copy the Application (client) ID and Directory (tenant) ID values, and store them for later use.
  6. 6In the left pane, click Expose an API.
  7. 7Next to Application ID URI, click Set.
  8. 8In the Application ID URI field, enter the URI in the following format, and click Save:
  9. Syntax: api://<client ID>
  10. 9In the left pane, click Certificates & secrets.
  11. 10On the Client secrets tab, click New client secret.
  12. 11Enter a description in the Description field, select an expiry period in the Expires field, and click Add.
  13. 12Copy the client secret from the Value column, and store it securely. Do not copy the value in the Secret ID column.
  14. Microsoft Entra ID displays the secret value only once.
Record the values of the client ID, tenant ID, Application ID URI, and client secret. You require these values to configure the Google BigQuery V2 connection and the Workload Identity Pool.

Assign the Contributor role on the Azure subscription

Assign the Contributor role to the registered application on the Azure subscription.
For more information, see Assign Azure roles using the Azure portal in the Microsoft documentation.
Note:
The third-party information included in Informatica documentation is subject to change without prior notice. Check the third-party documentation for the most up-to-date information.
  1. 1In the Azure portal, go to Subscriptions.
  2. 2Select the subscription where you plan to create resources for Google Cloud integration.
  3. 3Click Access control (IAM).
  4. 4Click Add role assignment.
  5. 5In the Role field, select Contributor.
  6. 6In the Assign access to field, select User, group, or service principal.
  7. 7In the Select members field, search for and select the application name you registered.
  8. 8Click Save.

Rules and guidelines

Consider the following rules and guidelines:

Register Microsoft Entra ID with a Workload Identity Pool

Create the Workload Identity Pool, add a provider, and grant access

Create a Workload Identity Pool in Google Cloud, add Microsoft Entra ID as an OpenID Connect provider for the pool, and grant the registered application access to the pool.
For more information about creating a Workload Identity Pool and an OpenID Connect provider, see Workload Identity Federation with other providers in the Google Cloud documentation.
Note:
The third-party information included in Informatica documentation is subject to change without prior notice. Check the third-party documentation for the most up-to-date information.
  1. 1In the Google Cloud console, go to IAM & Admin > Workload Identity Federation, and click Create Pool.
  2. 2Enter a name for the pool, and click Continue.
  3. 3Select OpenID Connect (OIDC) as the provider type, and click Continue.
  4. 4In the Issuer (URL) field, enter the Microsoft identity platform v2.0 token endpoint for the tenant in the following format:
  5. Syntax: https://login.microsoftonline.com/<tenant ID>/v2.0
  6. 5In the Audiences field, enter the Application ID URI that you set for the application in Microsoft Entra ID.
  7. 6Configure the attribute mapping so that google.subject maps to the subject claim of the Entra ID token, for example assertion.sub.
  8. 7Click Save to create the provider.
  9. 8On the pool details page, click Grant Access, and select Grant access using the resource's IAM permissions.
  10. 9Enter the principal identifier for the application in the following format:
  11. Syntax: principal://iam.googleapis.com/projects/<project number>/locations/global/workloadIdentityPools/<pool ID>/subject/<client ID>
  12. 10Record the full resource paths of the pool and provider. You require these values to configure the Google BigQuery V2 connection.
  13. Pool ID syntax: projects/<project number>/locations/global/workloadIdentityPools/<pool ID>
    Provider ID syntax: projects/<project number>/locations/global/workloadIdentityPools/<pool ID>/providers/<provider ID>

Rules and guidelines

Consider the following rules and guidelines:

Assign required roles to the workload identity pool principal

Grant the required IAM roles

Grant the workload identity pool principal the Workload Identity User role, and, if you enable service account impersonation, grant the pool principal the Service Account Token Creator role on the target service account.
For more information about granting IAM roles to a principal, see Granting, changing, and revoking access to resources in the Google Cloud documentation.
Note:
The third-party information included in Informatica documentation is subject to change without prior notice. Check the third-party documentation for the most up-to-date information.
  1. 1In the Google Cloud console, go to IAM & Admin > IAM for the project that contains the workload identity pool.
  2. 2Click Grant Access, and add the pool principal as a new principal.
  3. 3In the Role field, select Workload Identity User, and click Save.
  4. 4If you enable service account impersonation, go to IAM & Admin > IAM for the project that contains the target service account.
  5. 5Click Grant Access, and add the workload identity pool principal as a new principal.
  6. 6In the Role field, select Service Account Token Creator, and click Save.
  7. 7Grant the target service account the BigQuery roles that your mappings require, such as BigQuery Data Editor and BigQuery Job User, in the project where the BigQuery datasets reside.

Rules and guidelines

Consider the following rules and guidelines:

Enable uniform bucket-level access

Enable uniform bucket-level access on the Google Cloud Storage buckets that the connection reads from and writes to, and on the staging buckets that Google BigQuery V2 uses.
For more information, see Uniform bucket-level access in the Google Cloud documentation.