info:To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/product/ux/technical-writing/#assignments
---
# Configuring Custom Certificate Authority
# Configure Custom Certificate Authority
This guide helps users in enterprise environments configure the GitLab for VS Code extension to work with custom Certificate Authorities (CAS).
## Overview
In controlled enterprise environments, organizations often use custom Certificate Authorities. The GitLab for VS Code extension needs to trust these certificates to communicate with your GitLab instance.
## Important: Download the Full Certificate Chain
WARNING:
Downloading only the end-entity certificate will not work.
**Correct Approach:** You must download the **complete certificate chain**, including:
- Root CA certificate
- Any intermediate CA certificates
- Server certificate (optional, usually handled automatically)
### How to Get the Full Certificate Chain
#### Method 1: From Your IT/Security Team (Recommended)
Contact your IT or security team and request:
- The complete certificate chain in PEM format
- Or individual CA certificates (root + intermediates)
#### Method 2: Export from Browser
**Chrome/Edge:**
1. Navigate to your GitLab instance
1. Click the padlock icon in the address bar
1. Click "Connection is secure" > "Certificate is valid"
1. Go to the "Certification Path" tab
1. Export each certificate in the chain starting from the root
**Firefox:**
1. Navigate to your GitLab instance
1. Click the padlock > "Connection secure" > "More information"
1. Click "View Certificate"
1. Download each certificate in the chain (PEM format)
## Configuration Methods
### Option 1: System Certificate Store (Easiest)
**Prerequisites:**
- Your GitLab Workflow extension version is 6.51.1 or later.
- Your VS Code version is 1.101.2 (May 2025) or later.
- The `gitlab.ca` setting is not used.
If your organization installs trusted Certificate Authorities at the operating system level, the GitLab for VS Code extension will automatically trust them through the underlying Node.js and VS Code runtime.
No additional GitLab extension settings are required in this case.
**When this works well:**
- Corporate-managed devices with pre-installed root and intermediate CAS
- Environments where other HTTPS tools already work without custom CA configuration
If certificate errors persist, use the `gitlab.ca` setting described below.
### Option 2: Custom Certificate File
Specify a certificate file directly:
**VS Code Settings:**
```json
{
"gitlab.ca":"/path/to/ca-bundle.pem"
}
```
**Certificate Bundle Format:**
Your `ca-bundle.pem` should contain all certificates in the chain:
For more information on configuring the GitLab for VS Code extension to work with custom Certificate Authorities, see [Use the VS Code extension with custom and self-signed certificates](https://docs.gitlab.com/editor_extensions/visual_studio_code/ssl/).