Skip to main content

Visual Studio Code์šฉ CodeQL์˜ ์›๊ฒฉ ๋ถ„์„

VS Code ์›๊ฒฉ ๋ถ„์„์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ GitHub๋Š” ํ•ต์‹ฌ ๊ฐœ๋ฐœ์ž๊ฐ€ VS Code์šฉ CodeQL ํ™•์žฅ์„ ๊ฐœ์„ ํ•  ์ˆ˜ ์žˆ๋„๋ก ๋•๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋Ÿ‰ ํ˜„ํ™ฉ ๋ฐ์ดํ„ฐ ๋ฐ ๋ฉ”ํŠธ๋ฆญ์„ ์ˆ˜์ง‘ํ•ฉ๋‹ˆ๋‹ค.

์ด ๋ฐ์ดํ„ฐ๋Š” GitHub ์™ธ๋ถ€์˜ ๋ชจ๋“  ๋‹น์‚ฌ์ž์™€ ๊ณต์œ ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. IP ์ฃผ์†Œ ๋ฐ ์„ค์น˜ ID๋Š” ์ตœ๋Œ€ 30์ผ ๋™์•ˆ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ์ต๋ช… ๋ฐ์ดํ„ฐ๋Š” ์ตœ๋Œ€ 180์ผ ๋™์•ˆ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ  ํ•ญ๋ชฉ

Visual Studio Code์šฉ CodeQL์˜ ์›๊ฒฉ ๋ถ„์„ ์ˆ˜์ง‘์€ VS Code ์›๊ฒฉ ๋ถ„์„ ์„ค์ •์„ ๋”ฐ๋ฆ…๋‹ˆ๋‹ค. ์›๊ฒฉ ๋ถ„์„ ์ˆ˜์ง‘์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋„๋ก ์„ค์ •ํ•˜๋ฉด ๋ฐ์ดํ„ฐ๊ฐ€ GitHub ์„œ๋ฒ„๋กœ ์ „์†ก๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋ฐ์ดํ„ฐ๋ฅผ ์ˆ˜์ง‘ํ•˜๋Š” ์ด์œ 

GitHub์€(๋Š”) VS Code์šฉ CodeQL์„(๋ฅผ) ๊ฐœ์„ ํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋˜๋Š” ์ง‘๊ณ„๋œ ์ต๋ช… ์‚ฌ์šฉ๋Ÿ‰ ํ˜„ํ™ฉ ๋ฐ์ดํ„ฐ ๋ฐ ๋ฉ”ํŠธ๋ฆญ์„ ์ˆ˜์ง‘ํ•ฉ๋‹ˆ๋‹ค. IP ์ฃผ์†Œ ๋ฐ ์„ค์น˜ ID๋Š” ์ง‘๊ณ„ ์ค‘์— ์ต๋ช… ๋ฐ์ดํ„ฐ๊ฐ€ ์ค‘๋ณต๋˜์ง€ ์•Š๋„๋ก ํ•˜๊ธฐ ์œ„ํ•ด ์ˆ˜์ง‘๋ฉ๋‹ˆ๋‹ค.

์ˆ˜์ง‘๋˜๋Š” ๋ฐ์ดํ„ฐ

์›๊ฒฉ ๋ถ„์„์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ GitHub๋Š” ํ™•์žฅ ์‚ฌ์šฉ๊ณผ ๊ด€๋ จ๋œ ๋‹ค์Œ ์ •๋ณด๋ฅผ ์ˆ˜์ง‘ํ•ฉ๋‹ˆ๋‹ค. ์ˆ˜์ง‘๋œ ๋ฐ์ดํ„ฐ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  • ์‹คํ–‰๋˜๋Š” CodeQL ๊ด€๋ จ VS Code ๋ช…๋ น์˜ ์‹๋ณ„์ž. ๊ฐ ๋ช…๋ น์— ๋Œ€ํ•ด ํƒ€์ž„์Šคํƒฌํ”„, ์†Œ์š”๋œ ์‹œ๊ฐ„ ๋ฐ ๋ช…๋ น์ด ์„ฑ๊ณต์ ์œผ๋กœ ์™„๋ฃŒ๋˜์—ˆ๋Š”์ง€ ์—ฌ๋ถ€.

  • ๋ฒ„ํŠผ, ๋งํฌ ๋ฐ ๊ธฐํƒ€ ์ž…๋ ฅ์„ ํฌํ•จํ•œ UI ์š”์†Œ์™€์˜ ์ƒํ˜ธ ์ž‘์šฉ. ๊ธฐ๋ก๋˜์ง€ ์•Š์€ ์ƒํ˜ธ ์ž‘์šฉ์€ ๋งํฌ ๋Œ€์ƒ, ํ…์ŠคํŠธ ์ž…๋ ฅ, ๋งˆ์šฐ์Šค ์ด๋™ ๋ฐ ๋งˆ์šฐ์Šค ๊ฐ€๋ฆฌํ‚ค๊ธฐ์ž…๋‹ˆ๋‹ค.

  • ์˜ˆ์™ธ ๋ฐ ์˜ค๋ฅ˜ ๋ฐœ์ƒ. ์—…๋กœ๋“œํ•˜๊ธฐ ์ „์— ํŒŒ์ผ ๊ฒฝ๋กœ ๋ฐ ๋น„์ •์  ์˜ˆ์™ธ ๋ฉ”์‹œ์ง€ ์ฝ˜ํ…์ธ ์™€ ๊ฐ™์€ ๋ชจ๋“  ์ค‘์š”ํ•œ ์ •๋ณด๊ฐ€ ์ œ๊ฑฐ๋ฉ๋‹ˆ๋‹ค.

  • VS Code ์ต์Šคํ…์…˜ ๋ฒ„์ „.

  • CodeQL ์ต์Šคํ…์…˜ ์„ค์น˜๋ฅผ ๊ณ ์œ ํ•˜๊ฒŒ ์‹๋ณ„ํ•˜๋Š” ์ž„์˜๋กœ ์ƒ์„ฑ๋œ GUID. ์ด๋Š” ์ง‘๊ณ„ ์ „์— ์‚ญ์ œ๋ฉ๋‹ˆ๋‹ค.

  • ์›๊ฒฉ ๋ถ„์„ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋‚ด๋Š” ํด๋ผ์ด์–ธํŠธ์˜ IP ์ฃผ์†Œ. ์ด๋Š” ์ง‘๊ณ„ ์ „์— ์‚ญ์ œ๋ฉ๋‹ˆ๋‹ค.

  • VS Code ์ต์Šคํ…์…˜ ์„ค์ •์— ๋Œ€ํ•œ CodeQL์ด(๊ฐ€) ๊ตฌ์„ฑ๋˜์—ˆ๋Š”์ง€ ์—ฌ๋ถ€. ์‚ฌ์šฉ์ž ์ง€์ • ์„ค์ •์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ ์„ค์ • ์‚ฌ์šฉ์ž ์ง€์ •์„(๋ฅผ) ์ฐธ์กฐํ•˜์„ธ์š”.

