Skip to main content

์ด ๋ฒ„์ „์˜ GitHub Enterprise Server๋Š” ๋‹ค์Œ ๋‚ ์งœ์— ์ค‘๋‹จ๋ฉ๋‹ˆ๋‹ค. 2026-03-17. ์ค‘์š”ํ•œ ๋ณด์•ˆ ๋ฌธ์ œ์— ๋Œ€ํ•ด์„œ๋„ ํŒจ์น˜ ๋ฆด๋ฆฌ์Šค๊ฐ€ ์ด๋ฃจ์–ด์ง€์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋” ๋›ฐ์–ด๋‚œ ์„ฑ๋Šฅ, ํ–ฅ์ƒ๋œ ๋ณด์•ˆ, ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์„ ์œ„ํ•ด ์ตœ์‹  ๋ฒ„์ „์˜ GitHub Enterprise Server๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•ฉ๋‹ˆ๋‹ค. ์—…๊ทธ๋ ˆ์ด๋“œ์— ๋Œ€ํ•œ ๋„์›€๋ง์€ GitHub Enterprise ์ง€์›์— ๋ฌธ์˜ํ•˜์„ธ์š”.

github ์—…๋กœ๋“œ ๊ฒฐ๊ณผ

SARIF ํŒŒ์ผ์„ GitHub ์ฝ”๋“œ ๊ฒ€์‚ฌ์— ์—…๋กœ๋“œํ•ฉ๋‹ˆ๋‹ค.

๋ˆ„๊ฐ€ ์ด ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‚˜์š”?

CodeQL์€(๋Š”) ๋‹ค์Œ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ์œ ํ˜•์— ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • GitHub Advanced Security๋ฅผ ์ง€์›ํ•˜๋Š” ์กฐ์ง ์†Œ์œ  ๋ฆฌํฌ์ง€ํ† ๋ฆฌ

์ด ๋ฌธ์„œ์˜ ๋‚ด์šฉ

์ฐธ๊ณ  ํ•ญ๋ชฉ

์ด ์ฝ˜ํ…์ธ ๋Š” CodeQL CLI์˜ ์ตœ์‹  ๋ฆด๋ฆฌ์Šค์— ๋Œ€ํ•ด ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค. ์ด ์š”์†Œ์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ https://github.com/github/codeql-cli-binaries/releases์„(๋ฅผ) ์ฐธ์กฐํ•˜์„ธ์š”.

์ด์ „ ๋ฆด๋ฆฌ์Šค์—์„œ ์ด ๋ช…๋ น์— ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์˜ต์…˜์˜ ์„ธ๋ถ€ ์ •๋ณด๋ฅผ ๋ณด๋ ค๋ฉด ํ„ฐ๋ฏธ๋„์—์„œ ์˜ต์…˜์„ ์‚ฌ์šฉํ•˜์—ฌ --help ๋ช…๋ น์„ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

๊ฐœ์š”

Shell
codeql github upload-results --sarif=<file> [--github-auth-stdin] [--github-url=<url>] [--repository=<repository-name>] [--ref=<ref>] [--commit=<commit>] [--checkout-path=<path>] <options>...

์„ค๋ช…

SARIF ํŒŒ์ผ์„ GitHub ์ฝ”๋“œ ๊ฒ€์‚ฌ์— ์—…๋กœ๋“œํ•ฉ๋‹ˆ๋‹ค.

GitHub์— CodeQL ๋ถ„์„ ๊ฒฐ๊ณผ ์—…๋กœ๋“œ์„(๋ฅผ) ์ฐธ์กฐํ•˜์„ธ์š”.

