สวัสดีค่ะทุกท่าน,, เมื่อสัปดาห์ที่ผ่านมานิกมีโอกาสได้พูดคุยแลกเปลี่ยนกับผู้บริหาร/Marketer/Dev จากหลายองค์กร ทำให้ทราบว่านักการตลาดไม่ได้มีแค่บทบาทในการสร้างแคมเปญ วิเคราะห์ตลาด หรือเข้าใจพฤติกรรมของผู้บริโภคเท่านั้น แต่ต้องทำงานร่วมกับทีม Developer หรือทีม Tech มากยิ่งขึ้น เพื่อพัฒนาระบบ Martech ที่ตอบโจทย์และครอบคลุม ไม่ว่าจะเป็น การทำระบบสมาชิกที่ต้องเชื่อมต่อ API, การเก็บข้อมูลลูกค้า (CDP) อย่างปลอดภัย, การยิง adds ที่ต้อง personalisation แบบเรียลไทม์, การเชื่อมข้อมูลระหว่าง CRM–marketing automation, การวัดผลแบบ multi-touch attribution หรือแม้แต่การพูดคุยเรื่องสร้าง data pipeline สำหรับทำ Custeomer segmentation
ซึ่งสิ่งต่างๆ ใน paragraph ก่อนหน้านี้ต้องอาศัยระบบหลังบ้านที่(ค่อนข้าง)ซับซ้อน เพราะต้องคำนึงถึงความปลอดภัยของข้อมูลด้วย (Data Security) โดยหนึ่งในหัวใจสำคัญของ data security คือการจัดการ Secret หรือความลับทางดิจิทัลต่างๆ เช่น API keys, Token, Password, Credential (ซึ่งหากเพื่อนๆ ท่านใดที่เคยติดตามบทความของนิกเรื่องการทำ Linebot หรือ workflow automation น่าจะคุ้นเคยกับคำเหล่านี้ดี^^)
เลยเป็นที่มาของบทความนี้ ที่นิกจะพาชาว Everday Marketing ทุกท่านมาทำความเข้าใจกับสิ่งต่างๆ ที่เกี่ยวข้องกับการเชื่อมโยงระหว่าง DevSecOps กับ Martech โดยเริ่มต้นจากคำว่า Vault , Warp software และ KUBE ว่าเข้ามาเกี่ยวข้องกับการสร้างระบบต่างๆ ใน paragraph แรกอย่างปลอดภัยได้อย่างไร เพื่อช่วยลดความเข้าใจผิดเวลา plan ระบบ marketing tech stack ทำให้เราสามารถพูดคุยและสื่อสารกับทีม dev ได้อย่างตรงประเด็น และสิ่งที่สำคัญที่สุดคือการรู้ว่าระบบแบบไหนปลอดภัย/ไม่ปลอดภัย อย่างไรและเพราะอะไรค่ะ^^ ==> Let’s go,,,,
#1 ทำความรู้จัก Vault และ Warp ฉบับเข้าใจง่าย
พี่นิกคะ เวลาเราต้องเชื่อมต่อระบบกับ API ภายนอก dev บอกว่าจะเก็บ Password หรือ Token ไว้ใน Vault คือยังไงนะคะ หรือทีม Tech บอกว่าจะตั้งแบบ KUBE อะไรซักอย่าง คืออะไรเหรอคะ? นี่คือคำถามที่ได้ยินได้บ่อยๆ เวลามีการสื่อสารกันระหว่างทีม dev กับหน่วยงานอื่นๆ ค่ะ
และเพื่อตอบคำถามนี้เรามาทำความรู้จัก Vault และ Warp ฉบับเข้าใจง่าย โดยเริ่มจากคำว่า Vault ดังนี้ค่ะ^^
1.1 Vault คืออะไร?
ซึ่งหากเราจะพูดง่ายๆ Vault ก็จะเปรียบเสมือนตู้นิรภัยสำหรับเก็บสิ่งสำคัญต่างๆ ได้อย่างปลอดภัยที่สุด กล่าวคือถ้าใส่อะไรก็ตามไว้ในนี้แล้วไม่ต้องกลัวรั่ว ไม่ต้องกังวลว่าจะหาไม่เจอ รวมถึงหมดปัญหาเรื่องคนอื่นจะมาเห็นได้
เพราะสำหรับ Marketing Tools ต่างๆ ที่มีเยอะมาก ไม่ว่าจะเป็น LINE OA, Meta, Google Ads, CRM, CDP, Marketing Automation หรือแม้แต่ Data Studio แต่ละระบบล้วนต้องมี Password, API Key, Token และข้อมูลสำคัญต่างๆ ที่ทำให้ระบบเชื่อมต่อกันได้
ทุกท่านลองคิดภาพตามดังนี้นะคะว่า ถ้าเราเก็บ API Key ใน Notepad หรือส่ง Password ผ่านไลน์กลุ่ม แล้วเอา Token ไปแปะไว้ใน Excel (ซึ่งเอาจริงๆ แล้วนิกก็ทำค่ะ lol) สิ่งเหล่านี้เองอาจจะสะดวกมากๆ ในตอนแรก แต่เสี่ยงมากกก ก. ไก่ล้านตัวในระยะยาว ทั้งต่อข้อมูลลูกค้าและความปลอดภัยขององค์กรเลยค่ะ
โดย Vault จะเข้ามาแก้ปัญหานี้ด้วยการเก็บ secrets ในที่เดียวแบบปลอดภัย กำหนดสิทธิ์ว่าใครเข้าดูข้อมูลได้ มีการ Rotate หรือเปลี่ยน secret อัตโนมัติ ซึ่งช่วยลดความเสี่ยงในการถูก Hack และสามารถขอ secret แบบชั่วคราวได้ เช่นขอใช้ token แค่ 5-10 นาทีเพื่อลองระบบ เป็นต้นค่ะ
1.2 Warp คืออะไร?
แต่ Vault เป็นระบบที่ค่อนข้างใหญ่ ซึ่งหากจะใช้จริงต้องเชื่อมต่อ auth method, สร้างไฟล์ config, เปิด service, ตั้งค่า security, ตั้ง role, ลง cert, ทำ init, ทำ unseal บลาๆ คือถ้าทำเองหมดนี่ก็เป็นภาระย่อมๆ เหมือนกันค่ะ
ดังนั้น Warp เลยเกิดมาเพื่อแก้ปัญหานี้ โดยเป็นตัวช่วยในการติดตั้ง Vault ให้พร้อมใช้งานในไม่กี่ Click ซึ่งสิ่งนี้สามารถลดความซับซ้อนทางเทคนิค ทำให้ทุกขั้นตอนซับซ้อนก่อนหน้านี้สามารถเกิดขึ้นได้แบบแบบอัตโนมัติ หรือพูดง่ายๆ ค่ะว่าก็เป็นเหมือนคนที่จะมาช่วยเรา Setting ระบบ ทำให้เราสร้างระบบได้เร็วขึ้น และ Error น้อยลง
#2 KUBE คืออะไร?
เมื่อเราเข้าใจ 2 คำก่อนหน้านี้แล้ว เรามาดูระบบใหญ่ในมุมมองของ MarTech ที่มี Data Security หรือ DevSecOps x Martech กันค่ะ 😎
ให้เราลองนึกภาพตอนที่ทำแคมเปญ Personalization หนึ่งครั้ง ซึ่งมีการใช้ API หลายตัวมาก เช่น ข้อมูลจาก CRM, ข้อมูลจาก Data Warehouse, Token ของ LINE, ของ Facebook หรือของระบบ ESP เพื่อส่ง email แบบเฉพาะเจาะจงให้ลูกค้า แถมทุกอย่างต้องเชื่อมต่อกันแบบ real-time
ซึ่งเราจะส่ง Secret ทาง digital ต่างๆ ทั้งหมดนี้ให้ Vault เป็นผู้ดูแล โดยเวลาเราเลือกใช้ Warp Softawre แล้วตั้งค่าเป็น KUBE แปลว่าระบบจะไปติดตั้ง Vault อยู่บน KUBE หรือ Kubernetes ให้แบบอัตโนมัติ
*Kubernetes คือระบบที่ไว้รันแอปใหญ่ๆ ที่เราต้องการให้สามารถขยายเพิ่มได้ตลอดเวลา, มีความเสถียรปลอดภัย, ทำงานตลอดเวลา และสามารถรองรับผู้ใช้ได้เป็นจำนวนมาก หรือสรุป KUBE คือแพลตฟอร์มที่เอาไว้รันระบบหลังบ้านให้เสถียรและจัดการง่าย
ดังนั้นการเอา Vault ไปรันบน Kubernetes ก็เหมือนเอาตู้นิรภัยไปเก็บไว้ในห้องเซิร์ฟเวอร์ที่มีระบบรักษาความปลอดภัยมากๆ มีคนดูแลตลอดเวลา และสามารถรองรับ User ได้จำนวนมากนั่นเองค่ะ
#3 การสร้าง Vault ผ่าน Warp ด้วยการตั้งค่า KUBE ฉบับเข้าใจง่าย
Step 1: เปิด Warp แล้วเลือกสร้าง Vault ใหม่ ขั้นตอนนี้ก็เหมือนตอนกด Create New Scenario ค่ะ โดย Warp จะถามว่าอยากรัน Vault แบบไหน ได้แก่ Local, Docker หรือ KUBE (ซึ่งเราจะเลือกเป็น KUBE ค่ะ)
Step 2: เชื่อมต่อกับ Kubernetes Cluster Warp จะทำการเชื่อมกับ Kubernetes ที่เราใช้อยู่ (ซึ่งหลักการก็เหมือน make.com เชื่อมต่อกับ LINE หรือ Google Sheet นั่นเองค่ะ)
Step 3: Warp สร้างพื้นที่ให้ Vault โดยอัตโนมัติ ในขั้นตอนนี้ Warp จะไปสร้าง Namespace, Deployment, Service, Storage, TLS, Service Account ให้เรา
Step 4: Warp ทำการ Init & Unseal ในขั้นตอนนี้ จากเดิมที่ Vault จะเริ่มต้นแบบล็อกอยู่ ตัว Warp จะช่วยปลดล็อกให้ และเก็บ key ต่างๆ ไว้อย่างปลอดภัย จากนั้นระบบต่างๆ เช่น LINE Bot, CRM, Facebook API, Email Engine จะสามารถขอ secret จาก Vault ได้ค่ะ =>> Done!!
Last but not least ( o=^•ェ•)o ┏━┓
สรุปแบบเข้าใจง่ายๆ ใน 3 วิ Vault คือตู้นิรภัยเก็บ API key และความลับของระบบ Warp คือผู้ช่วยตั้งค่า Vault ให้แบบง่ายๆ โดยการรัน Vault บน Kubernetes (KUBE) มีความเสถียรและปลอดภัย เหมาะสำหรับทีมการตลาดที่ต้องเชื่อมระบบหลายตัว ซึ่งนิกคิดว่าถึงแม้บทความนี้จะค่อนข้าง Technical แต่จริงๆ แล้วใกล้ตัวชาว Martech มากๆ ค่ะ เพราะยุคนี้ การตลาดคือ การบริหารจัดการข้อมูล และสิ่งสำคัญมากๆ ของการจัดการข้อมูล คือการจัดการ Security ของระบบนั่นเองค่ะ^^
References