Authentication Storage
By default, pixi uses the system keyring to store credentials securely. If no keyring is available, credentials fall back to file storage.Default Authentication Sources
- System Keyring (preferred)
- File storage at
~/.rattler/credentials.json .netrcfile authentication
Override Authentication File
Force pixi to use a specific JSON file for authentication instead of the keyring.Path to authentication JSON file
Authentication File Format
The credentials file uses JSON format:Authentication Methods
Bearer Token Authentication
Used for token-based authentication with conda channels and PyPI.Basic HTTP Authentication
Username and password authentication for conda channels.Conda Token Authentication
Anaconda.org-style token authentication.TLS Configuration
tls-no-verify
Disable TLS certificate verification for all connections.When
true, disables TLS verification for conda and PyPIPyPI Implementation Details
Since uv doesn’t support global TLS verification disable, pixi automatically adds all configured PyPI index hosts to the trusted hosts list when
tls-no-verify is enabled. For the main PyPI index, files.pythonhosted.org is also added.pypi-config.allow-insecure-host.
tls-root-certs
Control which TLS root certificates are used for HTTPS connections.Available options:
webpki: Bundled Mozilla root certificates (most portable)native: System certificate store (required for corporate CAs)all: Both bundled and system certificates
This setting only affects
rustls-tls builds (standalone binaries from GitHub releases). For native-tls builds (conda-forge packages), the system’s TLS library always uses system certificates.Using CLI Authentication Commands
Pixi provides CLI commands to manage authentication:Environment Variables
RATTLER_AUTH_FILE
Overrides the default authentication file location.Best Practices
Security Recommendations
- Use system keyring when available for maximum security
- Restrict file permissions for credential files:
- Use environment-specific tokens rather than sharing credentials
- Rotate tokens regularly for production systems
- Never commit credentials to version control
Corporate Environments
For corporate networks with custom CA certificates:CI/CD Pipelines
For automated environments:Troubleshooting
Authentication Not Working
- Check credential format in JSON file
- Verify file permissions (should be readable)
- Ensure URL pattern matches your channel URL
- Use
pixi info -vvvto see authentication attempts
TLS Certificate Errors
- For corporate CAs: Use
tls-root-certs = "native" - For self-signed certs: Add to
pypi-config.allow-insecure-host - As last resort: Use
tls-no-verify = true(not recommended)