Prerequisites
- An Infisical instance launched with all required configuration variables
- Access to the Infisical CLI or the ability to make API calls to the instance
- Network connectivity to the Infisical instance
Key Concepts
- Instance Initialization: Infisical requires configuration variables to be set during launch, after which the bootstrap process can be triggered.
- Instance Admin Machine Identity: The bootstrapping process creates a machine identity with instance-level admin privileges, which can be used to programmatically manage all aspects of the Infisical instance.
- Token Auth: The instance admin machine identity uses Token Auth, providing a JWT token that can be used directly to make authenticated requests to the Infisical API.
Bootstrap Methods
You can bootstrap an Infisical instance using the API, CLI, or Helm chart.Make a POST request to the bootstrap endpoint:Example using curl:
API Response Structure
The bootstrap process returns a JSON response with details about the created user, organization, and machine identity:Using the Instance Admin Machine Identity Token
The bootstrap process automatically creates a machine identity with Token Auth configured. The returned token has instance-level admin privileges (the highest level of access) and should be treated with the same security considerations as a root credential. The token enables full programmatic control of your Infisical instance and can be used in the following ways:1. Infrastructure Automation
Store the token securely for use with infrastructure automation tools. Due to the sensitive nature of this token, ensure it’s protected using appropriate secret management practices:Kubernetes Secret (with appropriate RBAC restrictions)
Environment Variable for Terraform
2. Programmatic Resource Management
Use the token to authenticate API calls for creating and managing Infisical resources. The token works exactly like any other Token Auth access token in the Infisical API:Important Notes
- Security Warning: The instance admin machine identity has the highest level of privileges in your Infisical deployment. The token should be treated with the utmost security and handled like a root credential. Unauthorized access to this token could compromise your entire Infisical instance.
- Security controls prevent privilege escalation: instance admin identities cannot be managed by non-instance admin users and identities
- The instance admin permission of the generated identity can be revoked later in the server admin panel if needed
- The generated admin user account can still be used for UI access if needed, or can be removed if you prefer to manage everything through the machine identity
- This process is designed to work with future Crossplane providers and the existing Terraform provider for full infrastructure-as-code capabilities
- All necessary configuration variables should be set during the initial launch of the Infisical instance