Conditional Access: จำกัดล็อกอินอีเมลตามประเทศและอุปกรณ์

ตั้ง Conditional Access ใน Microsoft Entra บล็อกการล็อกอินอีเมลจากนอกประเทศไทย ปิด Legacy authentication บังคับ MFA หรืออุปกรณ์องค์กร และทดสอบแบบ Report-only

โดย ทีมงาน THAI DATA CLOUD อ่าน 13 นาที

แชร์FacebookXLINELinkedIn
Conditional Access — Conditional Access: จำกัดล็อกอินอีเมลตามประเทศและอุปกรณ์
Conditional Access: จำกัดล็อกอินอีเมลตามประเทศและอุปกรณ์

คำตอบสั้น ๆ: ตั้ง Conditional Access ใน Microsoft Entra บล็อกการล็อกอินอีเมลจากนอกประเทศไทย ปิด Legacy authentication บังคับ MFA หรืออุปกรณ์องค์กร และทดสอบแบบ Report-only

คู่มือนี้อธิบาย Conditional Access ทีละขั้นตอน พร้อมคำสั่งที่ใช้ได้จริงและปัญหาที่พบบ่อย

Conditional Access ใน Microsoft Entra คือกลไกที่ตัดสินทุกครั้งที่มีคนลงชื่อเข้าใช้ Microsoft 365 ว่าจะอนุญาต ขอ MFA หรือบล็อก โดยดูจากสัญญาณอย่างผู้ใช้ ประเทศที่มาของ IP อุปกรณ์ และแอปที่ใช้ ตัวอย่างที่องค์กรไทยใช้บ่อยคือ "ถ้าล็อกอินอีเมลจากนอกประเทศไทยให้บล็อก" และ "ถ้าใช้โปรแกรมอีเมลรุ่นเก่าที่ข้าม MFA ให้บล็อก" Conditional Access ต้องใช้ไลเซนส์ Microsoft Entra ID P1 ซึ่งรวมอยู่ใน Microsoft 365 Business Premium, E3 และ E5 ส่วนนโยบายที่ใช้คะแนนความเสี่ยงของการล็อกอินต้องใช้ P2

คู่มือนี้เขียนให้ผู้ดูแลระบบที่เห็นใน Sign-in logs ว่ามีคนพยายามล็อกอินจากต่างประเทศทุกวัน และต้องการปิดประตูนั้นโดยไม่ล็อกตัวเองออกจากระบบ เมื่อทำครบ คุณจะมีบัญชีฉุกเฉินที่ถูกยกเว้น มี Named location ประเทศไทย นโยบายบล็อกการล็อกอินนอกประเทศ นโยบายบล็อก Legacy authentication และนโยบายเรื่องอุปกรณ์ ทั้งหมดผ่านการทดสอบในโหมด Report-only ก่อนเปิดใช้จริง

สิ่งที่ต้องเตรียม

  • ไลเซนส์: Microsoft Entra ID P1 ให้ผู้ใช้ทุกคนที่อยู่ใต้นโยบาย ถ้ายังใช้ Business Basic หรือ Standard ให้ใช้ Security defaults ไปก่อน ซึ่งบังคับ MFA และบล็อก Legacy authentication ได้ แต่กำหนดประเทศไม่ได้
  • สิทธิ์: บทบาท Conditional Access Administrator ขึ้นไป
  • บัญชีฉุกเฉิน (break-glass) อย่างน้อยหนึ่งบัญชี ที่จะยกเว้นจากทุกนโยบาย Conditional Access ใช้กู้ระบบเมื่อตั้งนโยบายผิดจนผู้ดูแลทุกคนเข้าไม่ได้ วิธีสร้างดูที่ Emergency Access Account: บัญชีกู้ระบบเมื่อผู้ดูแลเข้าไม่ได้
  • รายชื่อข้อยกเว้น: พนักงานที่ประจำต่างประเทศหรือเดินทางบ่อย บัญชีบริการ และเครื่องพิมพ์หรือแอปที่ส่งอีเมลด้วย SMTP AUTH
  • Security defaults ต้องปิด ก่อนนโยบาย Conditional Access จะเปิดใช้ได้ ปิดได้ที่ Entra ID > Overview > Properties > Manage security defaults แต่ให้ปิดก็ต่อเมื่อนโยบายบังคับ MFA ของคุณพร้อมเปิดแทนทันที ไม่เช่นนั้นจะมีช่วงที่ไม่มี MFA
  • ถ้าจะบังคับเรื่องอุปกรณ์ ต้องมี Microsoft Intune (รวมใน Business Premium) หรืออุปกรณ์ที่ทำ Microsoft Entra hybrid join แล้ว