GitHub ์•ฑ ํ† ํฐ ๋˜๋Š” ๊ฐœ์ธ์šฉ ์•ก์„ธ์Šค ํ† ํฐ์„ ์„ค์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋ณด์•ˆ ๋ชจ๋ฒ” ์‚ฌ๋ก€๋Š” --github-auth-stdin ํ”Œ๋ž˜๊ทธ๋ฅผ ์„ค์ •ํ•˜๊ณ  ํ‘œ์ค€ ์ž…๋ ฅ์„ ํ†ตํ•ด ํ† ํฐ์„ ๋ช…๋ น์— ์ „๋‹ฌํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋˜๋Š” GITHUB_TOKEN ํ™˜๊ฒฝ ๋ณ€์ˆ˜๋ฅผ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ํ† ํฐ์—๋Š” security_events ๋ฒ”์œ„๊ฐ€ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์˜ต์…˜

๊ธฐ๋ณธ ์˜ต์…˜

-s, --sarif=<file>

[ํ•„์ˆ˜] ์‚ฌ์šฉํ•  SARIF ํŒŒ์ผ์˜ ๊ฒฝ๋กœ์ž…๋‹ˆ๋‹ค. ์ด๋Š” github.com์— ์—…๋กœ๋“œํ•˜๊ธฐ ์œ„ํ•ด --format sarif-latest์„(๋ฅผ) ์‚ฌ์šฉํ•œ codeql ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋ถ„์„(๋˜๋Š” codeql ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํ•ด์„ ๊ฒฐ๊ณผ)์˜ ์ถœ๋ ฅ์ด๊ฑฐ๋‚˜ GitHub Enterprise Server ์ธ์Šคํ„ด์Šค์— ๋Œ€ํ•ด ์ง€์›๋˜๋Š” ์ ์ ˆํ•œ ํ˜•์‹ ํƒœ๊ทธ์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค(ํ•ด๋‹น ๋ฆด๋ฆฌ์Šค์—์„œ ์ง€์›ํ•˜๋Š” SARIF ๋ฒ„์ „์€ ์ฝ”๋“œ ๊ฒ€์‚ฌ์— ๋Œ€ํ•œ SARIF ์ง€์› ์ฐธ์กฐ).

-r, --repository=<repository-name>

์—…๋กœ๋“œ๋ฅผ ์œ„ํ•œ ์—”๋“œํฌ์ธํŠธ๋กœ ์‚ฌ์šฉํ•  GitHub ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ์†Œ์œ ์ž ๋ฐ ์ด๋ฆ„(์˜ˆ: github/octocat)์ž…๋‹ˆ๋‹ค. ์ƒ๋žต๋œ ๊ฒฝ์šฐ CLI๋Š” ์ฒดํฌ ์•„์›ƒ ๊ฒฝ๋กœ์—์„œ ์ด์— ๋Œ€ํ•œ ์ž๋™ ๊ฐ์ง€๋ฅผ ์‹œ๋„ํ•ฉ๋‹ˆ๋‹ค.

-f, --ref=<ref>

๋ถ„์„๋œ ref์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค. ์ด ref๊ฐ€ pull request ๋ณ‘ํ•ฉ ์ปค๋ฐ‹์ธ ๊ฒฝ์šฐ refs/pull/1234/merge ๋˜๋Š” _refs/pull/1234/head_๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค(์ด ์ปค๋ฐ‹์ด PR์˜ HEAD ๋˜๋Š” MERGE ์ปค๋ฐ‹์— ํ•ด๋‹นํ•˜๋Š”์ง€ ์—ฌ๋ถ€์— ๋”ฐ๋ผ ๋‹ค๋ฆ„). ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด _refs/heads/branch-name_์˜ ๋ถ„๊ธฐ์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ƒ๋žต๋œ ๊ฒฝ์šฐ CLI๋Š” ์ฒดํฌ ์•„์›ƒ ๊ฒฝ๋กœ์˜ ํ˜„์žฌ ๋ถ„๊ธฐ(์žˆ๋Š” ๊ฒฝ์šฐ)์—์„œ ์ž๋™์œผ๋กœ ref์˜ ์ด๋ฆ„์„ ์ฑ„์šฐ๋Š” ์‹œ๋„๋ฅผ ํ•ฉ๋‹ˆ๋‹ค.

-c, --commit=<commit>

