๋ฐ์ดํ„ฐ ์„ธํŠธ์˜ ฮด-์กด์žฌ ๊ณ„์‚ฐ

๋ธํƒ€-์กด์žฌ(ฮด-์กด์žฌ)๋Š” ๊ฐœ์ธ์ด ๋ถ„์„๋œ ๋ฐ์ดํ„ฐ์„ธํŠธ์— ์†ํ•  ๊ฐ€๋Šฅ์„ฑ์„ ์ •๋Ÿ‰ํ™”ํ•˜๋Š” ์ธก์ •ํ•ญ๋ชฉ์ž…๋‹ˆ๋‹ค. k-๋งต๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ํ†ต๊ณ„ ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•˜์—ฌ ๊ณต๊ฒฉ ๋ฐ์ดํ„ฐ ์„ธํŠธ๋ฅผ ์˜ˆ์ธกํ•˜๋Š” ๋ฏผ๊ฐํ•œ ์ •๋ณด ๋ณดํ˜ธ๋ฅผ ํ†ตํ•ด ฮด-์กด์žฌ ๊ฐ’์„ ์ถ”์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ฮด-์กด์žฌ๋Š” ๊ณต๊ฒฉ ๋ฐ์ดํ„ฐ ์„ธํŠธ๊ฐ€ ๋ช…์‹œ์ ์œผ๋กœ ์•Œ๋ ค์ง„ ๋‹ค๋ฅธ ์œ„ํ—˜ ๋ถ„์„ ๋ฐฉ๋ฒ•๊ณผ ๋Œ€์กฐ๋ฉ๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ ์œ ํ˜•์— ๋”ฐ๋ผ ๋ฏผ๊ฐํ•œ ์ •๋ณด ๋ณดํ˜ธ๋Š” ๊ณต๊ฐœ์ ์œผ๋กœ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๋ฐ์ดํ„ฐ ์„ธํŠธ(์˜ˆ: ๋ฏธ๊ตญ ํ†ต๊ณ„๊ตญ์˜ ๋ฐ์ดํ„ฐ ์„ธํŠธ) ๋˜๋Š” ์ปค์Šคํ…€ ํ†ต๊ณ„ ๋ชจ๋ธ(์˜ˆ: ์‚ฌ์šฉ์ž๊ฐ€ ์ง€์ •ํ•˜๋Š” BigQuery ํ…Œ์ด๋ธ” ํ•˜๋‚˜ ์ด์ƒ)์„ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ ์ž…๋ ฅ ๋ฐ์ดํ„ฐ ์„ธํŠธ ๊ฐ’ ๋ถ„ํฌ์—์„œ ์ถ”๋ก ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ์ฃผ์ œ์—์„œ๋Š” ๋ฏผ๊ฐํ•œ ์ •๋ณด ๋ณดํ˜ธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ ์„ธํŠธ์˜ ฮด-์กด์žฌ ๊ฐ’์„ ๊ณ„์‚ฐํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค. ๊ณ„์† ์ง„ํ–‰ํ•˜๊ธฐ ์ „์— ฮด-์กด์žฌ ๋˜๋Š” ์ผ๋ฐ˜ ์œ„ํ—˜ ๋ถ„์„์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ ์œ„ํ—˜ ๋ถ„์„ ๊ฐœ๋… ์ฃผ์ œ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

์‹œ์ž‘ํ•˜๊ธฐ ์ „์—