แผนภาพสัญญาณผู้ใช้ ประเทศของ IP และอุปกรณ์ที่ Conditional Access ใช้ตัดสินว่าจะอนุญาตหรือบล็อกการล็อกอินอีเมล
ทุกนโยบายต้องยกเว้นบัญชีฉุกเฉิน และทำงานหลังยืนยันรหัสผ่านขั้นแรกเสมอ

ขั้นตอนที่ 1: เตรียมกลุ่มยกเว้นสำหรับ Conditional Access

ใน Entra admin center ไปที่ Entra ID > Groups สร้าง Security group สองกลุ่ม

  • CA-Exclude-Emergency: ใส่บัญชีฉุกเฉินเท่านั้น และยกเว้นกลุ่มนี้จากทุกนโยบาย Conditional Access ที่สร้าง
  • CA-Exclude-Travel: ใส่พนักงานที่ต้องล็อกอินจากต่างประเทศชั่วคราว ตั้งกติกาในทีมว่าต้องมีผู้อนุมัติและวันสิ้นสุด แล้วนำออกเมื่อกลับ

การใช้กลุ่มแทนการเลือกรายชื่อในนโยบาย Conditional Access โดยตรงทำให้เพิ่มหรือลดข้อยกเว้นได้โดยไม่ต้องแก้นโยบาย และตรวจย้อนหลังได้จาก Audit logs

ขั้นตอนที่ 2: สร้าง Named location ประเทศไทยสำหรับ Conditional Access

  1. ไปที่ Entra ID > Conditional Access > Named locations แล้วคลิก Countries location
  2. ช่อง Name ใส่ Allowed - Thailand
  3. เลือก Determine location by IP address (IPv4 and IPv6) แล้วติ๊ก Thailand ถ้ามีสาขาหรือพนักงานประจำในประเทศอื่น เช่น ลาวหรือเวียดนาม ให้ติ๊กเพิ่ม
  4. ช่อง Include unknown countries/regions ปล่อยว่างไว้ IP ที่ระบุประเทศไม่ได้จะถูกนับเป็นนอกประเทศและถูกบล็อก
  5. คลิก Create

ถ้าสำนักงานมี IP สาธารณะคงที่ ให้สร้าง IP ranges location อีกตัว ใส่ช่วง IP แบบ CIDR เช่น 203.0.113.0/28 แล้วติ๊ก Mark as trusted location ใช้ประกอบนโยบาย Conditional Access อื่นและช่วยให้การประเมินความเสี่ยงแม่นขึ้น ระวังว่า IP ที่ Entra เห็นคือ IP สาธารณะของเครือข่าย ไม่ใช่ IP ภายในอย่าง 10.0.0.x และถ้าพนักงานใช้ VPN หรือ proxy บนคลาวด์ ประเทศที่เห็นคือประเทศของเครื่อง VPN

ขั้นตอนที่ 3: สร้างนโยบาย Conditional Access บล็อกการล็อกอินนอกประเทศไทย

  1. ไปที่ Entra ID > Conditional Access > Policies คลิก New policy ตั้งชื่อตามมาตรฐาน เช่น CA01 - Block outside Thailand
  2. Users or workload identities: Include เลือก All users ส่วน Exclude เลือก Users and groups แล้วเลือกกลุ่ม CA-Exclude-Emergency และ CA-Exclude-Travel
  3. Target resources > Resources (formerly cloud apps) > Include เลือก All resources (formerly 'All cloud apps') การจำกัดแค่อีเมลทำได้ด้วยการเลือก Office 365 แต่คนร้ายจะยังเข้า OneDrive หรือ Teams ได้
  4. Network (ชื่อเดิมคือ Locations): ตั้ง Configure เป็น Yes แท็บ Include เลือก Any network or location แท็บ Exclude เลือก Selected networks and locations แล้วเลือก Allowed - Thailand
  5. Access controls > Grant: เลือก Block access แล้วคลิก Select
  6. Enable policy: เลือก Report-only แล้วคลิก Create

นโยบายแบบนี้ไม่ได้หยุดคนร้ายที่ใช้เครื่องหรือ VPN ในประเทศไทย จึงต้องใช้คู่กับ MFA เสมอ และ Conditional Access ทำงานหลังการยืนยันรหัสผ่านขั้นแรก ไม่ได้กันการเดารหัสผ่าน แต่ทำให้รหัสผ่านที่ถูกเดาได้ใช้งานไม่ได้

