0Pricing
Azure Fundamentals · บทเรียน

Azure Blueprints และการปฏิบัติตามข้อกำหนด

รวมแพ็กเกจนโยบาย การกำหนดบทบาท และเทมเพลต ARM ไว้ใน Azure Blueprint ที่นำกลับมาใช้ได้ เพื่อสร้างสภาพแวดล้อมที่เป็นไปตามข้อกำหนดสำหรับโครงการใหม่ได้อย่างรวดเร็ว

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

Azure Blueprints คืออะไร

Azure Blueprints คือบริการที่ช่วยให้คุณกำหนดชุดอาร์ติแฟกต์ด้านการกำกับดูแล Azure ที่ทำซ้ำได้ เช่น การกำหนดบทบาท การกำหนดนโยบาย แม่แบบ ARM และกลุ่มทรัพยากร แล้วรวมสิ่งเหล่านี้เป็นออบเจ็กต์เดียวที่มีเวอร์ชัน จากนั้นคุณสามารถกำหนด Blueprint ให้กับการสมัครใช้งานเพื่อสร้างสภาพแวดล้อมที่กำหนดค่าและเป็นไปตามข้อกำหนดอย่างสมบูรณ์ได้ภายในไม่กี่นาที Blueprint ออกแบบมาสำหรับองค์กรที่ต้องสร้างสภาพแวดล้อมมาตรฐานสำหรับโครงการ ทีม หรือข้อกำหนดด้านกฎระเบียบใหม่

อาร์ติแฟกต์ของ Blueprint

Blueprint ประกอบด้วยอาร์ติแฟกต์ ซึ่งเป็นส่วนประกอบพื้นฐานของสภาพแวดล้อมที่ Blueprint สร้างขึ้น ประเภทอาร์ติแฟกต์ที่รองรับ ได้แก่ กลุ่มทรัพยากร (สร้างกลุ่มทรัพยากรในตำแหน่งที่ระบุเพื่อเป็นพื้นที่บรรจุอาร์ติแฟกต์อื่น) แม่แบบ ARM (ปรับใช้โครงสร้างพื้นฐาน Azure ใดก็ได้) การกำหนด Azure Policy (ใช้นโยบายพร้อมพารามิเตอร์) และ การกำหนดบทบาท RBAC (ให้สิทธิ์เข้าถึงแก่ผู้ใช้หรือกลุ่มที่ระบุ) อาร์ติแฟกต์สามารถมีการพึ่งพากัน และจะถูกปรับใช้ตามลำดับที่ถูกต้อง

// Blueprint structure example:
// Blueprint: 'ISO27001-LandingZone'
//   Artefact 1: Resource Group 'networking-rg'
//   Artefact 2: ARM Template (deploy VNet into networking-rg)
//   Artefact 3: ARM Template (deploy Log Analytics workspace)
//   Artefact 4: Policy Assignment 'ISO 27001' initiative
//   Artefact 5: Role Assignment (NetworkAdmins group = Network Contributor)
//   Artefact 6: Role Assignment (SecurityTeam = Security Reader)

การจัดการเวอร์ชันของ Blueprint

Blueprint รองรับการจัดการเวอร์ชัน ทำให้คุณดูแลเวอร์ชันที่เผยแพร่แล้วหลายเวอร์ชันพร้อมกันได้ เมื่อแก้ไข Blueprint คุณจะแก้ไขฉบับร่าง เมื่อฉบับร่างพร้อมแล้ว ให้เผยแพร่เป็นเวอร์ชันใหม่ (เช่น v1.0, v1.1, v2.0) พร้อมบันทึกประจำรุ่น การกำหนด Blueprint ที่มีอยู่จะคงเวอร์ชันที่ใช้ปรับใช้ไว้ และคุณสามารถอัปเกรดการกำหนดให้เป็นเวอร์ชันใหม่กว่าได้อย่างชัดเจน วิธีนี้ช่วยให้ทยอยใช้การเปลี่ยนแปลงด้านการกำกับดูแลข้ามการสมัครใช้งานได้อย่างควบคุม

