Skip to main content

CodeQL 작업 영역 설정

          CodeQL와 함께 작업할 때 표준 라이브러리와 쿼리에 대한 액세스가 필요합니다.

작업 영역 설정 CodeQL

익스텐션에 github/codeql 리포지토리의 표준 라이브러리 및 쿼리에 대한 액세스 권한을 부여하는 방법에는 여러 가지가 있습니다.

  • 형식CodeQL으로 codeql-custom-queries-LANGUAGE 명명된 일련의 디렉터리를 포함하는 시작 작업 영역을 사용합니다. 표준 라이브러리를 사용하여 각 언어에 대한 사용자 지정 쿼리 개발을 시작할 준비가 되었습니다. 시작하기 위한 몇 가지 예제 쿼리도 있습니다. 이 방법을 사용하는 것이 좋습니다.

  • 에 대한 기존 작업 영역을 업데이트합니다 CodeQL. 이는 고급 사용자에게 권장됩니다.

  •         CodeQL CLI 사용자는 추출된 CodeQL CLI 보관 파일을 포함하는 디렉터리를 열 수 있습니다.
    

참고

          CodeQL 리포지토리는 시작 작업 영역에서 하위 코드로 포함됩니다. 정기적으로 하위 `git submodule update --remote` 모듈을 최신 상태로 유지하고 최신 버전의 VS Code 확장과 CodeQL CLI호환되는지 확인해야 합니다.
  1.        [vscode-codeql-starter 리포지토리](https://github.com/github/vscode-codeql-starter/?ref_product=code-scanning&ref_type=engagement&ref_style=text)를 컴퓨터에 복제합니다. 
           `git clone --recursive`를 사용하거나 복제 후 `git submodule update --init --remote`를 사용하여 하위 모듈을 포함해야 합니다.
    
  2.        VS Code에서 **파일**을 클릭한 후, **파일에서 작업 영역 열기...** 를 선택하여 작업 영역 리포지토리의 체크아웃에서 `vscode-codeql-starter.code-workspace` 파일을 엽니다.
    

옵션 2 (고급): 기존 작업 영역에 대한 CodeQL 업데이트

  1.        VS Code에서 **파일**을 선택한 다음 **폴더를 작업 영역에 추가...** 를 클릭하여 [리포지토리의 로컬 체크아웃CodeQL](https://github.com/github/codeql)을 찾습니다.
    
  2.        **새 폴더** 또는 **작업 영역에 폴더 추가...** 옵션을 사용하여 사용자 지정 쿼리 및 라이브러리를 저장할 대상 언어당 하나의 새 디렉터리를 만듭니다.
    
  3. 각 대상 언어 디렉터리에 qlpack.yml 파일을 만듭니다(maingithub/codeql 분기에 이미 이러한 파일이 있음). 그러면 해당 디렉터리의 대상 언어와 해당 종속성이 무엇인지 알 CodeQL CLI 수 있습니다. CodeQL 는 열려 있는 모든 작업 영역 디렉터리 또는 사용자의 검색 경로에서 종속성을 찾습니다.

    예를 들어 CodeQL라는 사용자 지정 디렉터리가 C++의 CodeQL 표준 라이브러리에 의존하도록 하려면, 다음 내용이 포함된 qlpack.yml 파일을 생성합니다.

    name: my-custom-cpp-pack
    version: 0.0.0
    libraryPathDependencies: codeql/cpp-all
    
           `qlpack.yml` 파일을 추가해야 하는 이유에 대한 자세한 내용은 [AUTOTITLE](/code-security/codeql-cli/codeql-cli-reference/about-codeql-packs)을(를) 참조하세요.
    

옵션 3: 추출된 CodeQL CLI 보관 파일을 포함하는 디렉터리 열기

참고

이 옵션의 경우, CodeQL CLI를 설정해야 합니다. 자세한 내용은 CodeQL CLI 설정하기을(를) 참조하세요.

          VS Code 에서 CodeQL CLI 디렉터리를 열고, 여기서 CodeQL 디렉터리를 생성하십시오(예: `codeql-home`).