Overview
Formal integrates with cloud providers to enable automatic resource discovery, cloud-native deployments, and secure access to cloud services. Cloud integrations eliminate manual resource configuration and keep your Formal inventory in sync with your cloud infrastructure.Supported Cloud Providers
AWS
RDS, Redshift, EKS, EC2, ECS, S3
GCP
Coming soon
Azure
Coming soon
AWS Integration
The AWS Cloud Integration uses cross-account IAM roles to securely access your AWS infrastructure for resource autodiscovery and log forwarding.Features
RDS Autodiscovery
RDS Autodiscovery
Automatically discover PostgreSQL, MySQL, and MongoDB RDS instances and add them as Formal resources.
Redshift Autodiscovery
Redshift Autodiscovery
Discover Redshift clusters and data warehouses.
EKS Autodiscovery
EKS Autodiscovery
Discover EKS clusters for Kubernetes access control.
EC2 Autodiscovery
EC2 Autodiscovery
Discover EC2 instances for SSH access.
ECS Autodiscovery
ECS Autodiscovery
Discover ECS clusters, services, and containers for SSH access via the Desktop App.
S3 Bucket Autodiscovery
S3 Bucket Autodiscovery
Discover S3 buckets for access via the Desktop App.
S3 Log Forwarding
S3 Log Forwarding
Forward Formal Connector logs to S3 buckets for long-term storage and compliance.
Architecture
Formal uses AWS’s Cross-Account IAM Role architecture:- CloudFormation Stack: Deploys an IAM role in your AWS account
- IAM Role: Grants Formal specific, scoped permissions
- External ID: Unique identifier prevents unauthorized access
- Role Chaining: Formal uses IAM User → IAM Role → Your IAM Role for added security
Supported Regions
The CloudFormation stack can be deployed in:us-east-1,us-east-2,us-west-1,us-west-2eu-central-1,eu-west-1,eu-west-2,eu-west-3
Setup
- Web Console
- Terraform
1
Navigate to Cloud Accounts
Go to Cloud Accounts
2
Add Integration
Click Add Integration
3
Select AWS
Choose AWS as your cloud provider
4
Deploy CloudFormation
Click the provided link to deploy the CloudFormation template in your AWS accountThe template creates an IAM role with the necessary permissions
5
Configure Permissions
Enable the features you need:
- RDS Autodiscovery
- Redshift Autodiscovery
- EKS Autodiscovery
- EC2 Autodiscovery
- ECS Autodiscovery
- S3 Autodiscovery
- S3 Write Access (for log forwarding)
6
Complete Setup
Once CloudFormation deployment completes, your AWS integration is active
CloudFormation Parameters
| Parameter | Description | Default |
|---|---|---|
EnableRDSAutodiscovery | Discover RDS databases (PostgreSQL, MySQL, MongoDB) | false |
EnableRedshiftAutodiscovery | Discover Redshift clusters | false |
EnableEKSAutodiscovery | Discover EKS clusters | false |
EnableEC2Autodiscovery | Discover EC2 instances | false |
EnableECSAutodiscovery | Discover ECS clusters and containers | false |
EnableS3Autodiscovery | Discover S3 buckets | false |
AllowS3Access | Allow log forwarding to S3 | false |
S3BucketARN | S3 bucket ARN for logs (if AllowS3Access is true) | "" |
Versioning
The CloudFormation template is versioned for stability:- Predictable IAM permissions
- Controlled feature adoption
- Easier compliance auditing
- Prevents unexpected changes
Using latest:
Security
Formal implements multiple security layers:- Role Chaining: IAM User → IAM Role in Formal account → IAM Role in your account
- External ID: Unique per-customer identifier prevents cross-tenant access
- Least Privilege: CloudFormation grants only required permissions
- Scoped Permissions: Enable only the features you need
Resource Autodiscovery
Once the integration is active:- Automatic Discovery: Formal scans your AWS account for resources
- Resource Creation: Discovered resources appear in Resources
- Continuous Sync: New resources are automatically added
- Tagging: AWS resource tags are synced to Formal
- RDS instance
prod-postgres-1→ Formal resourceprod-postgres-1 - EKS cluster
production-eks→ Formal resourceproduction-eks - EC2 instance
i-abc123→ Formal resourceec2-i-abc123
Manual Resource Configuration
Autodiscovered resources are read-only in Formal by default. To customize:- Create a manual resource with the same hostname
- Configure native users, policies, etc.
- Formal prioritizes manual configuration over autodiscovered settings
GCP Integration (Coming Soon)
Features planned:- Cloud SQL autodiscovery
- GKE cluster autodiscovery
- Compute Engine autodiscovery
- BigQuery resource management
Azure Integration (Coming Soon)
Features planned:- Azure SQL autodiscovery
- AKS cluster autodiscovery
- VM autodiscovery
- Cosmos DB integration
Use Cases
Centralized Resource Management
Automatically maintain an inventory of all databases and infrastructure:Compliance Logging
Forward all Connector logs to S3 for long-term retention:Multi-Account Strategy
Integrate multiple AWS accounts:Troubleshooting
CloudFormation deployment fails
CloudFormation deployment fails
Possible causes:
- Insufficient IAM permissions to create roles
- Stack name conflict
- Region not supported
- Ensure deploying user has IAM role creation permissions
- Use unique stack name provided by Formal
- Deploy in supported region
Resources not discovered
Resources not discovered
Possible causes:
- Autodiscovery not enabled for that resource type
- Resources in unsupported region
- IAM permissions insufficient
- Verify autodiscovery toggle is enabled in Formal console
- Check resources exist in AWS
- Review CloudFormation IAM role permissions
- Wait a few minutes for initial scan
S3 log forwarding not working
S3 log forwarding not working
Possible causes:
- S3 bucket ARN incorrect
- IAM role lacks S3 permissions
- Log integration not configured
- Verify
s3_bucket_arnmatches your bucket - Ensure
allow_s3_accessis enabled - Create a Log Integration pointing to this cloud integration
Best Practices
Pin Template Version
Pin Template Version
Use specific version numbers instead of
latest for production to ensure predictable behavior.Enable Only What You Need
Enable Only What You Need
Only enable autodiscovery for resources you want to manage through Formal to minimize IAM permissions.
Multi-Account Structure
Multi-Account Structure
Create separate integrations for each AWS account (production, staging, dev) for better isolation.
Regular Audits
Regular Audits
Periodically review autodiscovered resources to ensure they match your actual infrastructure.