๊ณ„์†ํ•˜๊ธฐ ์ „์— ๋‹ค์Œ ์ž‘์—…์„ ์™„๋ฃŒํ–ˆ๋Š”์ง€ ํ™•์ธํ•˜์„ธ์š”.

  1. Google ๊ณ„์ •์œผ๋กœ ๋กœ๊ทธ์ธํ•ฉ๋‹ˆ๋‹ค.
  2. Google Cloud ์ฝ˜์†”์˜ ํ”„๋กœ์ ํŠธ ์„ ํƒ๊ธฐ ํŽ˜์ด์ง€์—์„œ Google Cloud ํ”„๋กœ์ ํŠธ๋ฅผ ์„ ํƒํ•˜๊ฑฐ๋‚˜ ๋งŒ๋“ญ๋‹ˆ๋‹ค.
  3. ํ”„๋กœ์ ํŠธ ์„ ํƒ๊ธฐ๋กœ ์ด๋™
  4. Google Cloud ํ”„๋กœ์ ํŠธ์— ๊ฒฐ์ œ๊ฐ€ ์‚ฌ์šฉ ์„ค์ •๋˜์–ด ์žˆ๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. ํ”„๋กœ์ ํŠธ์— ๊ฒฐ์ œ๊ฐ€ ์‚ฌ์šฉ ์„ค์ •๋˜์–ด ์žˆ๋Š”์ง€ ํ™•์ธํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ์•„๋ณด์„ธ์š”.
  5. Sensitive Data Protection์„ ์‚ฌ์šฉ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.
  6. Sensitive Data Protection ์‚ฌ์šฉ ์„ค์ •

  7. ๋ถ„์„ํ•  BigQuery ๋ฐ์ดํ„ฐ ์„ธํŠธ๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค. ๋ฏผ๊ฐํ•œ ์ •๋ณด ๋ณดํ˜ธ๋Š” BigQuery ํ…Œ์ด๋ธ”์„ ์Šค์บ”ํ•˜์—ฌ ฮด-์กด์žฌ ์ธก์ •ํ•ญ๋ชฉ์„ ์ถ”์ •ํ•ฉ๋‹ˆ๋‹ค.
  8. ๊ณต๊ฒฉ ๋ฐ์ดํ„ฐ ์„ธํŠธ๋ฅผ ๋ชจ๋ธ๋งํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ•  ๋ฐ์ดํ„ฐ ์„ธํŠธ ์œ ํ˜•์„ ๊ฒฐ์ •ํ•ฉ๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ DeltaPresenceEstimationConfig ๊ฐ์ฒด์˜ ์ฐธ์กฐ ํŽ˜์ด์ง€์™€ ์œ„ํ—˜ ๋ถ„์„ ์šฉ์–ด ๋ฐ ๊ธฐ์ˆ ์„ ์ฐธ์กฐํ•˜์„ธ์š”.

ฮด-์กด์žฌ ์ธก์ •ํ•ญ๋ชฉ ๊ณ„์‚ฐ

๋ฏผ๊ฐํ•œ ์ •๋ณด ๋ณดํ˜ธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ฮด-์กด์žฌ ์ถ”์ •๊ฐ’์„ ๊ณ„์‚ฐํ•˜๋ ค๋ฉด ์š”์ฒญ์„ ๋‹ค์Œ URL๋กœ ๋ณด๋ƒ…๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ PROJECT_ID๋Š” ํ”„๋กœ์ ํŠธ ์‹๋ณ„์ž๋ฅผ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.

https://dlp.googleapis.com/v2/projects/PROJECT_ID/dlpJobs

