0Pricing
Cloud & IT Cert Prep · บทเรียน

Azure Key Vault

จัดเก็บและจัดการข้อมูลลับ คีย์เข้ารหัส และใบรับรองใน Key Vault พร้อมผสานรวมกับบริการ Azure อื่น ๆ เพื่อหลีกเลี่ยงข้อมูลประจำตัวที่ฝังอยู่ในโค้ด

Azure Key Vault เป็นบทเรียน Cloud & IT Cert Prep ฟรีบน CoddyKit นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Cloud & IT Cert Prep และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Cloud & IT Cert Prep มีบทเรียนทั้งหมด 4 บทเรียน

Azure Key Vault คืออะไร

Azure Key Vault คือบริการ Cloud สำหรับจัดเก็บและจัดการ ข้อมูลลับ (คีย์ API รหัสผ่าน สตริงการเชื่อมต่อ) คีย์การเข้ารหัส (ใช้เข้ารหัสข้อมูล) และ ใบรับรอง (ใบรับรอง TLS/SSL สำหรับแอปพลิเคชัน) แทนที่จะฝังค่าอ่อนไหวไว้ในโค้ดแอปพลิเคชัน ไฟล์การกำหนดค่า หรือตัวแปรสภาพแวดล้อม แอปพลิเคชันจะดึงค่าจาก Key Vault ขณะทำงาน ทำให้ข้อมูลประจำตัวไม่อยู่ในซอร์สโค้ดและอาร์ติแฟกต์การปรับใช้

ระดับของ Key Vault: Standard เทียบกับ Premium

Key Vault มีสองระดับ Standard จะปกป้องข้อมูลลับและใบรับรองด้วยการเข้ารหัสที่ใช้ซอฟต์แวร์ ส่วน Premium เพิ่มการรองรับ คีย์ที่ป้องกันด้วย Hardware Security Module (HSM) โดยการดำเนินการด้านการเข้ารหัสจะเกิดขึ้นภายในฮาร์ดแวร์ที่ทนต่อการแกะหรือดัดแปลง และมอบการรับรอง FIPS 140-2 ระดับ 2 (Standard) หรือระดับ 3 (HSM) นอกจากนี้ยังมีบริการแยกต่างหากคือ Managed HSM ซึ่งมอบ HSM แบบผู้เช่ารายเดียวที่มีการจัดการเต็มรูปแบบสำหรับข้อกำหนดด้านการรับรองระดับสูงสุด

การสร้าง Key Vault

Key Vault แต่ละรายการจะถูกสร้างในกลุ่มทรัพยากรและภูมิภาค Azure ที่ระบุ ชื่อ vault ต้องไม่ซ้ำกันทั่วโลกภายในเนมสเปซ vault.azure.net คุณจะกำหนดค่า รูปแบบการเข้าถึง ระหว่างการสร้าง โดยเลือกได้ระหว่างรูปแบบเก่าที่ใช้ นโยบายการเข้าถึง vault หรือรูปแบบ Azure RBAC ที่แนะนำ ซึ่งบทบาท Entra ID จะควบคุมสิทธิ์การอ่านและเขียนข้อมูลลับ คีย์ และใบรับรองแยกจากกัน

# Create a Key Vault with RBAC access model
az keyvault create \
  --name myUniqueVault123 \
  --resource-group myRG \
  --location eastus \
  --enable-rbac-authorization true

# Grant yourself the Key Vault Secrets Officer role
az role assignment create \
  --role 'Key Vault Secrets Officer' \
  --assignee your-user@company.com \
  --scope /subscriptions/<sub-id>/resourceGroups/myRG/providers/Microsoft.KeyVault/vaults/myUniqueVault123

การจัดเก็บและดึงข้อมูลลับ

ข้อมูลลับใน Key Vault คือค่าข้อความอ่อนไหวใด ๆ เช่น รหัสผ่านฐานข้อมูล คีย์ API ข้อมูลลับของไคลเอ็นต์ OAuth และสตริงการเชื่อมต่อบัญชีพื้นที่จัดเก็บ ข้อมูลลับแต่ละรายการมีชื่อ ค่า และแอตทริบิวต์เสริม เช่น วันหมดอายุและสถานะเปิดใช้งาน แอปพลิเคชันจะยืนยันตัวตนกับ Key Vault (โดยทั่วไปผ่านข้อมูลประจำตัวที่มีการจัดการ) และเรียก REST API ของ Key Vault เพื่อดึงค่าข้อมูลลับปัจจุบันขณะทำงาน โดยไม่ต้องฝังค่าใด ๆ ไว้ในโค้ด

# Store a database password as a secret
az keyvault secret set \
  --vault-name myUniqueVault123 \
  --name db-password \
  --value 'SuperSecret!42'

# Retrieve the secret value
az keyvault secret show \
  --vault-name myUniqueVault123 \
  --name db-password \
  --query value \
  --output tsv

การจัดการคีย์การเข้ารหัส

