Before ingesting Google BigQuery metadata into Dawiso, prepare your account for authentication by configuring a Google BigQuery service account and granting it the necessary permissions.
Dawiso queries INFORMATION_SCHEMA views to get metadata for your assets.
Connection configuration
In this guide, you will:
- Create a a Service Role and configure its permissions
- Create a dedicated Service Account and add it to the newly created role
- Generate a Service Account Key in JSON
This guide assumes you are using the Google Cloud console, but all steps can also be carried out in the Google Cloud CLI.
Create Service Role
First, create a new Identity and Access Management (IAM) role. as described in this guide.
- In your Google Cloud console, open the left-side menu, hover over IAM and admin, and click Roles. Make sure you’ve selected the correct project.
- In the top panel, click + CREATE ROLE. On the next page, fill in the following fields:
- Title: Name the role, e.g.,
Dawiso Ingestion role. - [Optional] Description: Add a description to help identify the role and its purpose.
- ID: Unique ID of the role.
- [Optional] Role launch stage: Select a role launch stage. Available options are: Alpha, Beta, or General Availability.
- Title: Name the role, e.g.,
- On the same page, click + ADD PERMISSIONS, select all the following permissions, and click Add:
-
bigquery.datasets.get bigquery.datasets.getIamPolicy bigquery.jobs.create bigquery.readsessions.create bigquery.readsessions.getData bigquery.readsessions.update bigquery.routines.get bigquery.routines.list bigquery.tables.get bigquery.tables.getIamPolicy bigquery.tables.list resourcemanager.projects.get resourcemanager.projects.getIamPolicy
-
- Finally, finish the role setup by clicking Create.
Create Service Account
Next, create a Service Account to grant Dawiso access to your project. Please follow this guide.
- In your Google Cloud console, open the left-side menu, hover over IAM and admin, and click Service Accounts. Make sure you’ve selected the correct project.
- In the top panel, click + CREATE SERVICE ACCOUNT. On the next page, fill in the following fields:
- Service account name: Name the service account, e.g.,
Dawiso service account. - Service account ID: Unique ID of the service account. The ID will be auto-generated, however, you can change it if needed.
- [Optional] Service account description: Add a description to help identify the role and its purpose.
- Service account name: Name the service account, e.g.,
- Click CREATE AND CONTINUE.
- In the Grant this service account access to project section, select the newly created service role (in this case,
Dawiso Ingestion role). - Click Continue.
- Finish the service account setup by clicking DONE.
Generate a key for the Service Account
Finally, you will need to generate a JSON Service Account Key that allows access to your cloud resources to create a new Connection in Dawiso.
- In your Google Cloud console, open the left-side menu, hover over IAM and admin, and click Service Accounts. Make sure you’ve selected the correct project.
- Click the three dots next to the service account created for Dawiso and select Manage keys.
- Click ADD KEY above the list of your keys.
- Click Create new key and select the JSON key type.
- Continue with Create. Your JSON service account key will be automatically downloaded to your device.
Make sure to store the key in a safe place for later as it cannot be downloaded more than once.