์š”์ฒญ์—๋Š” ๋‹ค์Œ ์š”์†Œ๋กœ ๊ตฌ์„ฑ๋œ RiskAnalysisJobConfig ๊ฐ์ฒด๊ฐ€ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.

  • PrivacyMetric ๊ฐ์ฒด. ์—ฌ๊ธฐ์„œ ๋‹ค์Œ์„ ํฌํ•จํ•˜๋Š” DeltaPresenceEstimationConfig ๊ฐ์ฒด๋ฅผ ์ง€์ •ํ•˜์—ฌ ฮด-์กด์žฌ๋ฅผ ๊ณ„์‚ฐํ•˜๋„๋ก ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.

    • quasiIds[]: ํ•„์ˆ˜. ฮด-์กด์žฌ๋ฅผ ๊ณ„์‚ฐํ•  ๋•Œ ์Šค์บ”ํ•˜๊ณ  ์‚ฌ์šฉํ•  ์œ ์‚ฌ ์‹๋ณ„์ž๋กœ ๊ฐ„์ฃผ๋˜๋Š” ํ•„๋“œQuasiId ๊ฐ์ฒด). ๋‘ ๊ฐœ์˜ ์—ด์ด ๋™์ผํ•œ ํƒœ๊ทธ๋ฅผ ๊ฐ€์งˆ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๋‹ค์Œ ์ค‘ ํ•˜๋‚˜๊ฐ€ ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

      • infoType: ๋ฏผ๊ฐํ•œ ์ •๋ณด ๋ณดํ˜ธ์—์„œ ๊ด€๋ จ ๊ณต๊ฐœ ๋ฐ์ดํ„ฐ ์„ธํŠธ๋ฅผ ๋ฏธ๊ตญ ์šฐํŽธ๋ฒˆํ˜ธ, ๋ฆฌ์ „ ์ฝ”๋“œ, ์—ฐ๋ น, ์„ฑ๋ณ„ ๋“ฑ์ด ํฌํ•จ๋œ ๋ชจ์ง‘๋‹จ์˜ ํ†ต๊ณ„ ๋ชจ๋ธ๋กœ ์‚ฌ์šฉํ•˜๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.
      • ์ปค์Šคํ…€ infoType: ์ด ์—ด์˜ ๊ฐ€๋Šฅํ•œ ๊ฐ’์— ๋Œ€ํ•œ ํ†ต๊ณ„ ์ •๋ณด๊ฐ€ ํฌํ•จ๋œ ๋ณด์กฐ ํ…Œ์ด๋ธ”(AuxiliaryTable)์„ ๊ฐ€๋ฆฌํ‚ค๋Š” ์ปค์Šคํ…€ ํƒœ๊ทธ
      • inferred ํƒœ๊ทธ: ์ง€์ •๋œ ์˜๋ฏธ ์ฒด๊ณ„ ํƒœ๊ทธ๊ฐ€ ์—†๋Š” ๊ฒฝ์šฐ inferred๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ๋ฏผ๊ฐํ•œ ์ •๋ณด ๋ณดํ˜ธ๋Š” ์ž…๋ ฅ ๋ฐ์ดํ„ฐ ๊ฐ’ ๋ถ„ํฌ์—์„œ ํ†ต๊ณ„ ๋ชจ๋ธ์„ ์ถ”๋ก ํ•ฉ๋‹ˆ๋‹ค.
    • regionCode: ํ†ต๊ณ„ ๋ชจ๋ธ๋ง์— ์‚ฌ์šฉํ•  ๋ฏผ๊ฐํ•œ ์ •๋ณด ๋ณดํ˜ธ์— ๋Œ€ํ•œ ISO 3166-1 alpha-2 ๋ฆฌ์ „ ์ฝ”๋“œ. ๋ฆฌ์ „๋ณ„ infoType(์˜ˆ๋ฅผ ๋“ค์–ด ๋ฏธ๊ตญ ์šฐํŽธ๋ฒˆํ˜ธ) ๋˜๋Š” ๋ฆฌ์ „ ์ฝ”๋“œ๋กœ ํƒœ๊ทธ๊ฐ€ ์ง€์ •๋œ ์—ด์ด ์—†๋Š” ๊ฒฝ์šฐ ์ด ๊ฐ’์€ ํ•„์ˆ˜์ž…๋‹ˆ๋‹ค.

    • auxiliaryTables[]: ๋ถ„์„์— ์‚ฌ์šฉํ•  ๋ณด์กฐ ํ…Œ์ด๋ธ”(StatisticalTable ๊ฐ์ฒด). ์œ ์‚ฌ ์‹๋ณ„์ž ์—ด(quasiIds[])์— ํƒœ๊ทธ๋ฅผ ์ง€์ •ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋œ ๊ฐ ์ปค์Šคํ…€ ํƒœ๊ทธ๋Š” ์ •ํ™•ํžˆ ํ•œ ๋ณด์กฐ ํ…Œ์ด๋ธ”์˜ ํ•œ ์—ด์— ๋‚˜ํƒ€๋‚˜์•ผ ํ•ฉ๋‹ˆ๋‹ค.

  • BigQueryTable ๊ฐ์ฒด. ๋‹ค์Œ์„ ๋ชจ๋‘ ํฌํ•จํ•˜์—ฌ ์Šค์บ”ํ•  BigQuery ํ…Œ์ด๋ธ”์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.

    • projectId: ํ…Œ์ด๋ธ”์ด ํฌํ•จ๋œ ํ”„๋กœ์ ํŠธ์˜ ํ”„๋กœ์ ํŠธ ID
    • datasetId: ํ…Œ์ด๋ธ”์˜ ๋ฐ์ดํ„ฐ ์„ธํŠธ ID
    • tableId: ํ…Œ์ด๋ธ”์˜ ์ด๋ฆ„
  • ์ž‘์—… ์™„๋ฃŒ ์‹œ ์‹คํ–‰ํ•  ์ž‘์—…์„ ๋‚˜ํƒ€๋‚ด๋Š” ํ•˜๋‚˜ ์ด์ƒ์˜ Action ๊ฐ์ฒด ์ง‘ํ•ฉ(์ฃผ์–ด์ง„ ์ˆœ์„œ์— ๋”ฐ๋ฆ„). ๊ฐ Action ๊ฐ์ฒด๋Š” ๋‹ค์Œ ์ž‘์—… ์ค‘ ํ•˜๋‚˜๋ฅผ ํฌํ•จํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    • PublishSummaryToCscc ๊ฐ์ฒด: Security Command Center์— ๊ฒฐ๊ณผ ์š”์•ฝ์„ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.
    • PublishFindingsToCloudDataCatalog ๊ฐ์ฒด: Data Catalog์— ๊ฒฐ๊ณผ๋ฅผ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.
    • JobNotificationEmails ๊ฐ์ฒด: ๊ฒฐ๊ณผ๊ฐ€ ํฌํ•จ๋œ ์ด๋ฉ”์ผ์„ ๋ณด๋ƒ…๋‹ˆ๋‹ค.
    • PublishToStackdriver ๊ฐ์ฒด: Google Cloud Observability์— ๊ฒฐ๊ณผ๋ฅผ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.