# Create a blueprint definition
az blueprint create \
  --name 'ISO27001LandingZone' \
  --management-group mg-company \
  --description 'ISO 27001 compliant landing zone for new projects'

# Publish a version
az blueprint publish \
  --blueprint-name 'ISO27001LandingZone' \
  --management-group mg-company \
  --version '1.0' \
  --change-notes 'Initial release with networking, logging, and ISO policies'

พารามิเตอร์ของ Blueprint

Blueprint รองรับพารามิเตอร์ที่ช่วยให้ปรับแต่งข้อกำหนด Blueprint เดียวกันได้ขณะกำหนด โดยไม่ต้องสร้าง Blueprint แยกสำหรับแต่ละรูปแบบ คุณสามารถกำหนดพารามิเตอร์ในระดับ Blueprint แล้วส่งต่อไปยังอาร์ติแฟกต์แต่ละรายการ หรือกำหนดโดยตรงในอาร์ติแฟกต์แต่ละรายการก็ได้ ตัวอย่างเช่น สามารถส่งพารามิเตอร์ allowedLocations ไปยังอาร์ติแฟกต์นโยบาย เพื่อให้ผู้กำหนดระบุภูมิภาค Azure ที่อนุญาตสำหรับการสมัครใช้งานแต่ละรายการได้ โดยไม่ต้องแก้ไขข้อกำหนด Blueprint เอง

// Blueprint parameter defined at blueprint level:
{
  'parameters': {
    'allowedLocations': {
      'type': 'array',
      'metadata': {
        'displayName': 'Allowed Azure Regions',
        'description': 'Locations where resources can be deployed'
      }
    }
  }
}

การกำหนด Blueprint

การกำหนด Blueprint จะนำ Blueprint เวอร์ชันที่เผยแพร่แล้วไปใช้กับการสมัครใช้งานที่ระบุ ระหว่างการกำหนด คุณจะระบุค่าสำหรับพารามิเตอร์ Blueprint เลือกข้อมูลประจำตัวที่มีการจัดการแบบกำหนดโดยระบบหรือกำหนดโดยผู้ใช้ ซึ่ง Blueprint จะใช้ปรับใช้อาร์ติแฟกต์ (ข้อมูลประจำตัวนี้ต้องมีสิทธิ์ RBAC เพียงพอ) และเลือกว่าจะให้ล็อกอาร์ติแฟกต์ของ Blueprint หลังการปรับใช้หรือไม่ เพื่อป้องกันไม่ให้ผู้ใช้การสมัครใช้งานแก้ไข

# Assign a blueprint to a subscription
az blueprint assignment create \
  --name 'prod-subscription-baseline' \
  --blueprint-version '/providers/Microsoft.Management/managementGroups/mg-company/providers/Microsoft.Blueprint/blueprints/ISO27001LandingZone/versions/1.0' \
  --location eastus \
  --identity-type SystemAssigned \
  --resource-group-value artifact_name=networking-rg name=networking-rg location=eastus \
  --lock-mode AllResourcesReadOnly

การล็อก Blueprint

การกำหนด Blueprint สามารถล็อกอาร์ติแฟกต์ที่ปรับใช้แล้ว เพื่อป้องกันไม่ให้ผู้สมัครใช้งานแก้ไขหรือลบได้ มีโหมดการล็อกสามแบบ ได้แก่ None (ไม่มีการล็อก) AllResourcesReadOnly (การล็อก ReadOnly กับทรัพยากรที่ปรับใช้ทั้งหมด) และ AllResourcesDoNotDelete (การล็อก CanNotDelete กับทรัพยากรที่ปรับใช้ทั้งหมด) การล็อก Blueprint มีลักษณะพิเศษ คือไม่สามารถนำออกได้แม้โดย Owner ของการสมัครใช้งานขณะที่ยังมีการกำหนด Blueprint อยู่ จึงให้การปกป้องที่แข็งแกร่งกว่าการล็อกทรัพยากรมาตรฐาน