หน้าจอจำลองการสร้างนโยบาย Conditional Access บล็อกทุกเครือข่ายยกเว้น Named location ประเทศไทย ในโหมด Report-only
Include เป็น Any network or location แล้ว Exclude ประเทศไทย จะบล็อกทุกประเทศที่เหลือ (ภาพจำลอง)

ขั้นตอนที่ 4: บล็อก Legacy authentication ด้วย Conditional Access

โปรโตคอลเก่าอย่าง IMAP, POP และ SMTP AUTH แบบ Basic ไม่รองรับ MFA Microsoft ระบุว่าการโจมตีเดารหัสผ่านเกือบทั้งหมดใช้โปรโตคอลกลุ่มนี้ สร้างนโยบายใหม่ CA02 - Block legacy authentication

  1. Users: Include All users Exclude กลุ่ม CA-Exclude-Emergency และบัญชีที่ยังจำเป็นต้องใช้โปรโตคอลเก่าชั่วคราว
  2. Target resources: All resources (formerly 'All cloud apps')
  3. Conditions > Client apps: ตั้ง Configure เป็น Yes ติ๊กเฉพาะ Exchange ActiveSync clients และ Other clients แล้วคลิก Done
  4. Grant: Block access และ Enable policy: Report-only

ก่อนเปิดจริง ให้ดู Sign-in logs กรอง Client app เป็น Legacy authentication clients ทั้งแท็บ interactive และ non-interactive เครื่องสแกนเอกสารที่ส่งอีเมลผ่าน smtp.office365.com ด้วยชื่อผู้ใช้และรหัสผ่านจะถูกบล็อกด้วยนโยบายนี้ ให้ย้ายไปใช้วิธีอื่นตาม SMTP AUTH: ให้แอปและเครื่องพิมพ์ส่งอีเมลผ่าน Microsoft 365 หรือยกเว้นบัญชีนั้นไว้ชั่วคราวพร้อมกำหนดวันเลิกใช้

ขั้นตอนที่ 5: กำหนดเงื่อนไข Conditional Access เรื่องอุปกรณ์และ MFA

สร้างนโยบาย CA03 - Require MFA or compliant device ให้ผู้ใช้ทุกคนต้องผ่านอย่างน้อยหนึ่งเงื่อนไขก่อนเข้าอีเมล

  1. Users: All users ยกเว้นกลุ่มฉุกเฉิน Target resources: All resources
  2. Grant: เลือก Grant access แล้วติ๊ก Require multifactor authentication, Require device to be marked as compliant และ Require Microsoft Entra hybrid joined device ในส่วน For multiple controls เลือก Require one of the selected controls
  3. Enable policy: Report-only

ผลคือเครื่องของบริษัทที่อยู่ใน Intune หรือ join โดเมนแล้วเข้าได้ทันที ส่วนอุปกรณ์ส่วนตัวต้องผ่าน MFA ถ้าต้องการเข้มกว่านี้ เช่น ห้ามอุปกรณ์ส่วนตัวเข้าเลย ให้เลือก Require one of the selected controls เฉพาะสองตัวเลือกเรื่องอุปกรณ์ ซึ่งต้องมีระบบจัดการอุปกรณ์พร้อมก่อน พื้นฐานเรื่อง MFA ดูได้ที่ เปิดใช้งาน MFA บน Microsoft 365

ตารางสรุปนโยบาย Conditional Access สามตัว ได้แก่ บล็อกนอกประเทศไทย บล็อก Legacy authentication และบังคับ MFA หรืออุปกรณ์องค์กร
เริ่มทุกตัวที่ Report-only แล้วเปิดเป็น On ทีละตัว ห่างกันอย่างน้อยหนึ่งวัน

ขั้นตอนที่ 6: ทดสอบ Conditional Access ด้วย What If และผลของ Report-only

  1. ในหน้า Policies คลิก What If เลือกผู้ใช้ ใส่ IP address หรือเลือก Country เช่น Netherlands แล้วเลือก Client app ระบบจะแสดงว่านโยบายใดจะมีผลและผลลัพธ์เป็นอย่างไร ลองทั้งผู้ใช้ทั่วไป บัญชีฉุกเฉิน และคนในกลุ่ม Travel
  2. ปล่อยนโยบาย Conditional Access ในโหมด Report-only อย่างน้อยหนึ่งถึงสองสัปดาห์ แล้วดูใน Sign-in logs คลิกรายการแล้วเปิดแท็บ Report-only จะเห็นว่าถ้าเปิดจริง รายการนั้นจะถูกบล็อกหรือไม่
  3. ไล่ดูทุกรายการที่จะถูกบล็อก ถ้าเป็นพนักงานจริงให้เพิ่มเข้ากลุ่มยกเว้นหรือแก้ที่ต้นเหตุ ถ้าเป็นคนร้ายก็ยืนยันได้ว่านโยบายใช้ได้ผล

