--- title: Google SSO slug: /deployment/security/google --- # Google SSO Follow the sections in this guide to set up Google SSO. ## Create Server Credentials ### Step 1: Create the Account - Go to [Create Google Cloud Account](https://console.cloud.google.com/) - Click on `Create Project` create-account ### Step 2: Create a New Project Enter the **Project name**. Enter the parent organization or folder in the **Location box**. That resource will be the hierarchical parent of the new project. Click **Create**. create-project ### Step 3: How to Configure OAuth Consent - Select the project you created above and click on **APIs & Services** on the left-side panel. configure-oauth-consent - Click on the **OAuth Consent Screen** available on the left-hand side panel. - Choose User Type **Internal**. select-user-type - Once the user type is selected, provide the **App Information** and other details. - Click **Save and Continue**. save-app-information - On the **Scopes Screen**, Click on **ADD OR REMOVE SCOPES** and select the scopes. - Once done click on **Update**. scopes-screen - Click **Save and Continue**. save-edit-app-registration - Click on **Back to Dashboard**. back-to-dashboard back-to-dashboard ### Step 4: Create Credentials for the Project - Once the OAuth Consent is configured, click on **Credentials** available on the left-hand side panel. create-credentials - Click on **Create Credentials** - Select **OAuth client ID** from the dropdown. cselect-outh-client-id - Once selected, you will be asked to select the **Application type**. Select **Web application**. select-web-application After selecting the **Application Type**, name your project and give the authorized URIs: - domain/callback - domain/silent-callback authorized-urls - Click **Create** - You will get the credentials get-the-credentials ### Step 5: Where to Find the Credentials - Go to **Credentials** - Click on the **pencil icon (Edit OAuth Client)** on the right side of the screen find-credentials - You will find the **Client ID** and **Client Secret** in the top right corner find-clientid-and-secret ## Create Service Account This is a guide to create ingestion bot service account. ### Step 1: Create Service-Account - Navigate to your project dashboard create-service-account - Click on **Credentials** on the left side panel click-credentials - Click on **Manage service accounts** available on the center-right side. manage-service-accounts - Click on **CREATE SERVICE ACCOUNT** click-save-create-service-account - Provide the required service account details. Ensure that the Service Account ID is **ingestion-bot** and click on **CREATE AND CONTINUE**. If you chose a different Service Account Id, add it to the default bots list in [Configure OpenMetadata Server](https://github.com/StreamlineData/catalog/tree/3d53fa7c645ea55f846b06d0210ac63f8c38463f/docs/install/install/google-catalog-config.md) required-account-details - Click on **Select a role** and give the **Owner** role. Then click **Continue**. select-owner-role - Click **DONE** click-done-service-account - Now you should see your service account listed. listed-service-account ### Step 2: Enable Domain-Wide Delegation - Click on the service account in the list. enable-domain-wide-delegation - On the details page, click on **SHOW DOMAIN-WIDE DELEGATION** show-domain-wide-delegation - Enable Google Workspace Domain-wide Delegation - Click on **SAVE** enable-google-domain-wide-delegation ### How to Generate Private-Key/Service-Account JSON File - Once done with the above steps, click on **KEYS** available next to the **DETAILS** tab. - Click on **ADD KEY** and select **Create a new key**. create-new-key - Select the format. The **JSON format** is recommended. - Next, click on **CREATE** save-json - The private-key/service-account JSON file will be downloaded. After the applying these steps, you can update the configuration of your deployment: Configure Auth0 SSO for your Docker Deployment. Configure Auth0 SSO for your Bare Metal Deployment. Configure Auth0 SSO for your Kubernetes Deployment. ## Configure Ingestion After everything has been set up, you will need to configure your workflows if you are running them via the `metadata` CLI or with any custom scheduler. When setting up the YAML config for the connector, update the `workflowConfig` as follows: ```yaml workflowConfig: openMetadataServerConfig: hostPort: 'http://localhost:8585/api' authProvider: google securityConfig: secretKey: '{path-to-json-creds}' ```