๋ถ„์„๋œ ์ปค๋ฐ‹์˜ SHA์ž…๋‹ˆ๋‹ค. ์ƒ๋žต๋œ ๊ฒฝ์šฐ CLI๋Š” ์ฒดํฌ ์•„์›ƒ ๊ฒฝ๋กœ์—์„œ ์ด์— ๋Œ€ํ•œ ์ž๋™ ๊ฐ์ง€๋ฅผ ์‹œ๋„ํ•ฉ๋‹ˆ๋‹ค.

-p, --checkout-path=<path>

์ฒดํฌ ์•„์›ƒ ๊ฒฝ๋กœ์ž…๋‹ˆ๋‹ค. ๊ธฐ๋ณธ๊ฐ’์€ ํ˜„์žฌ ์ž‘์—… ๋””๋ ‰ํ„ฐ๋ฆฌ์ž…๋‹ˆ๋‹ค.

--merge

[๊ณ ๊ธ‰] ๋‘˜ ์ด์ƒ์˜ SARIF ํŒŒ์ผ์„ ์ง€์ •ํ•˜๊ณ  ์—…๋กœ๋“œํ•˜๊ธฐ ์ „์— ๋‹จ์ผ ํŒŒ์ผ๋กœ ๋ณ‘ํ•ฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด์ „ ๋ฒ„์ „๊ณผ์˜ ํ˜ธํ™˜์„ฑ์„ ์œ„ํ•ด์„œ๋งŒ ๊ถŒ์žฅ๋ฉ๋‹ˆ๋‹ค. ์ƒˆ ๋ถ„์„์˜ ๊ฒฝ์šฐ ๋ฒ”์ฃผ๊ฐ€ ๋‹ค๋ฅธ ๋‘ ๊ฐœ์˜ ๋ณ„๋„ SARIF ํŒŒ์ผ์„ ์—…๋กœ๋“œํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. ์ด ์˜ต์…˜์€ CodeQL์—์„œ ์ƒ์„ฑ๋œ SARIF ํŒŒ์ผ๊ณผ SARIF ๋ฒ„์ „ 2.1.0(CodeQL์—์„œ ์‚ฌ์šฉํ•˜๋Š” ๊ธฐ๋ณธ ๋ฒ„์ „์˜ SARIF)๊ณผ ํ•จ๊ป˜ํ•  ๋•Œ๋งŒ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

--no-wait-for-processing

๊ธฐ๋ณธ์ ์œผ๋กœ CLI๋Š” GitHub๊ฐ€ SARIF ํŒŒ์ผ์„ ์ตœ๋Œ€ 2๋ถ„ ๋™์•ˆ ์ฒ˜๋ฆฌํ•  ๋•Œ๊นŒ์ง€ ๊ธฐ๋‹ค๋ ธ๋‹ค๊ฐ€ ๋ถ„์„ ๊ฒฐ๊ณผ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๋™์•ˆ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•œ ๊ฒฝ์šฐ 0์ด ์•„๋‹Œ ์ข…๋ฃŒ ์ฝ”๋“œ๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. --wait-for-processing-timeout์„ ์‚ฌ์šฉํ•˜์—ฌ CLI๊ฐ€ ๋Œ€๊ธฐํ•˜๋Š” ์‹œ๊ฐ„์„ ์‚ฌ์šฉ์ž ์ •์˜ํ•˜๊ฑฐ๋‚˜ --no-wait-for-processing์„ ์‚ฌ์šฉํ•˜์—ฌ ๊ธฐ๋Šฅ์„ ๋น„ํ™œ์„ฑํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

--wait-for-processing-timeout=<waitForProcessingTimeout>

