Skip to main content
Aurora supports multiple cloud providers, allowing you to manage infrastructure across GCP, AWS, Azure, Scaleway, Tailscale, and OVH from a single interface.

Supported Cloud Providers

Google Cloud (GCP)

OAuth 2.0 authentication with full gcloud SDK support

Amazon Web Services (AWS)

IAM Role with External ID for secure access

Microsoft Azure

Service Principal authentication with Azure CLI

Scaleway

API key authentication for Scaleway resources

Tailscale

API key for private network management

OVH

OAuth 2.0 multi-region support (EU, CA, US)
OVH support is feature-flagged. Enable with FEATURE_FLAG_OVH_ENABLED=true in your environment.

Architecture

Connector System

Each cloud provider has a dedicated connector in server/connectors/:

Authentication Flow

1

User initiates OAuth

User clicks “Connect” button in UI for a provider (e.g., GCP)
2

Backend redirects to provider

Flask route /api/auth/gcp redirects to provider’s OAuth consent page
3

User grants permissions

User approves requested scopes (e.g., https://www.googleapis.com/auth/cloud-platform)
4

Provider redirects back

Callback route /api/auth/gcp/callback receives authorization code
5

Backend exchanges for tokens

Connector exchanges code for access token and refresh token
6

Tokens stored in Vault

Credentials saved to HashiCorp Vault at kv/data/aurora/users/{user_id}/gcp

Credential Storage

All user credentials are stored in HashiCorp Vault (not in the database):
See Vault Secrets for configuration details.

Cloud Tool Execution

The cloud_tool is Aurora’s unified interface for executing commands across all cloud providers:

Command Execution Examples

Read-Only Command Detection

Aurora categorizes commands as read-only or write:

User Workflows

Connecting a Cloud Provider

  1. Navigate to Connectors page (/connectors)
  2. Click “Connect” next to your cloud provider
  3. Complete OAuth flow or enter API credentials
  4. Select default project/account (optional)
  5. Credentials are stored in Vault and ready to use
Connectors page with connection status for each provider

Executing Commands via Chat

In Agent Mode:
In Ask Mode:

Multi-Cloud Queries

Aurora can execute commands across multiple clouds in a single conversation:

Provider Preference

Set provider preference to scope commands:
The AI will only use tools for the specified providers.

Provider-Specific Features

OAuth Scopes

  • https://www.googleapis.com/auth/cloud-platform (full access)
  • https://www.googleapis.com/auth/compute.readonly (read-only compute)

Project Selection

Users can select a default project or specify per-command:

Service Account

Server uses a service account for background operations (e.g., Terraform):

Security

Credential Isolation

  • All credentials stored in Vault (not database)
  • Per-user credential isolation
  • Row-Level Security (RLS) on user_tokens table
  • Refresh tokens rotated on each use

Command Validation

Confirmation Flow

Destructive operations require user confirmation:
1

AI detects destructive command

Command matches pattern: delete, terminate, destroy, etc.
2

Backend requests confirmation

Returns {"requires_confirmation": true, "confirmation_id": "conf_abc123"}
3

UI shows confirmation dialog

User reviews command and clicks “Confirm” or “Cancel”
4

User confirms

Frontend sends confirmation_response via WebSocket with confirmation_id
5

Backend executes command

Command runs with the confirmation ID passed back to cloud_tool

API Reference

Connect Provider

Initiates OAuth flow for provider. Redirects to provider’s consent page.

OAuth Callback

Receives OAuth callback with authorization code. Exchanges for tokens and stores in Vault.

Get Connected Providers

Returns list of providers the user has connected.

Disconnect Provider

Removes credentials from Vault and database.

AI Chat Interface

Execute cloud commands via natural language chat

Incident Investigation

Automatic diagnostics across all connected cloud providers