GitHub Copilot의 네트워크 설정을 사용하면 HTTP 프록시를 통해 GitHub에 연결하고 사용자 지정 인증서를 사용할 수 있습니다.
에 대한 프록시 설정 Copilot
기본적으로 Copilot는 보안 HTTPS 연결을 통해 사용자 환경에서 GitHub의 서버에 직접 연결됩니다. Copilot를 사용하기 위해 추가 네트워크 설정을 반드시 구성할 필요는 없습니다.
일부 네트워크에서는 HTTP 프록시 서버를 사용하여 인터넷 트래픽을 가로채서 의도한 위치로 전송합니다. 기업에서는 의심스러운 트래픽을 탐지하거나 네트워크에 유입되는 콘텐츠를 제한하기 위해 HTTP 프록시를 사용하는 경우가 많습니다. 회사 네트워크에서 작업하는 경우 HTTP 프록시를 통해 연결하도록 구성 Copilot 해야 할 수 있습니다.
참고
프록시 서버 또는 방화벽의 관리자도 예상대로 작동하도록 네트워크 설정을 Copilot 구성해야 합니다. Copilot 허용 목록 참조 참조하세요.
Copilot 는 기본 HTTP 프록시 설정을 지원합니다. 프록시 Copilot 에 인증해야 하는 경우 Kerberos를 사용하여 기본 인증 또는 인증을 지원합니다. 프록시 URL이 https://시작되면 프록시는 현재 지원되지 않습니다.
편집 Copilot 기에서 프록시를 직접 구성하지 않으면 프록시 URL이 가장 높은 우선 순위에서 가장 낮은 우선 순위로 나열된 다음 환경 변수 중 하나에서 설정되었는지 확인합니다.
HTTPS_PROXYhttps_proxyHTTP_PROXYhttp_proxy
참고
이러한 변수 중 하나를 사용하여 표준 HTTP 프록시의 URL을 저장할 수 있습니다. 표준 사용 http 에서 이러한 변수의 일부 및 https 부분은 프록시 자체의 URL이 아니라 수행되는 요청 유형을 나타냅니다.
Copilot 는 이 규칙을 따르지 않으며 HTTP 및 HTTPS 요청 모두에 대한 프록시로 우선 순위가 가장 높은 변수에 저장된 URL을 사용합니다.
Kerberos를 사용한 인증
Kerberos는 사용자와 서비스가 서로의 신원을 증명할 수 있는 인증 프로토콜입니다. 사용자가 성공적으로 인증하면 인증 서비스에서 일정 기간 동안 서비스에 대한 access 제공하는 티켓을 사용자에게 부여합니다. 네트워크 관리자는 더 안전하고 암호화되지 않은 자격 증명을 전송할 필요가 없기 때문에 기본 인증보다 Kerberos를 선호할 수 있습니다.
GitHub Copilot 는 Kerberos를 사용하여 프록시에 대한 인증을 지원합니다. Kerberos를 사용하려면 컴퓨터에 설치된 운영 체제에 적합한 krb5 라이브러리와 프록시 서비스에 대한 활성 티켓(kinit 명령을 사용하여 수동으로 만들거나 다른 애플리케이션에 의해 생성됨)이 있어야 합니다. 프록시 서비스에 대한 티켓이 있는지 확인하려면 klist 명령을 사용할 수 있습니다.
Kerberos는 SPN(서비스 주체 이름)을 사용하여 서비스 인스턴스를 고유하게 식별합니다. 기본적으로 SPN은 프록시 URL에서 파생됩니다. 예를 들어 프록시 URL이 http://proxy.example.com:3128인 경우 SPN은 HTTP/proxy.example.com입니다.
프록시에 대한 기본 SPN이 올바르지 않은 경우 JetBrains IDE 안 VS Code 과에서 SPN을 재정의할 수 있습니다. 현재 .에서 Visual Studio기본 SPN을 재정의할 수 없습니다. 그러나 환경 변수 AGENT_KERBEROS_SERVICE_PRINCIPAL를 사용하여 VS Code 및 JetBrains IDE에 사용되는 SPN을 재정의할 수 있습니다.
사용자 지정 인증서
Copilot 는 사용자의 컴퓨터에 설치된 사용자 지정 SSL 인증서를 읽을 수 있습니다. 이렇게 하면 프록시 서버를 '보안 연결의 Copilot의도된 수신자로 식별할 수 있으므로 네트워크 트래픽을 검사할 수 있습니다. 사용자 지정 인증서가 없으면 HTTP 프록시를 사용하여 트래픽의 내용을 검사하지 않고도 연결을 모니터링, 라우팅 및 종료 Copilot할 수 있습니다.
Copilot 는 운영 체제의 신뢰 저장소에서 인증서를 읽습니다. 또한 표준 Node.js 환경 변수 NODE_EXTRA_CA_CERTS로 지정된 파일에서 추가 인증서를 읽습니다. 자세한 내용은 Node.js 설명서 항목을 참조하세요.
Copilot 는 프록시가 사용자의 컴퓨터에서 직접 구성되었는지 여부에 관계없이 인증서를 읽을 수 있습니다. 이렇게 하면 Copilot 투명 프록시 또는 Zscaler와 같은 설정을 지원할 수 있습니다.
다음 단계
편집기에서 네트워크 설정을 구성하는 방법을 알아보려면 GitHub Copilot에 대한 네트워크 설정 구성 참조하세요.