์—…๋กœ๋“œ๋œ SARIF ํŒŒ์ผ์ด GitHub์—์„œ ์ฒ˜๋ฆฌ๋  ๋•Œ๊นŒ์ง€ CLI๊ฐ€ ๋Œ€๊ธฐํ•˜๋Š” ์ตœ๋Œ€ ์‹œ๊ฐ„(์ดˆ)์ž…๋‹ˆ๋‹ค. ๊ธฐ๋ณธ๊ฐ’์€ 120์ดˆ(2๋ถ„)์ž…๋‹ˆ๋‹ค. ์ด ์˜ต์…˜์€ --wait-for-processing์„ ์‚ฌ์šฉํ•˜๋„๋ก ์„ค์ •ํ•œ ๊ฒฝ์šฐ์—๋งŒ ์œ ํšจํ•ฉ๋‹ˆ๋‹ค.

--format=<fmt>

์ถœ๋ ฅ ํ˜•์‹์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์Œ์„ ์„ ํƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

text(๊ธฐ๋ณธ๊ฐ’): SARIF ์—…๋กœ๋“œ์˜ ์ƒํƒœ๋ฅผ ์ถ”์ ํ•˜๋Š” URL์„ ์ธ์‡„ํ•ฉ๋‹ˆ๋‹ค.

json: SARIF ์—…๋กœ๋“œ API ์š”์ฒญ์˜ ์‘๋‹ต ๋ณธ๋ฌธ์„ ์ธ์‡„ํ•ฉ๋‹ˆ๋‹ค.

์ฝ”๋“œ ๊ฒ€์ƒ‰์— ๋Œ€ํ•œ REST API ์—”๋“œํฌ์ธํŠธ๋„ ์ฐธ์กฐํ•˜์„ธ์š”.

SARIF ํŒŒ์ผ์˜ ์—…๋กœ๋“œ ์œ„์น˜๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ์˜ต์…˜

-a, --github-auth-stdin

ํ‘œ์ค€ ์ž…๋ ฅ์„ ํ†ตํ•ด GitHub Apps ํ† ํฐ ๋˜๋Š” ๊ฐœ์ธ์šฉ ์•ก์„ธ์Šค ํ† ํฐ์„ ์ˆ˜๋ฝํ•ฉ๋‹ˆ๋‹ค.

์ด๋ ‡๊ฒŒ ํ•˜๋ฉด GITHUB_TOKEN ํ™˜๊ฒฝ ๋ณ€์ˆ˜๊ฐ€ ์žฌ์ •์˜๋ฉ๋‹ˆ๋‹ค.

-g, --github-url=<url>

์‚ฌ์šฉํ•  GitHub ์ธ์Šคํ„ด์Šค์˜ URL์ž…๋‹ˆ๋‹ค. ์ƒ๋žตํ•˜๋ฉด CLI๋Š” ์ฒดํฌ ์•„์›ƒ ๊ฒฝ๋กœ์—์„œ ์ด์— ๋Œ€ํ•œ ์ž๋™ ๊ฐ์ง€๋ฅผ ์‹œ๋„ํ•˜๋ฉฐ, ์ด๊ฒƒ์ด ๊ฐ€๋Šฅํ•˜์ง€ ์•Š์€ ๊ฒฝ์šฐ ๊ธฐ๋ณธ๊ฐ’์€ https://github.com/์ž…๋‹ˆ๋‹ค.

์ผ๋ฐ˜ ์˜ต์…˜

-h, --help

์ด ๋„์›€๋ง ํ…์ŠคํŠธ๋ฅผ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.

-J=<opt>

[๊ณ ๊ธ‰] ๋ช…๋ น์„ ์‹คํ–‰ํ•˜๋Š” JVM์— ์˜ต์…˜์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.

(๊ณต๋ฐฑ์„ ํฌํ•จํ•˜๋Š” ์˜ต์…˜์€ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ฒ˜๋ฆฌ๋˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ์œผ๋‹ˆ ์ฃผ์˜ํ•˜์„ธ์š”.)

-v, --verbose

์ถœ๋ ฅ๋˜๋Š” ์ง„ํ–‰๋ฅ  ๋ฉ”์‹œ์ง€ ์ˆ˜๋ฅผ ์ ์ง„์ ์œผ๋กœ ๋Š˜๋ฆฝ๋‹ˆ๋‹ค.