ขั้นตอนที่ 7: เปิดใช้จริงและดูแล Conditional Access ต่อเนื่อง

แจ้งพนักงานล่วงหน้าว่าจะบล็อกการล็อกอินจากต่างประเทศ และต้องขอยกเว้นก่อนเดินทาง จากนั้นเปิดนโยบายแต่ละตัวโดยเปลี่ยน Enable policy จาก Report-only เป็น On ทีละตัว ห่างกันอย่างน้อยหนึ่งวัน และอยู่ในเวลาทำงานเพื่อแก้ปัญหาได้ทัน หลังเปิด ผู้ใช้ที่ใช้แอปแบบ modern authentication จะถูกประเมินใหม่ทุกครั้งที่แอปขอ token ซึ่งโดยปกติประมาณชั่วโมงละครั้ง ดังนั้นคนที่เข้าอยู่แล้วอาจยังใช้งานได้อีกไม่เกินราวหนึ่งชั่วโมง

ทบทวนกลุ่ม CA-Exclude-Travel ทุกเดือน ทดสอบลงชื่อเข้าใช้ด้วยบัญชีฉุกเฉินทุกไตรมาส และถ้าลบนโยบายหรือ Named location ผิด กู้คืนได้ภายใน 30 วัน รายละเอียดของเงื่อนไข Network อยู่ในเอกสาร Conditional Access: Using network signals

ผลคำสั่ง Microsoft Graph PowerShell แสดงรายชื่อนโยบาย Conditional Access พร้อมสถานะ Report-only หรือเปิดใช้ และรายชื่อ Named location
ใช้ตรวจว่านโยบายใดยังอยู่ใน Report-only ก่อนรายงานผู้บริหารว่าเปิดใช้แล้ว

คำถามที่พบบ่อยเกี่ยวกับ Conditional Access

Conditional Access ต้องใช้ไลเซนส์อะไร?

ต้องใช้ Microsoft Entra ID P1 ซึ่งรวมอยู่ใน Microsoft 365 Business Premium, E3 และ E5 หรือซื้อแยกได้ นโยบายที่ใช้ความเสี่ยงของการล็อกอินหรือของผู้ใช้ต้องใช้ P2 ถ้าไลเซนส์หมดอายุ นโยบายเดิมยังทำงานต่อแต่แก้ไขไม่ได้

ปิด Security defaults เพื่อใช้ Conditional Access แล้วจะเสี่ยงไหม?

เสี่ยงถ้าปิดก่อนมีนโยบายแทน ให้สร้างนโยบาย MFA และบล็อก Legacy authentication ไว้ในโหมด Report-only ให้พร้อม แล้วปิด Security defaults และเปิดนโยบายเป็น On ในรอบเดียวกัน

เปิดนโยบายแล้ว ทำไมยังเห็นการล็อกอินสำเร็จจากต่างประเทศ?

ตรวจว่านโยบายเป็น On ไม่ใช่ Report-only ผู้ใช้นั้นอยู่ในกลุ่มยกเว้นหรือไม่ และรายการนั้นเกิดก่อนเปิดนโยบายหรือไม่ บางรายการเป็น token เดิมที่ยังไม่หมดอายุ ถ้าสงสัยว่าบัญชีถูกแฮกให้ Revoke sessions ทันที

ตั้ง Conditional Access ผิดจนผู้ดูแลเข้าไม่ได้ แก้อย่างไร?

ลงชื่อเข้าใช้ด้วยบัญชีฉุกเฉินที่ยกเว้นไว้ แล้วปิดนโยบายที่ผิด ถ้าไม่มีบัญชีฉุกเฉิน ต้องติดต่อ Microsoft support เพื่อพิสูจน์ความเป็นเจ้าของ tenant ซึ่งใช้เวลานาน นี่คือเหตุผลที่ต้องเตรียมบัญชีฉุกเฉินก่อนสร้างนโยบายแรก

ถ้าต้องการให้ทีมงานออกแบบชุดนโยบาย Conditional Access ที่เหมาะกับองค์กรและทดสอบให้ก่อนเปิดใช้จริง ติดต่อทีมงาน THAI DATA CLOUD ได้ และดูบริการจัดหาไลเซนส์และดูแล Microsoft 365 ได้ที่หน้าบริการของเรา

อ่านเพิ่มเติมเกี่ยวกับ Conditional Access

แชร์FacebookXLINELinkedIn

มีคำถามเรื่องบริการ? ติดต่อทีมงาน