๋ฐ์ดํ„ฐ๊ฐ€ ๋ณด์กด๋˜๋Š” ๊ธฐ๊ฐ„

IP ์ฃผ์†Œ ๋ฐ GUID๋Š” ์ตœ๋Œ€ 30์ผ ๋™์•ˆ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ช…๋ น ์‹๋ณ„์ž, ์‹คํ–‰ ์‹œ๊ฐ„ ๋ฐ ํƒ€์ž„์Šคํƒฌํ”„๋ฅผ ํฌํ•จํ•œ ์ต๋ช… ์ง‘๊ณ„ ๋ฐ์ดํ„ฐ๋Š” ์ตœ๋Œ€ 180์ผ ๋™์•ˆ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค.

๋ฐ์ดํ„ฐ ์•ก์„ธ์Šค

IP ์ฃผ์†Œ ๋ฐ GUID๋Š” CodeQL์˜ ํ•ต์‹ฌ ๊ฐœ๋ฐœ์ž๋งŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ง‘๊ณ„๋œ ๋ฐ์ดํ„ฐ๋Š” GitHub ์ง์›์—๊ฒŒ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค.

์ˆ˜์ง‘๋˜๋Š” ๋ฐ์ดํ„ฐ

์‚ฌ์šฉ์ž๊ฐ€ ์ด ์ œํ’ˆ์„ ์–ด๋–ป๊ฒŒ ๊ฒฝํ—˜ํ•˜๊ณ  ์žˆ๋Š”์ง€์— ๋Œ€ํ•œ ์งˆ๋ฌธ์— ๋‹ตํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ์ตœ์†Œํ•œ์˜ ๋ฐ์ดํ„ฐ๋งŒ ์ˆ˜์ง‘ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ์œ„ํ•ด ๋‹ค์Œ ์ •๋ณด๋ฅผ ์ˆ˜์ง‘ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

  • GitHub ์‚ฌ์šฉ์ž ID

  • CodeQL ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ด๋ฆ„ ๋˜๋Š” ์ฝ˜ํ…์ธ 

  • CodeQL ์ฟผ๋ฆฌ์˜ ์ฝ˜ํ…์ธ 

  • ํŒŒ์ผ ์‹œ์Šคํ…œ ๊ฒฝ๋กœ

  • ์‚ฌ์šฉ์ž ์ž…๋ ฅ ํ…์ŠคํŠธ

  • ๋งˆ์šฐ์Šค ์ƒํ˜ธ ์ž‘์šฉ(์˜ˆ: ์ด๋™ ๋˜๋Š” ๊ฐ€๋ฆฌํ‚ค๊ธฐ)

์›๊ฒฉ ๋ถ„์„ ๋ณด๊ณ  ์‚ฌ์šฉ ์•ˆ ํ•จ

์ „์—ญ telemetry.telemetryLevel ์„ค์ •์€ off๋กœ ์„ค์ •ํ•˜์—ฌ ์›๊ฒฉ ๋ถ„์„ ์ˆ˜์ง‘์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋„๋ก ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ Visual Studio Code ์„ค๋ช…์„œ์˜ Visual Studio Code ์›๊ฒฉ ๋ถ„์„ ํŽ˜์ด์ง€๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

์ถ”๊ฐ€ ์ฐธ๊ณ  ์ž๋ฃŒ