การปฏิบัติตามกรอบข้อกำหนดด้านกฎระเบียบ

Azure มีBlueprint สำหรับการปฏิบัติตามข้อกำหนดด้านกฎระเบียบในแกลเลอรีตัวอย่าง Azure Blueprints ซึ่งครอบคลุมกรอบต่าง ๆ เช่น ISO 27001, NIST SP 800-53, PCI DSS, DoD IL4/IL5, FedRAMP, HIPAA/HITRUST และ UK OFFICIAL Blueprint ตัวอย่างเหล่านี้รวมแพ็กเกจนโยบาย การกำหนดบทบาท และการกำหนดค่าโครงสร้างพื้นฐานที่จำเป็นสำหรับแสดงหลักฐานการปฏิบัติตามแต่ละกรอบ องค์กรต่าง ๆ ใช้ Blueprint เหล่านี้เป็นจุดเริ่มต้น แล้วปรับแต่งและเพิ่มอาร์ติแฟกต์เฉพาะสำหรับสภาพแวดล้อมของตน

Blueprint กับแม่แบบ ARM

แม่แบบ ARM และ Blueprint มีจุดประสงค์แตกต่างกัน แม่แบบ ARM ใช้ปรับใช้โครงสร้างพื้นฐานในกลุ่มทรัพยากรหรือการสมัครใช้งานเดียว โดยไม่มีการเชื่อมต่ออย่างต่อเนื่องกับทรัพยากรที่ปรับใช้แล้ว การกำหนด Blueprintจะรักษาการเชื่อมโยงที่ใช้งานอยู่ระหว่างข้อกำหนด Blueprint กับสภาพแวดล้อมที่ปรับใช้ คุณสามารถติดตามสถานะการปรับใช้ อัปเกรดเป็นเวอร์ชันใหม่ และปกป้องอาร์ติแฟกต์ที่ปรับใช้แล้วด้วยการล็อก Blueprint ซึ่งยังคงมีผลแม้ผู้ใช้จะมี RBAC ระดับ Owner Blueprint จึงเพิ่มความสามารถด้านการกำกับดูแลเฉพาะทางให้กับแม่แบบ ARM

Blueprint กับ Azure Landing Zones

ตัวเร่ง Azure Landing Zone สมัยใหม่ของ Microsoft (ซึ่งเป็นส่วนหนึ่งของกรอบการนำคลาวด์มาใช้ หรือ CAF) ใช้การผสมผสานระหว่างแม่แบบ ARM, Bicep, Terraform และ Azure Policy แทน Blueprint แม้ Blueprint จะยังใช้งานได้ แต่ Microsoft กำลังให้ความสำคัญกับแนวทางที่ขับเคลื่อนด้วยนโยบายและ IaC มากขึ้นสำหรับสภาพแวดล้อมขนาดใหญ่ สำหรับการปรับใช้ระดับองค์กรที่ซับซ้อน ปัจจุบันจึงนิยมใช้แนวทาง CAF Landing Zone มากกว่า ส่วน Blueprint ยังคงเหมาะสำหรับแม่แบบสภาพแวดล้อมขนาดเล็กที่แยกเป็นอิสระ

การตรวจสอบการปฏิบัติตามข้อกำหนดของ Blueprint

ในหน้าการจัดการ Azure Blueprints การกำหนด Blueprint แต่ละรายการจะแสดงสถานะการปรับใช้ (Succeeded, Failed, Locking) และสถานะการปฏิบัติตามข้อกำหนดของอาร์ติแฟกต์แต่ละรายการ หากการปรับใช้อาร์ติแฟกต์ล้มเหลว คุณจะเห็นข้อผิดพลาดจากการปรับใช้ ARM และลองกำหนดใหม่ได้ อาร์ติแฟกต์นโยบายภายใน Blueprint จะรายงานการปฏิบัติตามข้อกำหนดผ่านแดชบอร์ดการปฏิบัติตาม Azure Policy มาตรฐาน ทำให้คุณมองเห็นทั้งความสำเร็จของการปรับใช้และการปฏิบัติตามข้อกำหนดของทรัพยากรอย่างต่อเนื่องได้จากที่เดียว

