Skip to main content

Connect Cloud Accounts

Cloud integrations are organization-scoped. They provide the live infrastructure context used by:
  • Cloud compliance scans
  • Cloud monitor findings
  • Cloud resource inventory and import
  • Agent sessions that need cloud-side context
Go to Settings -> Integrations -> Cloud to start.

Current Provider Paths

Principle: Read First, Write Never

For onboarding and scanning, Cloudgeni is designed around read access to your cloud estate. The product reads live state, runs scans, and uses that context to open repository changes later. It is not supposed to apply infrastructure changes directly in your cloud account.

AWS

The current UI exposes the manual credential path. Use a dedicated IAM user with read-only access:
Take the AccessKeyId and SecretAccessKey into the AWS integration form.

Azure

As of March 11, 2026, the supported path is Quick Connect. The codebase still contains a manual credential screen, but that path is explicitly marked deprecated after October 1, 2025 and should not be your default recommendation. Quick Connect creates a subscription-scoped service principal with read-only roles for resource inventory, security posture, Log Analytics access, Terraform state discovery, and Azure Cost Management summaries. The Cost & Billing views need Cost Management Reader; plain Reader access can discover resources while still returning no actual billing rows. If you need to understand the manual privilege shape, it is a subscription-scoped service principal with this role set:
Capture the full create-for-rbac output before extracting fields: the client secret (password) is returned exactly once and cannot be retrieved later. The manual credential form needs APP_ID (client ID), CLIENT_SECRET, and TENANT_ID. Passing --assignee-object-id with --assignee-principal-type ServicePrincipal avoids the “principal not found” failures that can occur when a role assignment races Entra ID replication right after the principal is created. Use Quick Connect in the product unless you are validating a legacy fallback.

GCP

The current app supports two modes:
  • Keyless impersonation
  • Service account key upload
Keyless impersonation is the better default because Cloudgeni requests short-lived tokens on demand instead of storing a reusable key. The exact setup flow in the app uses this platform service account: cloudgeni-platform-sa@cloudgeni-production.iam.gserviceaccount.com Minimal impersonation example:

OCI

OCI currently uses the manual setup path in the UI. You need a dedicated user, an API key pair, and a policy that grants read access to the tenancy or compartment you want Cloudgeni to inspect.
Use a dedicated user in that group, upload the public API key in OCI, and then enter the user OCID, tenancy OCID, fingerprint, and private key in the Cloudgeni form.

After The Account Is Connected

The next useful actions are:

What To Check If Setup Fails

  • Integration is present but not useful: verify the account really has enough read scope for the resources you expect
  • No findings or inventory appear: run a sync or scan from the integration page after the connection becomes active
  • Agent work lacks cloud context: make sure you selected the cloud account when launching the session, not just connected it earlier