Skip to main content

Overview

The Google Users integration enables ThreatAware to collect infrastructure and instance data from your Google Cloud Platform projects. This integration provides visibility into your cloud infrastructure and helps validate cloud resource security and compliance controls.
Connection Method: OAuth / Service Account Setup Time: 20 minutes Access Required: Google Cloud Project with appropriate IAM permissions

Data collected

The Google Users integration provides:
  • Google Cloud Compute instances and VMs
  • Instance configuration and metadata
  • Network and security settings
  • Resource organisation and inventory

Use cases

Cloud Infrastructure Visibility

Monitor all Compute instances across your Google Cloud projects

Multi-Project Management

Track infrastructure across multiple Google Cloud projects

Security Posture Assessment

Validate cloud instance security configurations and compliance

Compliance Reporting

Generate reports showing cloud infrastructure coverage and compliance

Setup instructions

1

Log in to ThreatAware

Access the ThreatAware dashboard.
  • Navigate to Settings > Systems
  • Search for “Google” in the search bar
  • Click Connect to start the integration
2

Enable Google Cloud Compute API

Log in to your Google Cloud Platform console.
  • Select your desired Project
  • Navigate to APIs & Services > Library
  • Search for “Google Cloud Compute API”
  • Click Enable to activate the API for your project
You must enable this API for each project you want to monitor. If monitoring multiple projects, repeat this step for each project ID.
3

Create a Custom Role

In the Google Cloud Console:
  • Navigate to IAM & Admin > Roles
  • Click Create Role
  • Enter the following details:
    • Title: ThreatAware_Role (or similar)
    • ID: Auto-populated (e.g., threataware_role)
    • Description: “Role for ThreatAware integration”
4

Add Permissions to Role

In the role creation dialog:
  • Click Add Permissions
  • Add these required permissions:
    • compute.instances.get
    • compute.instances.list
  • Verify both permissions are listed
  • Click Create to finalize the role
5

Configure IAM Access

In the Google Cloud Console:
  • Navigate to IAM & Admin > IAM
  • Click Add at the top of the page
  • Under New members, add this service account:
  • Select Role and choose the custom role created in step 3
  • Click Save to grant access
6

Retrieve Project ID

Obtain your Google Cloud Project ID:
  • Navigate to Home > Dashboard in the Google Cloud Console
  • Locate the Project Info section
  • Copy the Project ID displayed
  • If monitoring multiple projects, note the Project ID for each
The Project ID is a unique identifier for each Google Cloud project. It differs from the Project Name and is required for integration.
7

Input Project IDs in ThreatAware

Return to the ThreatAware connection dialog:
  • Click Authorize to proceed with authorization
  • Enter your Google Cloud Project ID
  • If monitoring multiple projects, separate Project IDs with commas
  • Click Connect or Authorize to complete the integration
8

Verify Connection

After connecting, verify the integration is working correctly.
  • Check that the authorization status shows as successful
  • Navigate to ThreatAware’s device or infrastructure list
  • Wait 5-10 minutes for initial data synchronization
  • Verify Google Cloud instances are appearing

Required credentials

Field Name: Google Cloud Project ID Type: String Description: The unique identifier for your Google Cloud projectFormat: Alphanumeric with hyphens (e.g., my-project-123456) Where to find: Google Cloud Console > Home > Project Info Multiple projects: Separate with commas (e.g., project-1,project-2,project-3)
Do not confuse the Project ID with the Project Name. The ID is what you need for the integration.

Verification and testing

After setup, verify the integration is working correctly:
  1. Check Authorization Status
    • Navigate to Settings > Systems in ThreatAware
    • Confirm the Google Users integration shows Active or Connected status
    • Check the last sync timestamp
  2. Verify Data Collection
    • Wait 10 minutes for the initial data poll
    • Look for Google Cloud Compute instances appearing in ThreatAware
    • Verify instance information is accurate and complete
    • Check that all specified projects are included
  3. Test Multi-Project Setup
    • If using multiple projects, verify instances from each project appear
    • Confirm instance counts match your Google Cloud environment

Troubleshooting

Symptoms: Integration fails with message about Compute APISolutions:
  • Verify you’ve enabled the Google Cloud Compute API
  • Navigate to APIs & Services > Library
  • Search for “Google Cloud Compute API”
  • Ensure Enable status shows it’s active
  • Wait a few minutes for API activation to complete
  • Try connecting again after API is enabled
Symptoms: Authorization fails or permissions are insufficientSolutions:
  • Verify the custom role has both required permissions:
    • compute.instances.get
    • compute.instances.list
  • Confirm the service account is assigned to the role via IAM
  • Check that the service account was granted access in step 5
  • Review IAM settings to ensure role is applied correctly
  • Verify you’re using the correct service account email
Symptoms: Connection fails with invalid project errorSolutions:
  • Verify the Project ID format (alphanumeric with hyphens)
  • Do not use the Project Name - use the Project ID only
  • Check Project ID in Google Cloud Console > Home > Project Info
  • Ensure Project ID is correctly spelled without extra spaces
  • For multiple projects, use correct format: project-1,project-2
  • Test each Project ID individually if issues occur
Symptoms: Integration connects but no Google Cloud instances appearSolutions:
  • Verify Compute instances actually exist in your project
  • Wait at least 10 minutes for initial data synchronization
  • Confirm the Compute API is enabled for the specified project
  • Check that the custom role has the required compute.instances.list permission
  • Verify instances are in a region supported by Google Cloud
  • Review instance count in Google Cloud Console to confirm data exists
Symptoms: OAuth authorization fails or times outSolutions:
  • Verify your Google account has access to the Google Cloud project
  • Check that you’re authenticating with the correct Google account
  • Ensure popup windows are allowed in your browser
  • Clear browser cookies and try authorization again
  • Verify internet connectivity to Google services
  • Try using an incognito/private browser window

API permissions reference

The custom role should include these permissions:
  • compute.instances.get - Read individual instance details
  • compute.instances.list - List all instances in a project
For detailed permission information, refer to the Google Cloud Compute Documentation.

Additional resources

Google Cloud Compute Documentation

Official Google Cloud documentation for API configuration and permissions

ThreatAware Support

Contact ThreatAware support for integration assistance

Best practices

Project Organisation
  • Start by enabling the Compute API for one test project
  • Create the custom role following the documented permissions
  • Test integration with the first project before adding more
  • Document all Project IDs being monitored
  • Review authorization settings quarterly
Security Considerations
  • Only grant the minimum required permissions (compute.instances.get and list)
  • Restrict access to the custom role
  • Avoid using Owner or Editor roles for integrations
  • Follow Google Cloud’s least privilege principles
  • Monitor service account activity in Cloud Audit Logs
  • Rotate or review service account credentials regularly