Key Vault จัดเก็บ คีย์เข้ารหัสที่ใช้เข้ารหัสและถอดรหัสข้อมูล บริการต่าง ๆ เช่น Azure Storage, Azure SQL Database และ Azure Disk Encryption สามารถผสานรวมกับ Key Vault เพื่อใช้คีย์ที่ลูกค้าจัดการ (CMK) สำหรับสถานการณ์ Bring Your Own Key (BYOK) ด้วย CMK คุณยังคงควบคุมคีย์การเข้ารหัสได้ การเพิกถอนคีย์ใน Key Vault จะป้องกันไม่ให้บริการใด ๆ ถอดรหัสข้อมูลได้ทันที จึงทำหน้าที่เป็นสวิตช์ตัดการเข้ารหัสในกรณีฉุกเฉิน

# Create an RSA key in Key Vault
az keyvault key create \
  --vault-name myUniqueVault123 \
  --name myEncryptionKey \
  --kty RSA \
  --size 2048

# Enable CMK on a Storage Account
az storage account update \
  --resource-group myRG \
  --name mystorageaccount \
  --encryption-key-vault myUniqueVault123 \
  --encryption-key-name myEncryptionKey \
  --encryption-key-source Microsoft.Keyvault

การจัดการใบรับรอง

Key Vault สามารถทำหน้าที่เป็น อินเทอร์เฟซผู้ออกใบรับรองสำหรับใบรับรอง TLS คุณสามารถสร้างใบรับรองที่ลงนามด้วยตนเอง นำเข้าไฟล์ PFX/PEM ที่มีอยู่ หรือกำหนดค่า Key Vault ให้ร้องขอและต่ออายุใบรับรองจาก CA ที่เชื่อถือได้ เช่น DigiCert หรือ GlobalSign โดยอัตโนมัติ เมื่อใบรับใกล้หมดอายุ Key Vault สามารถต่ออายุให้โดยอัตโนมัติและแจ้งผู้ดูแลระบบผ่านเหตุการณ์ Event Grid ทำให้ไม่ต้องดำเนินการต่ออายุด้วยตนเอง

# Import an existing certificate
az keyvault certificate import \
  --vault-name myUniqueVault123 \
  --name myCert \
  --file certificate.pfx \
  --password 'CertPassword'

การควบคุมการเข้าถึง: RBAC เทียบกับนโยบายการเข้าถึง

Key Vault รองรับรูปแบบการเข้าถึงสองแบบ นโยบายการเข้าถึง vault เป็นรูปแบบเดิมที่คุณมอบสิทธิ์ให้ผู้มีสิทธิ์เข้าถึงข้อมูลลับ คีย์ หรือใบรับรองทั้งหมดใน vault โดยไม่สามารถจำกัดการเข้าถึงตามชื่อข้อมูลลับแต่ละรายการได้ ส่วน รูปแบบ Azure RBAC ที่ใหม่กว่าและแนะนำให้ใช้ จะใช้บทบาท RBAC มาตรฐาน (Key Vault Secrets User, Key Vault Secrets Officer และอื่น ๆ) และรองรับการกำหนดการปฏิเสธสิทธิ์รวมถึง Privileged Identity Management ทำให้ควบคุมสิทธิ์ได้ละเอียดกว่ามาก

การผสานรวม Key Vault กับ App Service

