{"id":16042,"date":"2024-07-24T13:54:13","date_gmt":"2024-07-24T20:54:13","guid":{"rendered":"https:\/\/www.couchbase.com\/blog\/?p=16042"},"modified":"2024-07-30T11:05:08","modified_gmt":"2024-07-30T18:05:08","slug":"privacy-requirements-without-the-headache","status":"publish","type":"post","link":"https:\/\/www.couchbase.com\/blog\/ko\/privacy-requirements-without-the-headache\/","title":{"rendered":"\uace8\uce58 \uc544\ud508 \uac1c\uc778\uc815\ubcf4 \ubcf4\ud638 \uc694\uad6c \uc0ac\ud56d"},"content":{"rendered":"<p>\uc5ec\ub7ec \uc9c0\uc5ed\uc758 \uc0ac\uc6a9\uc790\uc640 \uc0c1\ud638 \uc791\uc6a9\ud558\ub294 \ucd5c\uc2e0 \uc6f9 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc740 \ub2e4\uc591\ud55c \uac1c\uc778\uc815\ubcf4 \ubcf4\ud638 \uc694\uad6c\uc0ac\ud56d\uacfc \uc0ac\uc6a9\uc790 \ub370\uc774\ud130 \ub3d9\uc758 \uac00\uc774\ub4dc\ub77c\uc778\uc744 \uc900\uc218\ud574\uc57c \ud569\ub2c8\ub2e4. \uc774\ub294 \ud300\uc6d0\uc774 \ud55c \uba85\uc774\ub4e0 50\uba85\uc774\ub4e0 \uc0c1\uad00\uc5c6\uc774 \ubaa8\ub4e0 \uc5d4\uc9c0\ub2c8\uc5b4\ub9c1 \ud300\uc774 \ucc98\ub9ac\ud558\uae30\uc5d0\ub294 \ubd80\ub2f4\uc2a4\ub7ec\uc6b8 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<p>\ud504\ub85c\uc138\uc2a4\ub97c \uac04\uc18c\ud654\ud558\uc5ec \ubc88\uac70\ub85c\uc6c0\uc744 \uc5c6\uc560\uace0 \uaddc\uc815 \ubbf8\uc900\uc218 \uac00\ub2a5\uc131\uc744 \uc904\uc774\ub824\uba74 \uc5b4\ub5bb\uac8c \ud574\uc57c \ud560\uae4c\uc694?<\/p>\n<p>\uc774 \uac00\uc774\ub4dc\uc5d0\uc11c\ub294 \ub370\uc774\ud130\uac00 \ub370\uc774\ud130 \uc800\uc7a5\uc18c\uc5d0 \ub3c4\ub2ec\ud558\uae30 \uc804\uc5d0 \ub370\uc774\ud130\ub97c \uc0b4\uade0\ud558\uae30 \uc704\ud574 Couchbase\uc640 \ud568\uaed8 \uc791\ub3d9\ud558\ub294 AWS \uc11c\ube44\uc2a4\ub97c \ud65c\uc6a9\ud558\ub294 \uad6c\ud604\uc744 \uc0b4\ud3b4\ubd05\ub2c8\ub2e4. \uc774 \uac04\ub2e8\ud55c \uad6c\ud604\uc740 \uc5b4\ub5a4 \uc0c1\ud669\uc5d0\uc11c\ub3c4 \ud65c\uc6a9\ud560 \uc218 \uc788\uc73c\uba70 \uad6c\ucd95 \uc911\uc778 \uc0ac\uc6a9 \uc0ac\ub840\uc5d0 \ub9de\uac8c \ud655\uc7a5\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<p><i>\uc694\uc57d \ubc30\ud3ec \uc9c0\uce68\uc774 \ud3ec\ud568\ub41c README\uc640 \ud568\uaed8 \ucf54\ub4dc\ub9cc \ubcf4\uace0 \uc2f6\uc73c\uc2e0\uac00\uc694? \ub2e4\uc74c\uc5d0\uc11c \ud544\uc694\ud55c \ubaa8\ub4e0 \uac83\uc744 \ucc3e\uc544\ubcf4\uc138\uc694. <\/i><a href=\"https:\/\/github.com\/hummusonrails\/anonymize-data-aws-couchbase-example\"><i>GitHub<\/i><\/a><i>.<\/i><\/p>\n<h2>\uac1c\uc694<\/h2>\n<h3>\uc2dc\ub098\ub9ac\uc624 \uc608\uc2dc<\/h3>\n<p>\ub3c5\ud2b9\ud55c \uc218\uacf5\uc608\ud488\uc744 \ud310\ub9e4\ud558\ub294 \uc18c\uaddc\ubaa8 \uc804\uc790\uc0c1\uac70\ub798 \ud50c\ub7ab\ud3fc\uc744 \uc0c1\uc0c1\ud574 \ubcf4\uc138\uc694. \uc774 \uc0ac\uc774\ud2b8\ub294 \uc77c\ud68c\uc131 \uad6c\ub9e4 \ubaa8\ub378\ub85c \uc6b4\uc601\ub418\ubbc0\ub85c \uc0ac\uc6a9\uc790\ub294 \uacc4\uc815\uc744 \ub9cc\ub4e4\uac70\ub098 \ub85c\uadf8\uc778\ud560 \ud544\uc694\uac00 \uc5c6\uc2b5\ub2c8\ub2e4. \uc1fc\ud551\uac1d\uc740 \uce74\ud0c8\ub85c\uadf8\ub97c \ub458\ub7ec\ubcf4\uace0 \uad6c\ub9e4\ud558\uace0\uc790 \ud558\ub294 \ud488\ubaa9\uc744 \uc120\ud0dd\ud55c \ub2e4\uc74c \uacb0\uc81c\ub97c \uc9c4\ud589\ud558\uae30\ub9cc \ud558\uba74 \ub429\ub2c8\ub2e4. \uacb0\uc81c \uacfc\uc815\uc5d0\uc11c \uc774\ub984, \uc6b0\ud3b8 \uc8fc\uc18c, \uccad\uad6c\uc9c0 \uc8fc\uc18c, \uacb0\uc81c \uc815\ubcf4, \uc804\ud654\ubc88\ud638, \uc774\uba54\uc77c \uc8fc\uc18c \ub4f1\uc758 \ud544\uc218 \uc815\ubcf4\ub97c \uc81c\uacf5\ud569\ub2c8\ub2e4. \uc774\ub7ec\ud55c \uac1c\uc778 \uc2dd\ubcc4 \uc815\ubcf4(PII)\ub294 \uad6c\ub9e4\ub97c \uc644\ub8cc\ud558\uace0 \uc0c1\ud488\uc774 \uc62c\ubc14\ub978 \uc8fc\uc18c\ub85c \ubc30\uc1a1\ub418\ub294\uc9c0 \ud655\uc778\ud558\ub294 \ub370 \ud544\uc694\ud569\ub2c8\ub2e4.<\/p>\n<p>\uc8fc\ubb38\uc774 \uc811\uc218\ub418\uba74 \ub370\uc774\ud130\ub294 \ub2e4\uc591\ud55c \ub9c8\uc774\ud06c\ub85c \uc11c\ube44\uc2a4\ub97c \ud1b5\ud574 \uc774\ub3d9\ud569\ub2c8\ub2e4. \uc8fc\ubb38 \ucc98\ub9ac \uc11c\ube44\uc2a4\ub294 \uc138\ubd80 \uc815\ubcf4\ub97c \ud655\uc778\ud558\uace0 \uc7ac\uace0\ub97c \ud655\uc778\ud558\uba70, \uacb0\uc81c \uc11c\ube44\uc2a4\ub294 \uccad\uad6c \uc815\ubcf4\ub97c \uc548\uc804\ud558\uac8c \ucc98\ub9ac\ud558\uc5ec \uac70\ub798\ub97c \ucc98\ub9ac\ud558\uace0, \ubc30\uc1a1 \uc11c\ube44\uc2a4\ub294 \uc81c\uacf5\ub41c \uc6b0\ud3b8 \uc8fc\uc18c\ub97c \uc0ac\uc6a9\ud558\uc5ec \ubc30\uc1a1\uc744 \uc900\ube44\ud569\ub2c8\ub2e4.<\/p>\n<p>\uc774 \uc0ac\uc774\ud2b8\ub294 \uc0ac\uc6a9\uc790\uc5d0\uac8c \uc6d0\ud65c\ud558\uace0 \uc26c\uc6b4 \uc1fc\ud551 \uacbd\ud5d8\uc744 \uc81c\uacf5\ud558\ub3c4\ub85d \uc124\uacc4\ub418\uc5c8\uc2b5\ub2c8\ub2e4. \uacc4\uc815\uc774 \ud544\uc694\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. \uae34 \ub4f1\ub85d \uc808\ucc28\ub97c \uac70\uce60 \ud544\uc694\uac00 \uc5c6\uc2b5\ub2c8\ub2e4. \uad6c\ub9e4\ud560 \ud488\ubaa9\uc744 \uc120\ud0dd\ud558\uace0 \ubc30\uc1a1 \uc815\ubcf4\uc640 \ud568\uaed8 \uacb0\uc81c\ud558\uae30\ub9cc \ud558\uba74 \uc644\ub8cc\ub429\ub2c8\ub2e4. \uadf8\ub7ec\ub098 \uace0\uac1d\uc774 \uc6d0\ud65c\ud55c \uc1fc\ud551 \ud658\uacbd\uc744 \uacbd\ud5d8\ud558\ub294 \ub3d9\uc548 \uace0\uac1d\uc758 \uac1c\uc778 \ub370\uc774\ud130\ub294 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc5d0\uc11c \ub3d9\uc77c\ud55c \uc6d0\ud65c\ud55c \uacbd\ud5d8\uc744 \ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. \uac1c\uc778\uc815\ubcf4 \ubcf4\ud638\ub97c \uc720\uc9c0\ud558\uace0 \uaddc\uc815\uc744 \uc900\uc218\ud558\uae30 \uc704\ud574 \uc774 PII\ub294 \uc7a5\uae30 \uad6c\ub9e4 \ub0b4\uc5ed \ub370\uc774\ud130\ubca0\uc774\uc2a4\uc5d0 \uc800\uc7a5\ub418\uae30 \uc804\uc5d0 \uc704\uc0dd \ucc98\ub9ac\ub418\uc5b4\uc57c \ud569\ub2c8\ub2e4.<\/p>\n<p>\uc774 \uc2dc\ub098\ub9ac\uc624\ub294 \ub3c5\ud2b9\ud574 \ubcf4\uc77c \uc218 \uc788\uc9c0\ub9cc, \uc2e4\uc81c\ub85c\ub294 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc5d0\uc11c \ud56d\uc0c1 \ubc1c\uc0dd\ud560 \uc218 \uc788\ub294 \uc0c1\ud669\uc785\ub2c8\ub2e4. \uc0ac\uc6a9\uc790 \uc815\ubcf4\uc758 \ubaa8\ub4e0 \uce21\uba74\uc744 \uc218\uc9d1\ud558\ub294 \ubaa8\ub4e0 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc740 \uc5c4\uaca9\ud55c \ub3d9\uc758\ub97c \ud655\ubcf4\ud558\uace0 \uc804 \uc138\uacc4\uc5d0\uc11c \uc6b4\uc601\ub418\ub294 \ubaa8\ub4e0 \uc9c0\uc5ed\uc758 \ubc95\ub960\uacfc \uaddc\uc815\uc744 \uc900\uc218\ud574\uc57c \ud569\ub2c8\ub2e4. \uc774\ub294 \uc5c4\uccad\ub09c \ub3c4\uc804\uc774 \ub420 \uc218 \uc788\uc73c\uba70, \uc81c\ub300\ub85c \uc218\ud589\ub418\uc9c0 \uc54a\uc744 \uacbd\uc6b0 \uc2ec\uac01\ud55c \uacb0\uacfc\ub97c \ucd08\ub798\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<h3>\uc194\ub8e8\uc158 \uc6cc\ud06c\ud50c\ub85c<\/h3>\n<p>\uc2e4\uc2dc\uac04 \ub370\uc774\ud130\uc5d0 \ub300\ud55c \uac1c\uc778\uc815\ubcf4 \ubcf4\ud638 \uc694\uac74\uc744 \ud6a8\uacfc\uc801\uc73c\ub85c \ucc98\ub9ac\ud558\uae30 \uc704\ud574\uc11c\ub294 \ub370\uc774\ud130\uac00 \uc0dd\uc131\ub418\ub294 \uc989\uc2dc AWS\uc640 Couchbase\uc758 \uc2e4\uc2dc\uac04 \ub370\uc774\ud130 \uae30\ub2a5\uc744 \ud65c\uc6a9\ud558\uc5ec \ub370\uc774\ud130\ub97c \ubcc0\ud658\ud574\uc57c \ud569\ub2c8\ub2e4. GDPR \uaddc\uc815\uc5d0 \ub530\ub77c \uac1c\uc778 \ub370\uc774\ud130\ub97c \ub370\uc774\ud130\ubca0\uc774\uc2a4\uc5d0 \uc7a0\uc2dc\ub77c\ub3c4 \uc800\uc7a5\ud558\ub294 \uac83\uc740 \ubc95\uc801\uc73c\ub85c \ub9e4\uc6b0 \uae4c\ub2e4\ub86d\uc2b5\ub2c8\ub2e4. \ub530\ub77c\uc11c \ub370\uc774\ud130\ub97c \uc548\uc804\ud558\uac8c \ucc98\ub9ac\ud55c \ud6c4\uc5d0\ub9cc \ucd94\uac00\ud558\ub294 \uac83\uc774 \uc88b\uc740 \ub370\uc774\ud130 \uad00\ud589\uc77c \ubfd0\ub9cc \uc544\ub2c8\ub77c \ubc95\uc801 \uc694\uac74\uc77c \uc218\ub3c4 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<p>\uc6b0\ub9ac\uac00 \ub9cc\ub4e4\uace0 \uc788\ub294 \uc194\ub8e8\uc158\uc740 AWS Simple Queue Service(SQS), Elastic Container Registry(ECR), \uadf8\ub9ac\uace0 \uc644\uc804 \uad00\ub9ac\ud615 \ub370\uc774\ud130\ubca0\uc774\uc2a4 \uc11c\ube44\uc2a4(DBaaS)\uc778 Couchbase Capella\uc640 \ud611\ub825\ud558\uc5ec \uc791\ub3d9\ud558\ub294 Lambda \uae30\ub2a5\uc744 \ud65c\uc6a9\ud560 \uac83\uc785\ub2c8\ub2e4. \uc774 \uc6cc\ud06c\ud50c\ub85c\ub294 \ud050 \uc11c\ube44\uc2a4\uc5d0 \uba54\uc2dc\uc9c0\ub97c \uc804\uc1a1\ud558\ub294 \ubaa8\ub4e0 \uba54\uc2dc\uc9c0 \ubc1c\uc2e0\uc790\ub97c \ud1b5\ud574 \uad6c\ud604\ud560 \uc218 \uc788\uc73c\uba70, \ub370\uc774\ud130 \uc704\uc0dd \ucc98\ub9ac \ud504\ub85c\uc138\uc2a4\ub97c \uc2dc\uc791\ud569\ub2c8\ub2e4. \uc989, \ud50c\ub7ec\uadf8 \uc564 \ud50c\ub808\uc774\uac00 \uac00\ub2a5\ud569\ub2c8\ub2e4.<\/p>\n<p>\ub2e4\uc74c \uc6cc\ud06c\ud50c\ub85c\uc5d0\uc11c\ub294 \uc194\ub8e8\uc158\uc758 \uc791\ub3d9 \ubc29\uc2dd\uc744 \uc2dc\uac01\uc801\uc73c\ub85c \ubcf4\uc5ec\uc90d\ub2c8\ub2e4.<\/p>\n<p><a href=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2024\/07\/image1-3.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-large wp-image-16043\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2024\/07\/image1-3-1024x383.png\" alt=\"\" width=\"900\" height=\"337\" srcset=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/07\/image1-3-1024x383.png 1024w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/07\/image1-3-300x112.png 300w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/07\/image1-3-768x287.png 768w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/07\/image1-3-1536x574.png 1536w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/07\/image1-3-1320x493.png 1320w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/07\/image1-3.png 1999w\" sizes=\"auto, (max-width: 900px) 100vw, 900px\" \/><\/a><\/p>\n<p>\uba3c\uc800 \uba54\uc2dc\uc9c0 \ubc1c\uc2e0\uc790\uac00 \ub300\uae30\uc5f4 \uc11c\ube44\uc2a4\ub85c \ub370\uc774\ud130\ub97c \uc804\uc1a1\ud569\ub2c8\ub2e4. \uadf8\ub7ec\uba74 \uba54\uc2dc\uc9c0\uc640 \ud568\uaed8 \ub78c\ub2e4 \ud568\uc218\uac00 \ud2b8\ub9ac\uac70\ub429\ub2c8\ub2e4. \ub78c\ub2e4 \ud568\uc218\ub294 \ub370\uc774\ud130\ub97c \ucc98\ub9ac\ud558\uace0 \ubcc0\ud658\ud558\uc5ec \uba54\uc2dc\uc9c0\uc5d0\uc11c \ubaa8\ub4e0 PII\ub97c \uc81c\uac70\ud569\ub2c8\ub2e4. \ub9c8\uc9c0\ub9c9\uc73c\ub85c, \uc704\uc0dd \ucc98\ub9ac\ub41c \ub370\uc774\ud130\ub294 \ub370\uc774\ud130 \uc800\uc7a5\uc18c\uc5d0 \uc548\uc804\ud558\uac8c \ucd94\uac00\ub420 \uc218 \uc788\ub3c4\ub85d Couchbase\ub85c \uc804\uc1a1\ub429\ub2c8\ub2e4.<\/p>\n<p>\uc774\uc81c \uc6cc\ud06c\ud50c\ub85c\uc6b0\ub97c \uc774\ud574\ud588\uc73c\ub2c8 \uc9c1\uc811 \ub9cc\ub4e4\uc5b4 \ubcf4\uaca0\uc2b5\ub2c8\ub2e4!<\/p>\n<h2>\uad6c\ud604<\/h2>\n<h3>\uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \uc544\uce74\ud3a0\ub77c \uad6c\uc131<\/h3>\n<p>\uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \uce74\ud3a0\ub77c\uc5d0 \ubb34\ub8cc\ub85c \uac00\uc785\ud558\uc5ec \uc0ac\uc6a9\ud574 \ubcfc \uc218 \uc788\uc73c\uba70, \uc544\uc9c1 \uac00\uc785\ud558\uc9c0 \uc54a\uc740 \uacbd\uc6b0 \ub2e4\uc74c \uc8fc\uc18c\ub85c \uc774\ub3d9\ud558\uc5ec \uc0ac\uc6a9\ud574 \ubcfc \uc218 \uc788\uc2b5\ub2c8\ub2e4. <a href=\"https:\/\/cloud.couchbase.com\/\">cloud.couchbase.com<\/a> \uc744 \ud074\ub9ad\ud558\uace0 GitHub \ub610\ub294 Google \uc790\uaca9 \uc99d\uba85\uc744 \uc0ac\uc6a9\ud558\uc5ec \uacc4\uc815\uc744 \ub9cc\ub4e4\uac70\ub098 \uc774\uba54\uc77c \uc8fc\uc18c\uc640 \ube44\ubc00\ubc88\ud638 \uc870\ud569\uc73c\ub85c \uc0c8 \uacc4\uc815\uc744 \ub9cc\ub4e4 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<p><a href=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2024\/07\/image4-1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-16044 alignleft\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2024\/07\/image4-1-406x1024.png\" alt=\"\" width=\"147\" height=\"371\" srcset=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/07\/image4-1-406x1024.png 406w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/07\/image4-1-119x300.png 119w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/07\/image4-1-300x756.png 300w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/07\/image4-1.png 562w\" sizes=\"auto, (max-width: 147px) 100vw, 147px\" \/><\/a>\uc774 \uc791\uc5c5\uc744 \uc644\ub8cc\ud558\uba74 Capella \ub300\uc2dc\ubcf4\ub4dc\uc5d0\uc11c \uccab \ubc88\uc9f8 \ub370\uc774\ud130\ubca0\uc774\uc2a4\ub97c \ub9cc\ub4e4 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc774 \uc548\ub0b4\ub97c \uc704\ud574 \ub370\uc774\ud130\ubca0\uc774\uc2a4 \uc774\ub984\uc744 \ub2e4\uc74c\uacfc \uac19\uc774 \uc9c0\uc815\ud574 \ubcf4\uaca0\uc2b5\ub2c8\ub2e4. <i>\uc775\uba85\ud654_\ub370\uc774\ud130_\uc608\uc2dc<\/i>.<\/p>\n<p>\uc0c8 \ub370\uc774\ud130\ubca0\uc774\uc2a4\uc758 \uc694\uc57d\uc774 \ub300\uc2dc\ubcf4\ub4dc \uc67c\ucabd\uc5d0 \ud45c\uc2dc\ub429\ub2c8\ub2e4. Capella\ub294 \uba40\ud2f0\ud074\ub77c\uc6b0\ub4dc\uc774\uba70 AWS, Google Cloud \ub610\ub294 Azure\uc5d0\uc11c \uc791\ub3d9\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc774 \uc608\uc81c\uc5d0\uc11c\ub294 AWS\uc5d0 \ubc30\ud3ec\ud569\ub2c8\ub2e4.<\/p>\n<p>\ub370\uc774\ud130\ubca0\uc774\uc2a4\ub97c \ub9cc\ub4e0 \ud6c4\uc5d0\ub294 \ub370\uc774\ud130\ubca0\uc774\uc2a4\ub97c \uc0dd\uc131\ud574\uc57c \ud569\ub2c8\ub2e4. <i>\ubc84\ud0b7<\/i>. A <i>\ubc84\ud0b7<\/i> \ub294 \ub370\uc774\ud130\uac00 \uc800\uc7a5\ub418\ub294 \ucee8\ud14c\uc774\ub108\uc785\ub2c8\ub2e4. \ub370\uc774\ud130\uc758 \uac01 \ud56d\ubaa9\uc740 <i>\ubb38\uc11c<\/i>\ub294 \ub300\ubd80\ubd84\uc758 \uac1c\ubc1c\uc790\uc5d0\uac8c \uc775\uc219\ud55c \uad6c\ubb38\uc778 JSON\uc73c\ub85c \uc720\uc9c0\ub429\ub2c8\ub2e4. \ubc84\ud0b7 \uc774\ub984\uc740 \uc6d0\ud558\ub294 \ub300\ub85c \uc9c0\uc815\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uadf8\ub7ec\ub098 \uc774 \uc548\ub0b4\uc5d0\uc11c\ub294 \uc774 \ubc84\ud0b7\uc758 \uc774\ub984\uc744 \ub2e4\uc74c\uacfc \uac19\uc774 \uc9c0\uc815\ud574 \ubcf4\uaca0\uc2b5\ub2c8\ub2e4. <i>\uc775\uba85\ud654\ub41c \ub370\uc774\ud130_\uc608\uc2dc<\/i>.<\/p>\n<p>\uc774\uc81c \ub370\uc774\ud130\ubca0\uc774\uc2a4\uc640 \ubc84\ud0b7\uc744 \ubaa8\ub450 \ub9cc\ub4e4\uc5c8\uc73c\ubbc0\ub85c \ub370\uc774\ud130\ubca0\uc774\uc2a4 \uc561\uc138\uc2a4 \uc790\uaca9 \uc99d\uba85\uc744 \ub9cc\ub4e4\uace0 Lambda \ud568\uc218\uc5d0\uc11c \uc0ac\uc6a9\ud560 \uc5f0\uacb0 URL\uc744 \uac00\uc838\uc62c \uc900\ube44\uac00 \ub418\uc5c8\uc2b5\ub2c8\ub2e4.<\/p>\n<p>\ub85c \uc774\ub3d9\ud558\uc5ec <i>\uc5f0\uacb0<\/i> \uc139\uc158\uc5d0 \uc788\ub294 \uc544\uce74\ud3a0\ub77c \ub300\uc2dc\ubcf4\ub4dc\uc758 <i>\uc5f0\uacb0 \ubb38\uc790\uc5f4<\/i>.<\/p>\n<p><a href=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2024\/07\/image2-2.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-large wp-image-16045\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2024\/07\/image2-2-1024x583.png\" alt=\"\" width=\"900\" height=\"512\" srcset=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/07\/image2-2-1024x583.png 1024w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/07\/image2-2-300x171.png 300w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/07\/image2-2-768x438.png 768w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/07\/image2-2-1536x875.png 1536w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/07\/image2-2-1320x752.png 1320w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/07\/image2-2.png 1999w\" sizes=\"auto, (max-width: 900px) 100vw, 900px\" \/><\/a><\/p>\n<p>\uadf8\ub7f0 \ub2e4\uc74c <i>\ub370\uc774\ud130\ubca0\uc774\uc2a4 \uc561\uc138\uc2a4<\/i> \ub9c1\ud06c\ub97c \ud074\ub9ad\ud569\ub2c8\ub2e4. \uc774 \uc139\uc158\uc5d0\uc11c Lambda \ud568\uc218\uac00 \ub370\uc774\ud130\ubca0\uc774\uc2a4 \uc778\uc99d\uc5d0 \uc0ac\uc6a9\ud560 \uc790\uaca9\uc99d\uba85(\uc0ac\uc6a9\uc790 \uc774\ub984\uacfc \ube44\ubc00\ubc88\ud638)\uc744 \ub9cc\ub4e4 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc790\uaca9 \uc99d\uba85\uc744 \uc0dd\uc131\ud55c \ud2b9\uc815 \ubc84\ud0b7\uc73c\ub85c \ubc94\uc704\ub97c \uc9c0\uc815\ud558\uac70\ub098 \uacc4\uc815\uc758 \ubaa8\ub4e0 \ubc84\ud0b7\uacfc \ub370\uc774\ud130\ubca0\uc774\uc2a4\uc5d0 \ub300\ud55c \uad8c\ud55c\uc744 \ubd80\uc5ec\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc5b4\ub5a4 \uacbd\uc6b0\ub4e0 \uc77d\uae30 \ubc0f \uc4f0\uae30 \uc561\uc138\uc2a4 \uad8c\ud55c\uc774 \ubaa8\ub450 \uc788\ub294\uc9c0 \ud655\uc778\ud574\uc57c \ud569\ub2c8\ub2e4.<\/p>\n<p>\uc774\uc81c \ub300\uae30\uc5f4 \uc11c\ube44\uc2a4\uc5d0\uc11c \uba54\uc2dc\uc9c0\ub97c \uc218\uc2e0\ud560 \ub54c\ub9c8\ub2e4 \ud638\ucd9c\ud560 \ub78c\ub2e4 \ud568\uc218\ub97c \ub9cc\ub4e4 \uc900\ube44\uac00 \ub418\uc5c8\uc2b5\ub2c8\ub2e4.<\/p>\n<h3>\ub78c\ub2e4 \ud568\uc218 \ub9cc\ub4e4\uae30<\/h3>\n<p>\ubaa8\ub4e0 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc740 \uc218\uc9d1\ud560 \uc218 \uc788\ub294 PII\uac00 \ub2e4\ub974\uba70, \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc774 \uc6b4\uc601\ub418\ub294 \uc9c0\uc5ed\uc5d0 \ub530\ub77c \ub370\uc774\ud130\ub97c \uc800\uc7a5\ud558\uae30 \uc804\uc5d0 \uc81c\uac70\ud574\uc57c \ud558\ub294 \ud56d\ubaa9\uc5d0 \ub300\ud55c \uc694\uad6c \uc0ac\ud56d\ub3c4 \ub2e4\ub97c \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc774 \uc608\uc5d0\uc11c\ub294 \ubaa8\ub4e0 \uba54\uc2dc\uc9c0\uc758 IP \uc8fc\uc18c\uc640 \uc131\uc744 \uc81c\uac70\ud55c \ud6c4 Couchbase\ub85c \uc804\uc1a1\ud569\ub2c8\ub2e4.<\/p>\n<p>\ub370\uc774\ud130\ub97c \uc0b4\uade0\ud558\ub294 \uae30\ub2a5 \uc790\uccb4\ub294 \ub9e4\uc6b0 \uac04\ub2e8\ud569\ub2c8\ub2e4:<\/p>\n<pre class=\"nums:false lang:js decode:true\">function anonymizeData(data) {\r\n\u00a0\u00a0\u00a0\u00a0data.user.last_name = '';\r\n\u00a0\u00a0\u00a0\u00a0delete data.user.ip_address;\r\n\u00a0\u00a0\u00a0\u00a0return data;\r\n}<\/pre>\n<p>\uc774 \uae30\ub2a5\uc785\ub2c8\ub2e4, <code>\uc775\uba85\ud654\ub370\uc774\ud130<\/code>\uc5d0\uc11c \ud638\ucd9c\ub429\ub2c8\ub2e4. <code>\ud578\ub4e4\ub7ec<\/code> \ud568\uc218\ub97c \uc0ac\uc6a9\ud558\uc138\uc694. \ucf54\ub4dc\uc5d0 \uc775\uc219\ud558\uc9c0 \uc54a\uc740 \uacbd\uc6b0 <code>\ud578\ub4e4\ub7ec<\/code> \ud568\uc218\ub294 AWS Lambda\uac00 SQS \ub300\uae30\uc5f4\uc5d0\uc11c \ub4e4\uc5b4\uc624\ub294 \uba54\uc2dc\uc9c0\ub97c \ucc98\ub9ac\ud558\uace0 \ub370\uc774\ud130\ub97c \ubcc0\ud658\ud558\uc5ec Couchbase\uc5d0 \uc800\uc7a5\ud558\ub294 \ub370 \uc0ac\uc6a9\ub429\ub2c8\ub2e4. \uae30\ubcf8 \uc2e4\ud589 \ucf54\ub4dc\ub294 \ubc18\ub4dc\uc2dc <code>exports.handler<\/code>.<\/p>\n<p>\uadf8\ub9ac\uace0 <code>\ud578\ub4e4\ub7ec<\/code> \ud568\uc218\ub294 \ub78c\ub2e4 \ud568\uc218\uc758 \uad6c\uc131\uc5d0 \uc124\uc815\ub41c \ud658\uacbd \ubcc0\uc218\uc5d0\uc11c Couchbase \uc790\uaca9 \uc99d\uba85\uacfc \uc5f0\uacb0 \ubb38\uc790\uc5f4\uc744 \uac00\uc838\uc635\ub2c8\ub2e4. Lambda \ud568\uc218\uc5d0 \ub300\ud55c \ud658\uacbd \ubcc0\uc218 \uc124\uc815\uc5d0 \ub300\ud55c \uc790\uc138\ud55c \uc9c0\uce68\uc740 <a href=\"https:\/\/docs.aws.amazon.com\/lambda\/latest\/dg\/configuration-envvars.html\">AWS \ubb38\uc11c<\/a>. \uadf8\ub7f0 \ub2e4\uc74c \ud568\uc218\ub294 SQS\uc5d0\uc11c \ubc1b\uc740 \uba54\uc2dc\uc9c0\ub97c \uad6c\ubb38 \ubd84\uc11d\ud558\uace0 <code>\uc775\uba85\ud654\ub370\uc774\ud130<\/code> \uae30\ub2a5\uc744 \uc0ac\uc6a9\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ub9c8\uc9c0\ub9c9\uc73c\ub85c <i>\uc5c5\uc11c\ud2b8<\/i> \ub370\uc774\ud130\ub97c \uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \ubc84\ud0b7\uc5d0 \ub123\uc2b5\ub2c8\ub2e4.<\/p>\n<pre class=\"nums:false lang:js decode:true\">exports.handler = async (event) =&gt; {\r\n\u00a0\u00a0\u00a0\u00a0console.log('Starting Lambda function');\u00a0\r\n\r\n\u00a0\u00a0\u00a0\u00a0if (!event.Records || !Array.isArray(event.Records)) {\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0throw new TypeError('event.Records is not iterable');\r\n\u00a0\u00a0\u00a0\u00a0}\r\n\r\n\u00a0\u00a0\u00a0\u00a0const connectionString = process.env.COUCHBASE_CONNECTION_STRING;\r\n\u00a0\u00a0\u00a0\u00a0const username = process.env.COUCHBASE_USERNAME;\r\n\u00a0\u00a0\u00a0\u00a0const password = process.env.COUCHBASE_PASSWORD;\r\n\u00a0\u00a0\u00a0\u00a0const bucketName = process.env.COUCHBASE_BUCKET_NAME;\r\n\r\n\u00a0\u00a0\u00a0\u00a0try {\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0const cluster = await couchbase.connect(connectionString, {\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0username: username,\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0password: password\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0});\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0console.log('Connected to Couchbase cluster');\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0const bucket = cluster.bucket(bucketName);\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0const collection = bucket.defaultCollection();\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0for (const record of event.Records) {\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0console.log('Processing record:', record);\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0const payload = JSON.parse(record.body);\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0const transformedData = anonymizeData(payload);\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0console.log('Transformed data:', transformedData);\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0await collection.upsert(transformedData.record_id, transformedData);\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0console.log('Data upserted:', transformedData.record_id);\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0}\r\n\u00a0\u00a0\u00a0\u00a0} catch (error) {\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0console.error('Error during processing:', error);\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0throw error;\r\n\u00a0\u00a0\u00a0\u00a0}\r\n};<\/pre>\n<p>AWS CLI\ub97c \uc0ac\uc6a9\ud558\uc5ec Lambda \ud568\uc218\ub97c \uc124\uc815\ud558\ub824\uba74 \uc0c8 Lambda \ud568\uc218\ub97c \ub9cc\ub4e4\uace0 \ud544\uc694\ud55c IAM \uc5ed\ud560 \ubc0f \ud578\ub4e4\ub7ec\ub97c \uc9c0\uc815\ud574\uc57c \ud569\ub2c8\ub2e4. \ubc29\ubc95\uc740 \ub2e4\uc74c\uacfc \uac19\uc2b5\ub2c8\ub2e4:<\/p>\n<pre class=\"nums:false wrap:true lang:sh decode:true\">aws lambda create-function --function-name AnonymizeDataExampleFunction \\\r\n  --package-type Image \\\r\n  --code ImageUri=&lt;your-account-id&gt;.dkr.ecr.&lt;your-region&gt;.amazonaws.com\/anonymize_data_example_image:latest \\\r\n  --role arn:aws:iam::&lt;your-account-id&gt;:role\/&lt;your-lambda-execution-role&gt;\r\n\r\n<\/pre>\n<p>\ub2e4\uc74c\uc744 \uad50\uccb4\ud574\uc57c \ud569\ub2c8\ub2e4. <em><code>&lt;your-account-id&gt;<\/code><\/em>, <code>&lt;your-region&gt;<\/code>\ubc0f <code>&lt;your-lambda-execution-role&gt;<\/code> \ub97c \uc2e4\uc81c AWS \uacc4\uc815 ID, \ub9ac\uc804 \ubc0f Lambda \ud568\uc218\uc5d0 \ub300\ud574 \uc0dd\uc131\ud55c IAM \uc5ed\ud560\uc758 ARN\uc73c\ub85c \ub300\uccb4\ud569\ub2c8\ub2e4. \uc774 \uba85\ub839\uc740 AWS ECR\uc5d0 \uac8c\uc2dc\ud560 Docker \uc774\ubbf8\uc9c0\ub97c \uc0ac\uc6a9\ud558\ub3c4\ub85d Lambda \ud568\uc218\ub97c \uc124\uc815\ud569\ub2c8\ub2e4.<\/p>\n<p>\uc774\uc81c Lambda \ud568\uc218\ub97c Docker \uc774\ubbf8\uc9c0\ub85c \ud328\ud0a4\uc9d5\ud558\uc5ec AWS ECR \uc11c\ube44\uc2a4\uc5d0 \uac8c\uc2dc\ud560 \uc900\ube44\uac00 \ub418\uc5c8\uc2b5\ub2c8\ub2e4.<\/p>\n<h3>ECR\uc5d0 \ub3c4\ucee4 \uc774\ubbf8\uc9c0 \ubc30\ud3ec\ud558\uae30<\/h3>\n<p>AWS ECR\uc5d0 Docker \uc774\ubbf8\uc9c0\ub97c \ubc30\ud3ec\ud558\ub824\uba74 \uba3c\uc800 Linux\/amd64 \ud50c\ub7ab\ud3fc\uc6a9 Docker \uc774\ubbf8\uc9c0\ub97c \ube4c\ub4dc\ud569\ub2c8\ub2e4. \uc774\ub807\uac8c \ud558\uba74 Lambda \ud568\uc218\uc758 x86_64 \uc544\ud0a4\ud14d\ucc98\uc640\uc758 \ud638\ud658\uc131\uc744 \ubcf4\uc7a5\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc6b0\ub9ac\ub294 <i>\ub3c4\ucee4\ud30c\uc77c<\/i> \ub97c \uc2e4\ud589\ud558\uc5ec \ud544\uc694\ud55c \ub3c4\uad6c\uc640 \uc885\uc18d \uc694\uc18c\ub97c \uc124\uce58\ud558\uace0, \uc791\uc5c5 \ub514\ub809\ud130\ub9ac\ub97c \uc124\uc815\ud558\uace0, \ud544\uc694\ud55c \ud30c\uc77c\uc744 \ubcf5\uc0ac\ud558\uace0, \uc885\uc18d \uc694\uc18c\ub97c \uc124\uce58\ud558\uace0, Lambda \ud568\uc218 \ucf54\ub4dc\ub97c \ubcf5\uc0ac\ud569\ub2c8\ub2e4. \uadf8\ub9ac\uace0 <i>\ub3c4\ucee4\ud30c\uc77c<\/i> \ub294 \ub78c\ub2e4 \ud568\uc218\ub97c \uc2e4\ud589\ud558\ub294 \uba85\ub839\ub3c4 \uc9c0\uc815\ud569\ub2c8\ub2e4.<\/p>\n<p>\ub2e4\uc74c\uc740 <i>\ub3c4\ucee4\ud30c\uc77c<\/i>:<\/p>\n<pre class=\"nums:false lang:default decode:true\">FROM public.ecr.aws\/lambda\/nodejs:18\r\n\r\n# Install necessary tools and dependencies\r\nRUN yum -y install gcc-c++ tar gzip findutils\r\n\r\n# Set the working directory\r\nWORKDIR \/var\/task\r\n\r\n# Copy package.json and package-lock.json\r\nCOPY package*.json .\/\r\n\r\n# Install dependencies\r\nRUN npm install\r\n\r\n# Copy the function code\r\nCOPY index.js .\/\r\n\r\n# Command to run the Lambda function\r\nCMD [ \"index.handler\" ]\r\n<\/pre>\n<p>\ub3c4\ucee4\ud30c\uc77c\uc774 \uc900\ube44\ub418\uba74 \uc9c0\uc815\ub41c \ud50c\ub7ab\ud3fc\uc73c\ub85c \ub3c4\ucee4 \uc774\ubbf8\uc9c0\ub97c \ube4c\ub4dc\ud569\ub2c8\ub2e4:<\/p>\n<pre class=\"nums:false lang:default decode:true\">docker build --platform linux\/amd64 -t anonymize_data_example_image .\r\n<\/pre>\n<p>\uc774\ubbf8\uc9c0\ub97c \ube4c\ub4dc\ud55c \ud6c4\uc5d0\ub294 AWS ECR \ub9ac\ud3ec\uc9c0\ud1a0\ub9ac\uc5d0 \uc801\uc808\ud558\uac8c \ud0dc\uadf8\ub97c \uc9c0\uc815\ud569\ub2c8\ub2e4:<\/p>\n<pre class=\"nums:false wrap:true lang:default decode:true\">docker tag anonymize_data_example_image:latest &lt;your-account-id&gt;.dkr.ecr.&lt;your-region&gt;.amazonaws.com\/anonymize_data_example_image:latest<\/pre>\n<p>Docker \uc774\ubbf8\uc9c0\ub97c ECR\ub85c \ud478\uc2dc\ud558\ub824\uba74 \uba3c\uc800 AWS CLI\ub97c \uc0ac\uc6a9\ud558\uc5ec ECR \ub808\uc9c0\uc2a4\ud2b8\ub9ac\uc5d0 \ub85c\uadf8\uc778\ud558\uc5ec \ub85c\uadf8\uc778 \uc790\uaca9 \uc99d\uba85\uc744 \uc5bb\uc2b5\ub2c8\ub2e4:<\/p>\n<pre class=\"nums:false wrap:true lang:default decode:true\">aws ecr get-login-password --region &lt;your-region&gt; | docker login --username AWS --password-stdin &lt;your-account-id&gt;.dkr.ecr.&lt;your-region&gt;.amazonaws.com<\/pre>\n<p>\uc790\uaca9 \uc99d\uba85\uc774 \uc900\ube44\ub418\uba74 Docker \uc774\ubbf8\uc9c0\ub97c ECR \ub9ac\ud3ec\uc9c0\ud1a0\ub9ac\uc5d0 \ud478\uc2dc\ud569\ub2c8\ub2e4:<\/p>\n<pre class=\"nums:false wrap:true lang:default decode:true\">docker push &lt;your-account-id&gt;.dkr.ecr.&lt;your-region&gt;.amazonaws.com\/anonymize_data_example_image:latest<\/pre>\n<p>\ub9c8\uc9c0\ub9c9\uc73c\ub85c \ub78c\ub2e4 \ud568\uc218\ub97c \uc5c5\ub370\uc774\ud2b8\ud569\ub2c8\ub2e4. <code>\uc775\uba85\ud654 \ub370\uc774\ud130 \uc608\uc81c \ud568\uc218<\/code> \ub97c \uc0ac\uc6a9\ud558\uc5ec ECR\uc758 \uc0c8 Docker \uc774\ubbf8\uc9c0\ub97c \uc0ac\uc6a9\ud574\uc57c \ud569\ub2c8\ub2e4. \uc5ec\uae30\uc5d0\ub294 \uc774\ubbf8\uc9c0 URI\ub97c \uc9c0\uc815\ud558\uace0 \uc0c8\ub85c \ud478\uc2dc\ub41c Docker \uc774\ubbf8\uc9c0\uc5d0\uc11c \ucf54\ub4dc\ub97c \uc2e4\ud589\ud558\ub3c4\ub85d Lambda \ud568\uc218\uac00 \uad6c\uc131\ub418\uc5b4 \uc788\ub294\uc9c0 \ud655\uc778\ud558\ub294 \uc791\uc5c5\uc774 \ud3ec\ud568\ub429\ub2c8\ub2e4:<\/p>\n<pre class=\"nums:false wrap:true lang:default decode:true\">aws lambda update-function-code --function-name AnonymizeDataExampleFunction --image-uri &lt;your-account-id&gt;.dkr.ecr.&lt;your-region&gt;.amazonaws.com\/anonymize_data_example_image:latest<\/pre>\n<p>\uc774 \ub2e8\uacc4\ub97c \uc218\ud589\ud558\uba74 Docker \uc774\ubbf8\uc9c0\uac00 AWS ECR\uc5d0 \uc131\uacf5\uc801\uc73c\ub85c \ubc30\ud3ec\ub418\uace0 Lambda \ud568\uc218\uac00 \uc0c8 \uc774\ubbf8\uc9c0\ub97c \uc0ac\uc6a9\ud558\ub3c4\ub85d \uc5c5\ub370\uc774\ud2b8\ub418\uc5b4 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc774 Couchbase\uc5d0 \uc800\uc7a5\ud558\uae30 \uc804\uc5d0 PII\ub97c \uc0b4\uade0\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc774 \uc124\uc815\uc744 \ud1b5\ud574 \ub370\uc774\ud130 \ucc98\ub9ac\uac00 \uac1c\uc778\uc815\ubcf4 \ubcf4\ud638 \uc694\uac74\uc744 \uc900\uc218\ud558\ub294 \ub3d9\uc2dc\uc5d0 AWS\uc640 Couchbase\uc758 \uac15\ub825\ud55c \uae30\ub2a5\uc744 \ud65c\uc6a9\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<h3>SQS \uc11c\ube44\uc2a4 \uc124\uc815<\/h3>\n<p>\uba54\uc2dc\uc9c0 \ubc1c\uc2e0\uc790\uc640 \ub78c\ub2e4 \ud568\uc218 \uac04\uc758 \ub370\uc774\ud130 \ud750\ub984\uc744 \uc6d0\ud65c\ud558\uac8c \ud558\ub824\uba74 Amazon SQS \ub300\uae30\uc5f4\uc744 \uc124\uc815\ud574\uc57c \ud569\ub2c8\ub2e4. SQS \ub300\uae30\uc5f4\uc740 Lambda \ud568\uc218\uc5d0\uc11c \ucc98\ub9ac\ub420 \ub54c\uae4c\uc9c0 \uba54\uc2dc\uc9c0\ub97c \uc218\uc2e0\ud558\uace0 \uc800\uc7a5\ud558\ub294 \ubc84\ud37c \uc5ed\ud560\uc744 \ud569\ub2c8\ub2e4. \ub2e4\uc74c\uc740 AWS CLI\ub97c \uc0ac\uc6a9\ud558\uc5ec SQS \ub300\uae30\uc5f4\uc744 \uc124\uc815\ud558\uace0 \uc774\ub97c Lambda \ud568\uc218\uc758 \ud2b8\ub9ac\uac70\ub85c \ub9cc\ub4dc\ub294 \ubc29\ubc95\uc785\ub2c8\ub2e4.<\/p>\n<p>\uba3c\uc800 \uc0c8 SQS \ub300\uae30\uc5f4\uc744 \ub9cc\ub4ed\ub2c8\ub2e4. \uc774 \ub300\uae30\uc5f4\uc740 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc778 \uba54\uc2dc\uc9c0 \ubc1c\uc2e0\uc790\ub85c\ubd80\ud130 \uc0ac\uc6a9\uc790 \ub370\uc774\ud130\uac00 \ud3ec\ud568\ub41c \uba54\uc2dc\uc9c0\ub97c \uc218\uc2e0\ud569\ub2c8\ub2e4.<\/p>\n<pre class=\"nums:false wrap:true lang:default decode:true\">aws sqs create-queue --queue-name AnonymizeDataExampleQueue<\/pre>\n<p>\ub300\uae30\uc5f4\uc744 \ub9cc\ub4e4\uba74 \ub300\uae30\uc5f4\uc758 URL\uc744 \ubc1b\uac8c \ub429\ub2c8\ub2e4. \uc774 URL\uc740 \ub300\uae30\uc5f4\uc5d0 \uba54\uc2dc\uc9c0\ub97c \ubcf4\ub0b4\uace0 \ub78c\ub2e4 \ud568\uc218\uc758 \ud2b8\ub9ac\uac70\ub85c \uad6c\uc131\ud558\ub294 \ub370 \ud544\uc694\ud569\ub2c8\ub2e4.<\/p>\n<p>\ub2e4\uc74c\uc73c\ub85c \uad8c\ud55c \ubc0f \ud2b8\ub9ac\uac70\ub97c \uc124\uc815\ud558\ub294 \ub370 \ud544\uc694\ud55c SQS \ub300\uae30\uc5f4\uc758 ARN\uc744 \uac00\uc838\uc640\uc57c \ud569\ub2c8\ub2e4. \ub2e4\uc74c \uba85\ub839\uc744 \uc0ac\uc6a9\ud558\uc5ec ARN\uc744 \uac80\uc0c9\ud569\ub2c8\ub2e4:<\/p>\n<pre class=\"nums:false wrap:true lang:default decode:true\">aws sqs get-queue-attributes --queue-url https:\/\/sqs.&lt;your-region&gt;.amazonaws.com\/&lt;your-account-id&gt;\/AnonymizeDataExampleQueue --attribute-names QueueArn<\/pre>\n<p>\uad50\uccb4 <code>&lt;your-region&gt;<\/code> \uadf8\ub9ac\uace0 <code>&lt;your-account-id&gt;<\/code> \uc2e4\uc81c AWS \uc9c0\uc5ed\uacfc \uacc4\uc815 ID\ub97c \uc785\ub825\ud558\uc138\uc694.<\/p>\n<p>\ucd9c\ub825\uc5d0\ub294 \ub2e4\uc74c\uacfc \uac19\uc740 \ub0b4\uc6a9\uc774 \ud3ec\ud568\ub429\ub2c8\ub2e4. <i>QueueArn<\/i>\uc640 \uac19\uc740 \ubaa8\uc591\uc785\ub2c8\ub2e4:<\/p>\n<pre class=\"nums:false wrap:true lang:default decode:true\">{\r\n\u00a0\u00a0\u00a0\u00a0\"Attributes\": {\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"QueueArn\": \"arn:aws:sqs:&lt;your-region&gt;:&lt;your-account-id&gt;:AnonymizeDataExampleQueue\"\r\n\u00a0\u00a0\u00a0\u00a0}\r\n}<\/pre>\n<p>\uc774\uc81c Lambda \ud568\uc218\uc5d0 SQS \ub300\uae30\uc5f4\uc5d0\uc11c \uba54\uc2dc\uc9c0\ub97c \uc77d\uc744 \uc218 \uc788\ub294 \uad8c\ud55c\uc744 \ubd80\uc5ec\ud574\uc57c \ud569\ub2c8\ub2e4. \ub2e4\uc74c\uacfc \uac19\uc740 \uc774\ub984\uc758 \uc815\ucc45 \ud30c\uc77c\uc744 \ub9cc\ub4ed\ub2c8\ub2e4. <i>lambda-sqs-policy.json<\/i> \ub97c \ub2e4\uc74c\uacfc \uac19\uc740 \ub0b4\uc6a9\uc73c\ub85c \uc5c5\ub370\uc774\ud2b8\ud569\ub2c8\ub2e4:<\/p>\n<pre class=\"nums:false lang:default decode:true\">{\r\n\u00a0\u00a0\"Version\": \"2012-10-17\",\r\n\u00a0\u00a0\"Statement\": [\r\n\u00a0\u00a0\u00a0\u00a0{\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"Effect\": \"Allow\",\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"Action\": \"sqs:ReceiveMessage\",\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"Resource\": \"arn:aws:sqs:&lt;your-region&gt;:&lt;your-account-id&gt;:AnonymizeDataExampleQueue\"\r\n\u00a0\u00a0\u00a0\u00a0},\r\n\u00a0\u00a0\u00a0\u00a0{\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"Effect\": \"Allow\",\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"Action\": \"sqs:DeleteMessage\",\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"Resource\": \"arn:aws:sqs:&lt;your-region&gt;:&lt;your-account-id&gt;:AnonymizeDataExampleQueue\"\r\n\u00a0\u00a0\u00a0\u00a0},\r\n\u00a0\u00a0\u00a0\u00a0{\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"Effect\": \"Allow\",\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"Action\": \"sqs:GetQueueAttributes\",\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"Resource\": \"arn:aws:sqs:&lt;your-region&gt;:&lt;your-account-id&gt;:AnonymizeDataExampleQueue\"\r\n\u00a0\u00a0\u00a0\u00a0}\r\n\u00a0\u00a0]\r\n}<\/pre>\n<p>\uc774 \uc815\ucc45\uc744 \ub78c\ub2e4 \uc2e4\ud589 \uc5ed\ud560\uc5d0 \uc801\uc6a9\ud558\uc138\uc694:<\/p>\n<pre class=\"nums:false wrap:true lang:default decode:true\">aws iam put-role-policy --role-name &lt;your-lambda-execution-role&gt; --policy-name LambdaSQSPolicy --policy-document file:\/\/lambda-sqs-policy.json<\/pre>\n<p>\ub2e4\uc74c\uc73c\ub85c, \ub78c\ub2e4 \ud568\uc218\uc758 \ud2b8\ub9ac\uac70\ub85c SQS \ub300\uae30\uc5f4\uc744 \ucd94\uac00\ud569\ub2c8\ub2e4:<\/p>\n<pre class=\"nums:false wrap:true lang:default decode:true\">aws lambda create-event-source-mapping --function-name AnonymizeDataExampleFunction --batch-size 10 --event-source-arn arn:aws:sqs:&lt;your-region&gt;:&lt;your-account-id&gt;:AnonymizeDataExampleQueue<\/pre>\n<p>\uc774 \uba85\ub839\uc740 SQS \ub300\uae30\uc5f4\uc5d0 \ub3c4\ucc29\ud558\ub294 \uba54\uc2dc\uc9c0\uc5d0 \uc758\ud574 \ud2b8\ub9ac\uac70\ub418\ub3c4\ub85d \ub78c\ub2e4 \ud568\uc218\ub97c \uc124\uc815\ud569\ub2c8\ub2e4.<\/p>\n<p>\uc774\uc81c Lambda \ud568\uc218\uac00 \ub300\uae30\uc5f4 \uc11c\ube44\uc2a4\ub85c \uc804\uc1a1\ub418\ub294 \ubaa8\ub4e0 \uba54\uc2dc\uc9c0\ub97c \uc218\uc2e0\ud558\ub3c4\ub85d \uc124\uc815\ub418\uc5c8\uc2b5\ub2c8\ub2e4. \uc6cc\ud06c\ud50c\ub85c\uc6b0\uac00 \uc644\ub8cc\ub418\uc5c8\uc2b5\ub2c8\ub2e4! \uc774 \uc124\uc815\uc744 \ud1b5\ud574 \uac1c\uc778\uc815\ubcf4 \ubcf4\ud638 \uc694\uac74\uc744 \uc900\uc218\ud558\uba74\uc11c \uc0ac\uc6a9\uc790 \ub370\uc774\ud130\ub97c \ud6a8\uc728\uc801\uc73c\ub85c \ucc98\ub9ac\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<h3>\ub85c\uceec\uc5d0\uc11c \uad6c\ud604 \ud14c\uc2a4\ud2b8<\/h3>\n<p>\ubaa8\ub4e0 \uac83\uc774 \uc608\uc0c1\ub300\ub85c \uc791\ub3d9\ud558\ub294\uc9c0 \ud655\uc778\ud558\uae30 \uc704\ud574 \uc9c1\uc811 \ub300\uae30\uc5f4\uc5d0 \uba54\uc2dc\uc9c0\ub97c \ubcf4\ub0b4 \uc6cc\ud06c\ud50c\ub85c\uc6b0\ub97c \ud14c\uc2a4\ud2b8\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uba85\ub839\uc904\uc5d0\uc11c \ub2e4\uc74c\uc744 \uc2e4\ud589\ud569\ub2c8\ub2e4:<\/p>\n<pre class=\"nums:false wrap:true lang:default decode:true\">aws sqs send-message --queue-url https:\/\/sqs.&lt;your-region&gt;.amazonaws.com\/&lt;your-account-id&gt;\/AnonymizeDataExampleQueue --message-body \"{\\\"record_id\\\": \\\"purchase_002\\\", \\\"item\\\": \\\"item_1\\\", \\\"user\\\": {\\\"first_name\\\": \\\"John\\\", \\\"last_name\\\": \\\"Doe\\\", \\\"ip_address\\\": \\\"192.168.1.1\\\"}, \\\"timestamp\\\": \\\"2024-07-01T12:34:56Z\\\"}\"<\/pre>\n<p>\uc774 \uba54\uc2dc\uc9c0\ub294 Lambda \ud568\uc218\ub97c \ud2b8\ub9ac\uac70\ud558\uace0, \uc774 \ud568\uc218\ub294 \ub370\uc774\ud130\ub97c \uc0b4\uade0\ud55c \ud6c4 Couchbase \ubc84\ud0b7\uc5d0 \ub370\uc774\ud130\ub97c \ucd94\uac00\ud569\ub2c8\ub2e4. \uba54\uc2dc\uc9c0\uc5d0\uc11c \ubcf4\ub0b8 \uc0d8\ud50c \ub370\uc774\ud130\ub294 Capella \ub300\uc2dc\ubcf4\ub4dc\uc5d0 \ub85c\uadf8\uc778\ud558\uac70\ub098 <a href=\"https:\/\/marketplace.visualstudio.com\/items?itemName=Couchbase.vscode-couchbase\">VSCode<\/a> \ub610\ub294 <a href=\"https:\/\/plugins.jetbrains.com\/plugin\/22131-couchbase\">Jetbrains<\/a> IDE\ub97c \uc9c1\uc811 \uc0ac\uc6a9\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<h2>\ub9c8\ubb34\ub9ac<\/h2>\n<p>\uc624\ub298\ub0a0 \ucd5c\uc2e0 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc744 \uad6c\ucd95, \ubc30\ud3ec \ubc0f \uc720\uc9c0 \uad00\ub9ac\ud558\ub294 \uc791\uc5c5\uc740 \uc5c4\uccad\ub09c \uc791\uc5c5\uc785\ub2c8\ub2e4. \uac00\ub2a5\ud55c \ud55c \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc758 \ud575\uc2ec \ube44\uc988\ub2c8\uc2a4\uc640 \uc9c1\uc811\uc801\uc73c\ub85c \uad00\ub828\uc774 \uc5c6\ub294 \uc791\uc5c5\uc740 \ub2e8\uc21c\ud654\ud558\uace0 \ucd94\uc0c1\ud654\ud558\uc5ec \uc5d4\uc9c0\ub2c8\uc5b4, SRE \ubc0f \uad00\ub828\ub41c \ubaa8\ub4e0 \uc0ac\ub78c\uc758 \uc778\uc9c0 \ubd80\ud558\ub97c \uc904\uc5ec\uc57c \ud569\ub2c8\ub2e4. \uac1c\uc778\uc815\ubcf4 \ubcf4\ud638 \uaddc\uc815\uc740 \uc5c4\uaca9\ud558\uac8c \uc900\uc218\ud574\uc57c \ud558\ub294 \uc8fc\uc694 \ud56d\ubaa9 \uc911 \ud558\ub098\uc774\uba70, \ud070 \uace8\uce6b\uac70\ub9ac\ub098 \uc5c5\ubb34\ub7c9 \uc99d\uac00\ub97c \uc720\ubc1c\ud574\uc11c\ub294 \uc548 \ub429\ub2c8\ub2e4.<\/p>\n<p>\uac1c\uc778 \uc2dd\ubcc4 \uc815\ubcf4\uc640 \uc0c1\ud638\uc791\uc6a9\ud558\ub294 \ubaa8\ub4e0 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uacfc \ub370\uc774\ud130\uac00 \uc800\uc7a5\ub41c \ub370\uc774\ud130\ubca0\uc774\uc2a4 \uc0ac\uc774\uc5d0 \uc27d\uac8c \ubc30\uce58\ud560 \uc218 \uc788\ub294 \uc790\ub3d9\ud654\ub41c \ud50c\ub7ec\uadf8 \uc564 \ud50c\ub808\uc774 \uc6cc\ud06c\ud50c\ub85c\uc6b0\ub97c \uad6c\ucd95\ud558\uba74 \uc778\uc9c0 \ubd80\ud558\ub97c \ud06c\uac8c \uc644\ud654\ud558\uace0 \ubd80\ub2f4\uc744 \uc904\uc774\uba70 \uac1c\ubc1c \ud504\ub85c\uc138\uc2a4\ub97c \uac04\uc18c\ud654\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. AWS\uc640 Couchbase\ub97c \ud568\uaed8 \ud65c\uc6a9\ud558\uba74 \uc2e4\uc2dc\uac04 \ub370\uc774\ud130 \uc0b4\uade0 \uc694\uad6c \uc0ac\ud56d\uc744 \ucda9\uc871\ud558\uc5ec \uc0ac\uc6a9\uc790 \ubb34\uacb0\uc131\uacfc \uc5d4\uc9c0\ub2c8\uc5b4\ub9c1 \uc0dd\uc0b0\uc131\uc744 \ubaa8\ub450 \ubcf4\uc7a5\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>","protected":false},"excerpt":{"rendered":"<p>Any modern web application that interacts with users in different localities must contend with varying privacy requirements and user data consent guidelines. These can be overwhelming for any engineering team to handle, regardless whether the team is just you or [&hellip;]<\/p>","protected":false},"author":85356,"featured_media":16046,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[1815,2225,1816,1813],"tags":[9445,2135,9997],"ppma_author":[9985],"class_list":["post-16042","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-best-practices-and-tutorials","category-cloud","category-couchbase-server","category-security","tag-data-privacy","tag-gdpr","tag-pii"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.7.1 (Yoast SEO v25.7) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Privacy Requirements Without the Headache - The Couchbase Blog<\/title>\n<meta name=\"description\" content=\"Every application that collects any aspect of a user\u2019s information must ensure rigorous consent and be in compliance with the laws and regulations of every locality it operates in across the globe.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.couchbase.com\/blog\/ko\/privacy-requirements-without-the-headache\/\" \/>\n<meta property=\"og:locale\" content=\"ko_KR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Privacy Requirements Without the Headache\" \/>\n<meta property=\"og:description\" content=\"Every application that collects any aspect of a user\u2019s information must ensure rigorous consent and be in compliance with the laws and regulations of every locality it operates in across the globe.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.couchbase.com\/blog\/ko\/privacy-requirements-without-the-headache\/\" \/>\n<meta property=\"og:site_name\" content=\"The Couchbase Blog\" \/>\n<meta property=\"article:published_time\" content=\"2024-07-24T20:54:13+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-07-30T18:05:08+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2024\/07\/image3-2.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"640\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Ben Greenberg, Senior Developer Evangelist\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Ben Greenberg, Senior Developer Evangelist\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"10\ubd84\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/privacy-requirements-without-the-headache\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/privacy-requirements-without-the-headache\/\"},\"author\":{\"name\":\"Ben Greenberg, Senior Developer Evangelist\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/48efa1524aec97312d92f65a270c255d\"},\"headline\":\"Privacy Requirements Without the Headache\",\"datePublished\":\"2024-07-24T20:54:13+00:00\",\"dateModified\":\"2024-07-30T18:05:08+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/privacy-requirements-without-the-headache\/\"},\"wordCount\":1989,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/privacy-requirements-without-the-headache\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/07\/image3-2.png\",\"keywords\":[\"data privacy\",\"gdpr\",\"pii\"],\"articleSection\":[\"Best Practices and Tutorials\",\"Couchbase Capella\",\"Couchbase Server\",\"Security\"],\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/privacy-requirements-without-the-headache\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/privacy-requirements-without-the-headache\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/privacy-requirements-without-the-headache\/\",\"name\":\"Privacy Requirements Without the Headache - The Couchbase Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/privacy-requirements-without-the-headache\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/privacy-requirements-without-the-headache\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/07\/image3-2.png\",\"datePublished\":\"2024-07-24T20:54:13+00:00\",\"dateModified\":\"2024-07-30T18:05:08+00:00\",\"description\":\"Every application that collects any aspect of a user\u2019s information must ensure rigorous consent and be in compliance with the laws and regulations of every locality it operates in across the globe.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/privacy-requirements-without-the-headache\/#breadcrumb\"},\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/privacy-requirements-without-the-headache\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/privacy-requirements-without-the-headache\/#primaryimage\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/07\/image3-2.png\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/07\/image3-2.png\",\"width\":1200,\"height\":640},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/privacy-requirements-without-the-headache\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.couchbase.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Privacy Requirements Without the Headache\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\",\"url\":\"https:\/\/www.couchbase.com\/blog\/\",\"name\":\"The Couchbase Blog\",\"description\":\"Couchbase, the NoSQL Database\",\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.couchbase.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"ko-KR\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\",\"name\":\"The Couchbase Blog\",\"url\":\"https:\/\/www.couchbase.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png\",\"width\":218,\"height\":34,\"caption\":\"The Couchbase Blog\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/48efa1524aec97312d92f65a270c255d\",\"name\":\"Ben Greenberg, Senior Developer Evangelist\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/c9bda12524045d12a5878a2ef3fbe0de\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/06\/T024FJS4M-U075H3NTJUR-b4c321d902e2-512.jpeg\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/06\/T024FJS4M-U075H3NTJUR-b4c321d902e2-512.jpeg\",\"caption\":\"Ben Greenberg, Senior Developer Evangelist\"},\"url\":\"https:\/\/www.couchbase.com\/blog\/ko\/author\/bengreenberg\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Privacy Requirements Without the Headache - The Couchbase Blog","description":"Every application that collects any aspect of a user\u2019s information must ensure rigorous consent and be in compliance with the laws and regulations of every locality it operates in across the globe.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.couchbase.com\/blog\/ko\/privacy-requirements-without-the-headache\/","og_locale":"ko_KR","og_type":"article","og_title":"Privacy Requirements Without the Headache","og_description":"Every application that collects any aspect of a user\u2019s information must ensure rigorous consent and be in compliance with the laws and regulations of every locality it operates in across the globe.","og_url":"https:\/\/www.couchbase.com\/blog\/ko\/privacy-requirements-without-the-headache\/","og_site_name":"The Couchbase Blog","article_published_time":"2024-07-24T20:54:13+00:00","article_modified_time":"2024-07-30T18:05:08+00:00","og_image":[{"width":1200,"height":640,"url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2024\/07\/image3-2.png","type":"image\/png"}],"author":"Ben Greenberg, Senior Developer Evangelist","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Ben Greenberg, Senior Developer Evangelist","Est. reading time":"10\ubd84"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.couchbase.com\/blog\/privacy-requirements-without-the-headache\/#article","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/privacy-requirements-without-the-headache\/"},"author":{"name":"Ben Greenberg, Senior Developer Evangelist","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/48efa1524aec97312d92f65a270c255d"},"headline":"Privacy Requirements Without the Headache","datePublished":"2024-07-24T20:54:13+00:00","dateModified":"2024-07-30T18:05:08+00:00","mainEntityOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/privacy-requirements-without-the-headache\/"},"wordCount":1989,"commentCount":0,"publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/privacy-requirements-without-the-headache\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/07\/image3-2.png","keywords":["data privacy","gdpr","pii"],"articleSection":["Best Practices and Tutorials","Couchbase Capella","Couchbase Server","Security"],"inLanguage":"ko-KR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.couchbase.com\/blog\/privacy-requirements-without-the-headache\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.couchbase.com\/blog\/privacy-requirements-without-the-headache\/","url":"https:\/\/www.couchbase.com\/blog\/privacy-requirements-without-the-headache\/","name":"Privacy Requirements Without the Headache - The Couchbase Blog","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/privacy-requirements-without-the-headache\/#primaryimage"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/privacy-requirements-without-the-headache\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/07\/image3-2.png","datePublished":"2024-07-24T20:54:13+00:00","dateModified":"2024-07-30T18:05:08+00:00","description":"Every application that collects any aspect of a user\u2019s information must ensure rigorous consent and be in compliance with the laws and regulations of every locality it operates in across the globe.","breadcrumb":{"@id":"https:\/\/www.couchbase.com\/blog\/privacy-requirements-without-the-headache\/#breadcrumb"},"inLanguage":"ko-KR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.couchbase.com\/blog\/privacy-requirements-without-the-headache\/"]}]},{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/www.couchbase.com\/blog\/privacy-requirements-without-the-headache\/#primaryimage","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/07\/image3-2.png","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/07\/image3-2.png","width":1200,"height":640},{"@type":"BreadcrumbList","@id":"https:\/\/www.couchbase.com\/blog\/privacy-requirements-without-the-headache\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.couchbase.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Privacy Requirements Without the Headache"}]},{"@type":"WebSite","@id":"https:\/\/www.couchbase.com\/blog\/#website","url":"https:\/\/www.couchbase.com\/blog\/","name":"\uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \ube14\ub85c\uadf8","description":"NoSQL \ub370\uc774\ud130\ubca0\uc774\uc2a4, Couchbase","publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.couchbase.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ko-KR"},{"@type":"Organization","@id":"https:\/\/www.couchbase.com\/blog\/#organization","name":"\uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \ube14\ub85c\uadf8","url":"https:\/\/www.couchbase.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png","width":218,"height":34,"caption":"The Couchbase Blog"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/48efa1524aec97312d92f65a270c255d","name":"\ubca4 \uadf8\ub9b0\ubc84\uadf8, \uc218\uc11d \uac1c\ubc1c\uc790 \uc5d0\ubc18\uc824\ub9ac\uc2a4\ud2b8","image":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/c9bda12524045d12a5878a2ef3fbe0de","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/06\/T024FJS4M-U075H3NTJUR-b4c321d902e2-512.jpeg","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/06\/T024FJS4M-U075H3NTJUR-b4c321d902e2-512.jpeg","caption":"Ben Greenberg, Senior Developer Evangelist"},"url":"https:\/\/www.couchbase.com\/blog\/ko\/author\/bengreenberg\/"}]}},"authors":[{"term_id":9985,"user_id":85356,"is_guest":0,"slug":"bengreenberg","display_name":"Ben Greenberg, Senior Developer Evangelist","avatar_url":{"url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/06\/T024FJS4M-U075H3NTJUR-b4c321d902e2-512.jpeg","url2x":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/06\/T024FJS4M-U075H3NTJUR-b4c321d902e2-512.jpeg"},"first_name":"Ben","last_name":"Greenberg, Senior Developer Evangelist","user_url":"","author_category":"","description":""}],"_links":{"self":[{"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/posts\/16042","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/users\/85356"}],"replies":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/comments?post=16042"}],"version-history":[{"count":0,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/posts\/16042\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/media\/16046"}],"wp:attachment":[{"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/media?parent=16042"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/categories?post=16042"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/tags?post=16042"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/ppma_author?post=16042"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}