-q, --quiet

์ถœ๋ ฅ๋˜๋Š” ์ง„ํ–‰๋ฅ  ๋ฉ”์‹œ์ง€ ์ˆ˜๋ฅผ ์ ์ง„์ ์œผ๋กœ ์ค„์ž…๋‹ˆ๋‹ค.

--verbosity=<level>

[๊ณ ๊ธ‰] ์„ธ๋ถ€ ์ •๋ณด ํ‘œ์‹œ ์ˆ˜์ค€์„ ์˜ค๋ฅ˜, ๊ฒฝ๊ณ , ์ง„ํ–‰๋ฅ , ์ง„ํ–‰๋ฅ +, ์ง„ํ–‰๋ฅ ++, ์ง„ํ–‰๋ฅ +++ ์ค‘ ํ•˜๋‚˜๋กœ ๋ช…์‹œ์ ์œผ๋กœ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. -v ๋ฐ -q๋ฅผ ์žฌ์ •์˜ํ•ฉ๋‹ˆ๋‹ค.

--logdir=<dir>

[๊ณ ๊ธ‰] ํƒ€์ž„์Šคํƒฌํ”„์™€ ์‹คํ–‰ ์ค‘์ธ ํ•˜์œ„ ๋ช…๋ น์˜ ์ด๋ฆ„์„ ํฌํ•จํ•˜๋Š” ์ƒ์„ฑ๋œ ์ด๋ฆ„์„ ์‚ฌ์šฉํ•˜์—ฌ ์ง€์ •๋œ ๋””๋ ‰ํ„ฐ๋ฆฌ์— ์žˆ๋Š” ํ•˜๋‚˜ ์ด์ƒ์˜ ํŒŒ์ผ์— ์ž์„ธํ•œ ๋กœ๊ทธ๋ฅผ ๊ธฐ๋กํ•ฉ๋‹ˆ๋‹ค.

(๋ชจ๋“  ๊ถŒํ•œ์„ ๊ฐ€์ง„ ์ด๋ฆ„์œผ๋กœ ๋กœ๊ทธ ํŒŒ์ผ์„ ์ž‘์„ฑํ•˜๋ ค๋ฉด --log-to-stderr์„(๋ฅผ) ์ง€์ •ํ•˜๊ณ  stderr๋ฅผ ์›ํ•˜๋Š” ๋Œ€๋กœ ๋ฆฌ๋””๋ ‰์…˜ํ•ฉ๋‹ˆ๋‹ค.)

--common-caches=<dir>

[๊ณ ๊ธ‰] ๋‹ค์šด๋กœ๋“œํ•œ QL ํŒฉ ๋ฐ ์ปดํŒŒ์ผ๋œ ์ฟผ๋ฆฌ ๊ณ„ํš๊ณผ ๊ฐ™์ด ์—ฌ๋Ÿฌ CLI ์‹คํ–‰ ๊ฐ„์— ์œ ์ง€๋˜๋Š” ๋””์Šคํฌ์˜ ์บ์‹œ๋œ ๋ฐ์ดํ„ฐ์˜ ์œ„์น˜๋ฅผ ์ œ์–ดํ•ฉ๋‹ˆ๋‹ค. ๋ช…์‹œ์ ์œผ๋กœ ์„ค์ •ํ•˜์ง€ ์•Š์€ ๊ฒฝ์šฐ ์ด ๊ธฐ๋ณธ๊ฐ’์€ ์‚ฌ์šฉ์ž์˜ ํ™ˆ ๋””๋ ‰ํ„ฐ๋ฆฌ์— ์ด๋ฆ„์ด ์ง€์ •๋œ .codeql ๋””๋ ‰ํ„ฐ๋ฆฌ๋กœ ์„ค์ •๋˜๋ฉฐ, ์•„์ง ์—†๋Š” ๊ฒฝ์šฐ ๋งŒ๋“ค์–ด์ง‘๋‹ˆ๋‹ค.

v2.15.2๋ถ€ํ„ฐ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.