รูปแบบที่ใช้กันทั่วไปคือการอ้างอิงข้อมูลลับของ Key Vault เป็น การตั้งค่าแอปพลิเคชันของ App Service แทนที่จะเก็บค่าข้อมูลลับไว้ในการตั้งค่าแอป คุณจะจัดเก็บการอ้างอิง Key Vault ดังนี้: @Microsoft.KeyVault(SecretUri=https://myvault.vault.azure.net/secrets/db-password/) App Service จะดึงค่าข้อมูลลับปัจจุบันขณะทำงานโดยใช้ข้อมูลประจำตัวที่มีการจัดการของแอปโดยอัตโนมัติ หากข้อมูลลับถูกหมุนเวียนใน Key Vault แอปจะรับค่าใหม่เมื่อเริ่มทำงานครั้งถัดไป

# Set an App Service app setting as a Key Vault reference
az webapp config appsettings set \
  --resource-group myRG \
  --name myWebApp \
  --settings 'DB_PASSWORD=@Microsoft.KeyVault(SecretUri=https://myUniqueVault123.vault.azure.net/secrets/db-password/)'

การลบแบบนุ่มนวลและการป้องกันการล้างข้อมูล

การลบแบบนุ่มนวล (เปิดใช้งานตามค่าเริ่มต้น) จะเก็บรายการ Key Vault ที่ถูกลบไว้เป็นเวลา 7-90 วัน ทำให้กู้คืนได้หากลบโดยไม่ได้ตั้งใจ ส่วน การป้องกันการล้างข้อมูลเมื่อเปิดใช้งาน จะป้องกันไม่ให้ใครก็ตาม รวมถึงเจ้าของการสมัครใช้งาน ล้าง vault หรือออบเจ็กต์ที่ถูกลบแบบนุ่มนวลอย่างถาวรจนกว่าจะหมดระยะเวลาเก็บรักษา เพื่อความยืดหยุ่นต่อข้อกำหนดด้านกฎระเบียบและแรนซัมแวร์ แนวทางปฏิบัติด้านความปลอดภัยที่ดีที่สุดคือเปิดใช้ทั้งสองอย่าง ซึ่ง Azure Policy จะบังคับใช้ได้

# Recover a soft-deleted secret
az keyvault secret recover \
  --vault-name myUniqueVault123 \
  --name db-password

การตรวจสอบและการทำบันทึกการเข้าถึง Key Vault

การดำเนินการทุกอย่างกับ Key Vault ไม่ว่าจะเป็นการอ่าน การเขียน การต่ออายุใบรับรอง หรือการใช้คีย์ จะถูกบันทึกไว้ใน บันทึกการตรวจสอบ Key Vault คุณสามารถเปิดใช้การตั้งค่าการวินิจฉัยเพื่อส่งบันทึกเหล่านี้ไปยังพื้นที่ทำงาน Log Analytics หรือบัญชีพื้นที่จัดเก็บเพื่อเก็บรักษาในระยะยาว วิธีนี้จะให้ประวัติการตรวจสอบที่สมบูรณ์ว่าใครเข้าถึงข้อมูลลับรายการใด เมื่อใด และจาก IP ใด ซึ่งจำเป็นอย่างยิ่งต่อการสืบสวนด้านความปลอดภัยและหลักฐานการปฏิบัติตามข้อกำหนด

# Enable diagnostic logging for Key Vault
az monitor diagnostic-settings create \
  --resource /subscriptions/<sub-id>/resourceGroups/myRG/providers/Microsoft.KeyVault/vaults/myUniqueVault123 \
  --workspace /subscriptions/<sub-id>/resourceGroups/myRG/providers/Microsoft.OperationalInsights/workspaces/myWorkspace \
  --name kv-audit-logs \
  --logs '[{"category":"AuditEvent","enabled":true}]'

จุดปลายทางส่วนตัวสำหรับ Key Vault

ตามค่าเริ่มต้น Key Vault จะมีจุดปลายทาง HTTPS สาธารณะบนอินเทอร์เน็ต สำหรับสภาพแวดล้อมที่มีความปลอดภัยสูง คุณสามารถปรับใช้ จุดปลายทางส่วนตัวเพื่อวาง Key Vault ไว้ภายใน VNet พร้อมที่อยู่ IP ส่วนตัว และปิดใช้งานจุดปลายทางสาธารณะทั้งหมด แอปพลิเคชันที่เข้าถึง Key Vault ผ่านจุดปลายทางส่วนตัวจะไม่ส่งข้อมูลผ่านอินเทอร์เน็ตสาธารณะ จึงเป็นไปตามข้อกำหนดด้านการป้องกันการนำข้อมูลออกโดยไม่ได้รับอนุญาต และทำให้ Key Vault ไม่ปรากฏจากภายนอก VNet ของคุณ

ตรวจสอบความเข้าใจ

ทดสอบความเข้าใจแนวคิด Microsoft Azure Fundamentals (AZ-900) จากบทเรียนนี้

ทบทวนบทเรียน

ในบทเรียนนี้ คุณได้เรียนรู้ว่า Key Vault จัดเก็บข้อมูลลับ คีย์การเข้ารหัส และใบรับรอง TLS ไว้ในบริการที่มีการจัดการและตรวจสอบได้ การผสานรวมข้อมูลประจำตัวที่มีการจัดการช่วยขจัดความจำเป็นในการฝังข้อมูลประจำตัวใด ๆ ไว้ในโค้ดแอปพลิเคชัน และ การลบแบบนุ่มนวลกับการป้องกันการล้างข้อมูลช่วยป้องกันการลบข้อมูลเข้ารหัสโดยไม่ได้ตั้งใจหรือโดยประสงค์ร้าย บทถัดไป เราจะสำรวจ Microsoft Sentinel ซึ่งเป็น SIEM แบบ Cloud-native ของ Azure

คำถามที่พบบ่อย

บทเรียน “Azure Key Vault” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “Azure Key Vault” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Cloud & IT Cert Prep ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Cloud & IT Cert Prep มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “Azure Key Vault”

จัดเก็บและจัดการข้อมูลลับ คีย์เข้ารหัส และใบรับรองใน Key Vault พร้อมผสานรวมกับบริการ Azure อื่น ๆ เพื่อหลีกเลี่ยงข้อมูลประจำตัวที่ฝังอยู่ในโค้ด คุณปฏิบัติ Cloud & IT Cert Prep ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Cloud & IT Cert Prep หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Cloud & IT Cert Prep บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน

บทเรียน “Azure Key Vault” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Cloud & IT Cert Prep นี้ได้ไหม

ได้ บทเรียน Cloud & IT Cert Prep ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. Microsoft Defender for Cloud
  2. Azure Key Vault
  3. Microsoft Sentinel: SIEM บนระบบคลาวด์
  4. Azure DDoS Protection และ Firewall
← กลับไปที่ Cloud & IT Cert Prep