Azure Virtual Network : จำกัดการเข้าถึง Service บน Azure ด้วย Service EndPoint

0
1109

หลายๆ ครั้งที่ในการออกแบบ Infrastructure บน Microsoft Azure นั้นมีความจำเป็นจะต้องใช้ Service ที่หลากหลาย เช่น Virtual Machine, Storage Account, Azure SQL Database เป็นต้น แต่บางครั้งเราต้องการจะเชื่อมต่อระหว่าง Virtual Machine ไปยัง Service เหล่านี้โดยไม่ต้องผ่านอินเทอร์เน็ต หรือต้องการจะจำกัดให้เข้าถึงได้เฉพาะ Virtual Machine ของเราเท่านั้น จะทำอย่างไร ในวันนี้ผมมีคำตอบในเรื่องนี้มาให้ครับ โดยการใช้งาน คุณสมบัติที่เรียกว่า Service EndPoint

Virtual Network Service Service EndPoint

ช่วยให้สามารถขยายการเชื่อมต่อของ Azure Virtual Network ไปยัง Azure Service ต่างๆ  เปรียบเสมือนการเชื่อมต่อผ่าน Private IP Address ของ Virtual Network ทำให้การเชื่อมต่อยังคงอยู่ภายใต้การทำงานของ Azure Virtual Network ไม่ต้องเชื่อมต่อผ่านเครือข่ายอินเทอร์เน็ต

Virtual Network Service EndPoint ที่ได้รับการสนับสนุนใน Region SouthEast Asia นั้นในปัจจุบันมีดังต่อไปนี้

  • Azure Storage
  • Azure SQL Database
  • Azure SQL Data Warehouse
  • Azure Database for PostgreSQL server
  • Azure Database for MySQL server
  • Azure Cosmos DB
  • Azure Key Vault
  • Azure Service Bus
  • Azure Event Hubs

สมมุตว่าใน Application หนึ่งมีการใช้งาน Application ที่อยู่บน Virtual Machine (DEMO-VM01) แลตัว Virtual Machine นี้จำเป็นต้องมีการดึงข้อมูลจาก Storage Account ที่เป็น File strorage (demo01fs) ดังรูป

Diagram การเชื่อมต่อของ Application ตัวอย่าง
Diagram การเชื่อมต่อของ Application ตัวอย่าง

การใช้งาน Virtual Network Service EndPoint นั้นมีขั้นตอนที่สำคัญดังนี้

1. เปิดใช้งาน Service EndPoint ที่ Virtual Network  โดยไปเลือกที่ Service EndPoint และคลิกที่ + จากนั้นเลือก Service EndPoint  และ Subnet ที่ต้องการ

 

การเปิดการใช้งาน Service EndPoint #1
การเปิดการใช้งาน Service EndPoint #1
การเปิดการใช้งาน Service EndPoint #2
การเปิดการใช้งาน Service EndPoint #2
การเปิดการใช้งาน Service EndPoint #3
การเปิดการใช้งาน Service EndPoint #3

2. จากนั้นทำการกำหนด Firewall and Virtual Networks ที่ Service ที่ต้องการ ในที่นี้คือ Storage Account ซึ่งหลังจากนี้จะทำการอนุญาติให้ทำการเชื่อมต่อเฉพาะ Virtual Network ที่กำหนด (ก็คือ DEMO-VNET) นั่นเอง

การกำหนด Firewall and Virtual Networks#1
การกำหนด Firewall and Virtual Networks#1

การเลือก Selected Network จะทำให้ storage Account อนุญาตการเชื่อมต่อผ่าน Virtual Network ที่กำหนดเท่านั้น

การกำหนด Firewall and Virtual Networks#2
การกำหนด Firewall and Virtual Networks#2

ทำการเลือก Subscription, Virtual Network และ Subnet ที่เปิด Service EndPoint ไว้ในขั้นตอนแรก

การกำหนด Firewall and Virtual Networks#3
การกำหนด Firewall and Virtual Networks#3

กด “Save” เพื่อบันทึกการเปลี่ยนแปลง

3. จากนั้นสมมุติว่าเราใช้วิธีการ Map drive ก็สามารถที่จะ map drive ไปยัง Storage Account ได้ ตามตัวอย่าง

การ Map Drive ไปยัง Storage account
การ Map Drive ไปยัง Storage account (จากภายใน Virtual Network)

ซึ่งหากเราทำการ Map Drive ด้วยคำสั่งเดียวกัน แต่ Map จากภายนอก Virtual Network จะไม่สามารถเข้าถึงได้

การ Map Drive ไปยัง Storage account (จากภายนอก Virtual Network)
การ Map Drive ไปยัง Storage account (จากภายนอก Virtual Network)

เอาล่ะครับ ตอนนี้ก็เอาไว้แค่นี้ก่อนนะครับ พอหอมปากหอมคอ คราวหน้าผมจะได้หาเกร็ดเล็กๆ น้อยๆ ของ Azure มานำเสนอกันอีกครับ

ข้อมูลเพิ่มเติม