ZaunDocs

Cloud Security

Integration setup guides for cloud security platforms (AWS, Azure, GCP).

Connect your cloud platforms to Zaun for security monitoring, configuration drift detection, and incident response.

AWS

Services: Security Hub, GuardDuty, CloudTrail - single credential set | Auth: AWS SigV4

Required Credentials

FieldDescription
Access Key IDIAM user access key
Secret Access KeyIAM user secret key
AWS Account ID12-digit account ID
Primary Regione.g. us-east-1
Security Tooling Role ARNDelegated admin role to assume
External ID (recommended)Prevents confused deputy attacks
Execution Role NameRole in member accounts (default: Zaun-SOAR-Execution-ReadOnly)

Services Covered by These Credentials

ServiceRequired IAM Actions
Security Hubsecurityhub:GetFindings, securityhub:ListFindings, securityhub:GetInsights, securityhub:DescribeHub, securityhub:BatchUpdateFindings
GuardDutyguardduty:ListDetectors, guardduty:GetDetector, guardduty:ListFindings, guardduty:GetFindings, guardduty:ListMembers
STSsts:AssumeRole (for cross-account)

AWS managed policies AWSSecurityHubReadOnlyAccess and AmazonGuardDutyReadOnlyAccess cover the read-only use case.

Cross-Account Architecture

IAM User (your account)
  > assumes Security Tooling Role (delegated admin)
    > assumes Execution Role (each member account)
      > calls Security Hub / GuardDuty APIs

Setup Steps

  1. Create an IAM user with programmatic access in your security tooling account.
  2. Create the Security Tooling Role with a trust policy allowing the IAM user to assume it. Include an External ID.
  3. In each member account, create an Execution Role (e.g. Zaun-SOAR-Execution-ReadOnly) with Security Hub + GuardDuty read permissions.
  4. The Execution Role trust policy should allow the Security Tooling Role to assume it.
  5. Paste credentials and role ARNs into Zaun.

Microsoft Azure

Services: Azure Monitor & Microsoft Sentinel - single app registration | Auth: OAuth2

Required Credentials

FieldDescriptionWhere to Find
Tenant IDAzure AD directory identifierEntra ID > Overview
Client IDApplication (client) IDApp Registration > Overview
Client SecretSecret for the appCertificates & secrets
Subscription IDAzure subscriptionSubscriptions blade
Resource GroupRG containing Sentinel workspaceResource Groups blade
Workspace NameLog Analytics workspaceLog Analytics workspaces

Services & Required RBAC Roles

ServiceAzure RolePurpose
Azure MonitorMonitoring ReaderMetrics, activity logs, diagnostics
Log AnalyticsLog Analytics ReaderKQL queries against workspace
Microsoft SentinelMicrosoft Sentinel ResponderView data + manage incidents

Also add Microsoft Graph > SecurityEvents.Read.All (Application) + grant admin consent.

Setup Steps

  1. Register an app in Entra ID (can reuse your Defender registration). Copy Client ID and Tenant ID.
  2. Create a Client Secret. Copy the Value immediately.
  3. Navigate to the Resource Group > Access control (IAM) > add the role assignments above to the app's service principal.
  4. Add the Graph permission and grant admin consent.
  5. Paste all credentials into Zaun.

Use Sentinel Reader instead of Responder for strictly read-only access.


Google Cloud Platform

Services: Cloud Logging, IAM, Compute, Asset Inventory - single service account | Auth: OAuth2 / JWT

Required Credentials

FieldDescriptionWhere to Find
Service Account JSONKey file downloaded from GCP console (contains all fields below)IAM & Admin > Service Accounts > Keys
Project IDGCP project identifierProject selector or JSON project_id field
Client EmailService account emailAuto-extracted from JSON
Private KeyRSA private key (PEM)Auto-extracted from JSON
Token URIOAuth2 token endpointTypically https://oauth2.googleapis.com/token
Client IDNumeric client identifierAuto-extracted from JSON

Upload the full service account JSON file - Zaun auto-extracts all required fields.

Services & Required IAM Roles

ServiceIAM RolePurpose
Cloud Loggingroles/logging.viewerQuery Cloud Audit Logs
IAMroles/iam.securityReviewerList service accounts, keys, custom roles
Compute Engineroles/compute.viewerList VMs, firewall rules, VPC networks
Resource Managerroles/browserGet project metadata and IAM policies
Cloud Asset Inventoryroles/cloudasset.viewerSearch all resources and IAM bindings

All roles are read-only. The cloud-platform OAuth scope is used for token management; actual access is restricted by the IAM roles above.

Setup Steps

  1. In GCP Console > IAM & Admin > Service Accounts > Create Service Account. Name it (e.g. zaun-reader).
  2. Grant the five IAM roles listed above at the project level.
  3. Click the service account > Keys > Add Key > Create new key > JSON. Download the key file.
  4. Upload the JSON file in Zaun. Verify the auto-extracted Project ID is correct.
  5. Click Test Connection to verify Cloud Logging and IAM access.

Workload Identity Federation (Optional)

For organizations using Okta, Zaun supports Workload Identity Federation to eliminate long-lived service account keys. Instead of a JSON key, Zaun exchanges an Okta access token for short-lived GCP credentials via the STS API.

WIF setup requires a Workload Identity Pool and Provider configured in GCP. Contact [email protected] for guided setup.