# List blueprint assignments and their status
az blueprint assignment list \
  --subscription <sub-id> \
  --output table

# Get the status of a specific assignment
az blueprint assignment show \
  --name 'prod-subscription-baseline' \
  --subscription <sub-id>

การลบการกำหนด Blueprint

หากต้องการยกเลิกการใช้งานสภาพแวดล้อมที่จัดการด้วย Blueprint คุณต้องลบการกำหนด Blueprintก่อน การดำเนินการนี้จะนำการล็อก Blueprint ออกจากอาร์ติแฟกต์ที่ปรับใช้ทั้งหมด และยกเลิกการเชื่อมโยงระหว่างข้อกำหนด Blueprint กับทรัพยากรที่ปรับใช้แล้ว — แต่จะไม่ลบทรัพยากรที่ปรับใช้แล้ว คุณต้องล้างทรัพยากร ARM แยกต่างหากตามกระบวนการจัดการการเปลี่ยนแปลง การลบข้อกำหนด Blueprint ต้องลบการกำหนดทั้งหมดก่อน

# Delete a blueprint assignment (removes locks but not deployed resources)
az blueprint assignment delete \
  --name 'prod-subscription-baseline' \
  --subscription <sub-id>

ตรวจสอบความเข้าใจอย่างรวดเร็ว

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

สรุปบทเรียน

ในบทเรียนนี้ คุณได้เรียนรู้ว่า Azure Blueprints รวมการกำหนดนโยบาย การกำหนดบทบาท แม่แบบ ARM และกลุ่มทรัพยากรไว้เป็นออบเจ็กต์ด้านการกำกับดูแลที่นำกลับมาใช้ใหม่และมีเวอร์ชัน การล็อก Blueprint ปกป้องอาร์ติแฟกต์ที่ปรับใช้แล้วจากการแก้ไข แม้โดย Owner ของการสมัครใช้งาน และ Blueprint สำหรับการปฏิบัติตามข้อกำหนดด้านกฎระเบียบในแกลเลอรีตัวอย่างช่วยเร่งการบรรลุกรอบต่าง ๆ เช่น ISO 27001 และ PCI DSS ขณะนี้คุณเรียนจบหลักสูตร Azure Governance แล้ว — บทถัดไปคือ Azure Resource Manager และโครงสร้างพื้นฐานในรูปแบบโค้ด

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

บทเรียน “Azure Blueprints และการปฏิบัติตามข้อกำหนด” ฟรีหรือไม่

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

คุณจะเรียนรู้อะไรในบทเรียน “Azure Blueprints และการปฏิบัติตามข้อกำหนด”

รวมแพ็กเกจนโยบาย การกำหนดบทบาท และเทมเพลต ARM ไว้ใน Azure Blueprint ที่นำกลับมาใช้ได้ เพื่อสร้างสภาพแวดล้อมที่เป็นไปตามข้อกำหนดสำหรับโครงการใหม่ได้อย่างรวดเร็ว คุณปฏิบัติ Azure Fundamentals ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Azure Fundamentals หรือไม่

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

บทเรียน “Azure Blueprints และการปฏิบัติตามข้อกำหนด” ใช้เวลานานแค่ไหน

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

ฉันเขียนและรันโค้ดในบทเรียน Azure Fundamentals นี้ได้ไหม

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

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

  1. กลุ่มการจัดการและการสมัครใช้งาน
  2. Azure Policy
  3. แท็กทรัพยากรและการล็อกทรัพยากร
  4. Azure Blueprints และการปฏิบัติตามข้อกำหนด
← กลับไปที่ Azure Fundamentals