ฮด-์กด์žฌ ์ž‘์—… ๊ฒฐ๊ณผ ๋ณด๊ธฐ

REST API๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ฮด-์กด์žฌ ์œ„ํ—˜ ๋ถ„์„ ์ž‘์—…์˜ ๊ฒฐ๊ณผ๋ฅผ ๊ฒ€์ƒ‰ํ•˜๋ ค๋ฉด ๋‹ค์Œ GET ์š”์ฒญ์„ projects.dlpJobs ๋ฆฌ์†Œ์Šค์— ๋ณด๋ƒ…๋‹ˆ๋‹ค. PROJECT_ID๋ฅผ ํ”„๋กœ์ ํŠธ ID๋กœ ๋ฐ”๊พธ๊ณ  JOB_ID๋ฅผ ๊ฒฐ๊ณผ๋ฅผ ๊ฐ€์ ธ์˜ฌ ์ž‘์—… ์‹๋ณ„์ž๋กœ ๋ฐ”๊ฟ‰๋‹ˆ๋‹ค. ์ž‘์—… ID๋Š” ์ž‘์—… ์‹œ์ž‘ ์‹œ ๋ฐ˜ํ™˜๋˜์—ˆ์œผ๋ฉฐ ๋ชจ๋“  ์ž‘์—…์„ ๋‚˜์—ดํ•˜์—ฌ ๊ฒ€์ƒ‰ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

GET https://dlp.googleapis.com/v2/projects/PROJECT_ID/dlpJobs/JOB_ID

์š”์ฒญ์€ ์ž‘์—… ์ธ์Šคํ„ด์Šค๊ฐ€ ํฌํ•จ๋œ JSON ๊ฐ์ฒด๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ๋ถ„์„ ๊ฒฐ๊ณผ๋Š” AnalyzeDataSourceRiskDetails ๊ฐ์ฒด์˜ "riskDetails" ํ‚ค ๋‚ด์— ์žˆ์Šต๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ DlpJob ๋ฆฌ์†Œ์Šค์˜ API ์ฐธ์กฐ๋ฅผ ํ™•์ธํ•˜์„ธ์š”.

๋‹ค์Œ ๋‹จ๊ณ„

  • ๋ฐ์ดํ„ฐ ์„ธํŠธ์˜ k-์ต๋ช…์„ฑ ๊ฐ’์„ ๊ณ„์‚ฐํ•˜๋Š” ๋ฐฉ๋ฒ• ์•Œ์•„๋ณด๊ธฐ
  • ๋ฐ์ดํ„ฐ ์„ธํŠธ์˜ l-๋‹ค์–‘์„ฑ ๊ฐ’์„ ๊ณ„์‚ฐํ•˜๋Š” ๋ฐฉ๋ฒ• ์•Œ์•„๋ณด๊ธฐ
  • ๋ฐ์ดํ„ฐ ์„ธํŠธ์˜ k-๋งต ๊ฐ’์„ ๊ณ„์‚ฐํ•˜๋Š” ๋ฐฉ๋ฒ• ์•Œ์•„๋ณด๊ธฐ