วันอังคารที่ 8 ตุลาคม พ.ศ. 2567

รู้จักกับ Microsoft Entra Workload ID (Identities)

      สวัสดีครับทุกท่าน สำหรับบทความนี้ผมอยากจะนำเสนอเรื่องราวของ Identity ซึ่งถือว่าเป็นสิ่งที่หลายๆ ท่านรวมถึงตัวผมจะต้องเข้าไปเกี่ยวข้องไม่มากก็น้อยครับ สำหรับเรื่องของ Identity ในบทความนี้ผมจะพาทุกท่านไปทำความรู้จักกับ "Microsoft Entra Workload ID" ครับ ซึ่งจะตัวของ Microsoft Entra Workload ID นี้ก็จะเกี่ยวข้อง Service หนึ่งที่ทำหน้าที่ในการบริหารจัดการ Identity ครับ โดย Service นี้มีชื่อว่า "Microsoft Entra ID" นั่นเองครับ และอย่างที่เราทราบกันว่า Microsoft Entra ID นั้นถือว่าเป็น Service หลักและเป็น Service ที่สำคัญสำหรับองค์กรที่นำเอา Clouds ของ Microsoft เข้ามาประยุกต์ใช้งาน ไม่ว่าจะเป็น Microsoft 365, Microsoft Azure, เป็นต้น เราจะต้องเข้าไปเกี่ยวข้องและใช้งาน Microsoft Entra ID แน่นอนครับ นอกจากนี้แล้วตัวของ Microsoft Entra ID ยังมีความสามารถในการทำงานร่วมกับ "Active Directory Domain Service" หรือ AD DS ซึ่งเป็น Role หนึ่งของ Windows Server (Domain Controller) เพื่อทำ Hybrid Identity (Single Sign-On หรือ SSO) ท่านใดที่สนใจหรืออยากรู้จัก Microsoft Entra ID สามารถย้อนไปอ่านบทความก่อนหน้านี้ของผมได้ครับ และเพื่อไม่ให้เป็นการเสียเวลาเรามาทำความรู้จักกับ Microsoft Entra Workload ID กันเลยครับ


Microsoft Entra Workload ID คืออะไร?


Microsoft Entra Workload ID คือ Identity ชนิดหนึ่ง (ซึ่งในความเป็นจริงแล้วใน Microsoft Entra ID มี Identity หลากหลายรูปแบบ เช่น Microsoft Entra ID Accounts, Microso Entra External ID, เป็นต้น) ที่เราทำการกำหนด (Assign) ให้กับ Software Workloads (Application, Service, Script, และ Container) เพื่อทำการ Authenticate และ Authorize (เข้าถึง Resources ต่างๆ) และโดยส่วนใหญ่แล้วเราจะพิจารณาใช้ Microsoft Entra Workload ID กับ Software Workloads ตามที่เกริ่นไว้ข้างต้น ตัวอย่างของการใช้งาน Microsoft Entra Workload ID เช่น เราต้องการให้ GitHub Actions เข้าถึงหรือ Access Microsoft Azure Subscription, ใช้ในการเข้าถึงหรือ Access Microsoft Graph, หรือใช้ Microsoft Entra Workload ID เป็น AWS Service Role กับ EC2 เพื่อเข้าถึงข้อมูลใน Amazon S3 Bucket เป็นต้น


ถ้าเรามองและทำความเข้าใจในมุมเทคนิคที่เกี่ยวข้องระหว่าง Microsoft Entra ID กับ Microsoft Entra Workload ID สามารถอธิบายได้ว่า Microsoft Entra Workload ID (Identities) คือ


- Application คือ Application ที่ถูก Developed ขึ้นเพื่อใช้งานและนำเอา Application ดังกล่าวนี้มา Integrate กับ Microsoft Entra ID (เพื่อทำ Authentication และ Authorization)

- Service Principal*

- Managed Identity*


*รายละเอียดของ Service Principal, และ Managed Identity คืออะไร ทุกท่านสามารถอ่านบทความนี้ได้ครับ, WT Blog (ITGeist): รูปแบบต่างๆ ของ Identity ใน Microsoft Entra ID (itgeist5blog.blogspot.com)


นอกจากนี้แล้วถ้าเรามองในภาพรวมแบบ High-Level ที่เกี่ยวข้องกับ Identity เรายังสามารถแบ่งออกเป็น 2 แบบ คือ






















1. Machine Identities (Non-Human Identities)  คือ Identity ที่แสดงถึงหรือใช้กับสิ่งที่ไม่ใช่มนุษย์หรือ Human ครับ โดย Machine Identities แบ่งออกเป็น 2 ชนิด (อ้างอิงตามรูปด้านบน) คือ 1. Workload Identities (เช่น Applications) และ 2. Device Identities คือ Desktop, Mobile, IoT Sensors และ IoT Managed Devices, เป็นต้น

2. Human Identities คือ Identity ที่แสดงถึงหรือใช้กับมนุษย์หรือ Human เช่น พนังงานขององค์กร, ลูกค้า, ที่ปรึกษา, และอื่นๆ 


สิ่งที่ต้องพิจารณาในการบริหารจัดการและใช้งาน Identity ทั้ง 2 แบบ (Machine และ Human Identities) เรื่องหนึ่งเลยที่จะต้องพิจารณาคือ เรื่องของความปลอดภัย เพราะ Identity ทั้ง 2 แบบ เมื่อถูกนำเอาไปใช้งานจะมีลักษณะที่แตกต่างกัน เช่น ในกรณีของ Human Identities นั้น, จะมีลักษณะเป็น Single Identity และทำการเข้าถึง Resources ต่างๆ  ในขณะที่ Machine หรือ Non-Human Identities คือ Software Workloads (Application, Services, และอื่นๆ) ที่มาพร้อมกับหลายๆ Credentials และต้องการเข้าถึง Resources ที่แตกต่างกันทั้งนี้ขึ้นอยู่กับความต้องการครับ ดังนั้นเราจะต้องวางแผนและเตรียมการในเรื่องของการ Secure และ Protect Identities ต่างๆ ของ Microsoft Entra ID โดยมีอาจจะนำเอาฟีเจอร์หรือ Services ตัวอื่นๆ เข้ามาช่วยในเรื่องนี้ ยกตัวอย่างเช่น Microsoft Entra Conditional Access, Microsoft Entra ID Protection, เป็นต้น


รายละเอียดเพิ่มเติมเกี่ยวกับ Microsoft Entra Workload ID สามารถไปที่ Link นี้ได้เลยครับผม, Microsoft Entra Workload ID | Microsoft Security









และทั้งหมดนี้คือเรื่องราวของ Microsoft Entra Workload ID ที่ผมนำฝากทุกท่านครับผม.....



AI เทคโนโลยีกับ Cybersecurity ตอนที่ 1

      สวัสดีครับทุกท่าน กลับมาเจอกันเหมือนเดิมครับ สำหรับบทความนี้ผมตั้งใจว่าจะนำเสนอเรื่องราวของเทคโนโลยี AI (Artificial Intelligence) ซึ่งในช่วงที่ผ่านมาจนถึง ณ ตอนนี้เป็นเทคโนโลยีที่หลายๆ องค์กรตลอดจนหลายๆ ท่านให้ความสนใจ โดยมีการนำเอาเทคโนโลยีดังกล่าวนี้เข้ามาประยุกต์ใช้งานในหลากหลายด้านในองค์กรครับ แต่บทความนี้ผมอยากจะนำเสนอเรื่องราวของการนำเอา AI มาช่วยในเรื่องของความปลอดภัยหรือ Security ให้กับระบบ IT ขององค์กรไม่ว่าองค์กรดังกล่าวนั้นจะมีรูปแบบเป็น Hybrid หรือ Multi-Cloud Environment ก็ตาม โดยผมจะเริ่มจากพาทุกท่านไปทำความรู้จักกับ AI กันก่อน เพราะมีเรื่องราวตลอดจนคำศัพท์ต่างๆ ที่เกี่ยวข้องกับเทคโนโลยีดังกล่าวเยอะพอสมควร เช่น Machine Learning, Deep Learning, LLM, และอื่นๆ เป็นต้นครับ จากนั้นตามด้วยประโยชน์ที่เราจะได้รับถ้าเรามีการนำเอา AI เข้ามาช่วยในเรื่องของ Security หรือ Cybersecurity ครับ และตามด้วย Security Solutions ของทาง Microsoft ที่จะเข้ามาช่วยในการป้องกันภัยคุกคามที่จะเข้ามาโจมตี IT Environment ครับ ซึ่งรวมถึงผมจะพาทุกท่านไปทำความรู้จักกับ Microsoft Copilot for Security ครับ และเพื่อไม่ให้เป็นการเสียเวลาเรามาเริ่มกันเลยครับ


Artificial Intelligence (AI) คืออะไร?















Artificial Intelligence  หรือ AI นั้นเป็นเทคโนโลยีที่เข้ามาเกี่ยวข้องกับชีวิตประจำวันของเราอยู่นานแล้วครับและในแต่ละช่วงเวลาก็มีการพัฒนาเทคโนโลยีดังกล่าวให้มีความสามารถมากขึ้นเรื่อยๆ ครับ และก่อนที่ผมจะบอกหรืออธิบายว่า AI คืออะไร? นั้น ผมขอเริ่มด้วยตัวอย่างนี้ครับ โดยอยากให้ทุกท่านนึกภาพตามผม โดยสมมติว่าผมอยากไปเตะฟุตบอล แต่ผมหาลูกฟุตบอลไม่เจอ ไม่รู้ว่ามันหายไปไหน!!!  แล้วผมจะหามันเจอได้อย่างไร? 

















จากตัวอย่างข้างต้น ผมคงต้องเริ่มคิดก่อนว่าสิ่งที่ผมต้องการหานั้นคืออะไร (ลูกฟุตบอล), มีลักษณะอย่างไร, สีอะไร, ขนาดเท่าไร, และอื่นๆ เพื่อทำให้ระบุหรือกำหนด (Identify) สิ่งนั้นที่ผมต้องการค้นหา จากนั้นตามด้วยแนวทางหรือกลยุทธ์ (Strategy) ในการค้นหาว่าผมจะมีแนวทางหรือวิธีในการค้นหาอย่างไร เช่น เริ่มหาจากภายในบ้าน, ห้องไหนที่เราจะเริ่มค้นหา, ในกรณีถ้าหาทั่วบ้านแล้วยังไม่เจอ จะต้องไปถามใครบ้าง, และอื่นๆ ตลอดจนนึกถึงสถานการณ์หรือเหตุการณ์ (Situation) ที่เกี่ยวข้อง เช่น ก่อนหน้านี้ผมได้นำเอาลูกฟุตบอลนี้ไปเตะกับใคร, ก่อนหน้านี้มีใครมาขอยีมรึป่าว, และอื่นๆ  โดยสิ่งต่างๆ ที่ผมได้อธิบายไว้ข้างต้นจะถูกนำมาคิดวิเคราะห์เพื่อตัดสินใจและดำเนินการหาลูกฟุตบอลที่หายไป โดยกระบวนการดังกล่าวนี้จะผ่านการคิดวิเคราะห์เพื่อดำเนินการผ่านทางสมองของมนุษย์เรา (Human Brain) และในที่สุดผมก็หาลูกฟุตบอลดังกล่าวนี้เจอ 


และถ้าผมต้องการเอาเรื่องราวจากตัวอย่างนี้ทั้งหมดไปใส่ใน Computers/Machines/Systems โดยใช้ AI เทคโนโลยี 

















เพื่อในอนาคตผมเกิดทำลูกฟุตบอลหายอีก ผมสามารถที่จะให้ Computers/Machines/Systems นี้ทำการค้นหาลูกฟุตบอลให้ผม โดยผมต้องทำให้ Computers/Machines/Systems ดังกล่าวนี้สามารถคิดและทำเหมือนกับผมครับ โดยผมต้องทำให้ Computers/Machines/Systems เรียนรู้เรื่องราวๆ ต่างๆ ที่เกี่ยวข้องทั้งหมดที่เกี่ยวข้องกับลูกฟุตบอลตามที่ผมอธิบายไว้ก่อนหน้านี้ ยกตัวอย่างเช่น ข้อมูลเกี่ยวกับลูกฟุตบอล (รูปร่าง, สี, ขนาด, และอื่นๆ), สภาพแวดล้อมของบ้าน (ห้อง, ขั้น, และอื่นๆ), และอื่นๆ เพื่อให้ Computers/Machines/Systems ทำการค้นหาลูกฟุตบอลได้เองในครั้งหน้าถ้าเกิดลูกฟุตบอลผมหายอีก เพราะฉะนั้นมาถึงตรงนี้ ถ้ามีใครถามผมว่า AI คืออะไร? ผมขออธิบายแบบนี้ครับ AI คือเทคโนโลยีที่ทำให้ Computers/Machines/Systems สามารถคิดและตัดสินใจได้เหมือนกับมนุษย์ครับ โดย AI ทำให้ Computers/Machines/Systems สามารถวิเคราะห์ข้อมูลและตัดสินใจโดยที่ไม่ต้องมีมนุษย์เราให้คำแนะนำครับ 


และอย่างที่ผมได้เกริ่นไว้ตอนต้นว่าในชีวิตประจำวันของเรานั้นมี AI เทคโนโลยีเข้ามาเกี่ยวข้องอยู่แล้วครับ เช่น เวลาที่เราเข้าไปสั่งซื้อสินค้าออนไลน์, รับชมหนังหรือซีรีย์ผ่านทาง Streaming ยี่ห้อต่างๆ, และอื่นๆ ครับ ซึ่ง ณ ปัจจุบันมีการนำเอา AI เทคโนโลยีมาประยุกต์ใช้งานในหลากหลายรูปแบบ เช่น


- Social Media Algorithms

- Virtual Assistants- Online Shopping 

- อื่นๆ 


ยิ่งไปกว่านั้นเรายังสามารถแบ่งประเภทหรือชนิดของ AI ได้เป็น 2 แบบ ดังนี้:















1. แบบที่สร้างขึ้นมาสำหรับ Capability

2. แบบที่สร้างขึ้นมาสำหรับ Functionality


1. แบบที่สร้างขึ้นมาสำหรับ Capability ยังแบ่งออกเป็นอีก 3 ประเภท คือ













1.1 Narrow AI, คือ ประเภทหนึ่งของ AI  มีอีกชื่อหนึ่งคือ Weak AI ที่ถูกออกแบบมาเพื่อให้ทำงานเฉพาะอย่างหรือเฉพาะทางเท่านั้น เช่น ในการค้นหาข้อมูลใน Search Engine, ในการทำ Email Spam Filters, และอื่นๆ 

1.2 General AI, คือ  AI ประเภทที่สามารถเรียนรู้และเข้าใจ ตลอดจนสามารถทำงานต่างๆ เหมือนกับมนุษย์ได้

1.3 Super AI, คือ AI ประเภทที่สามารถเรียนรู้, เข้าใจ, และทำสิ่งต่างๆ เท่ากับ Human Intelligence (คือ ความสามารถของมุนษย์เราที่สามารถรับรู้ข้อมูลต่างๆ, การคิดวิเคาระห์, อารมณ์, ความคิดสร้างสรร, และอื่นๆ) สำหรับ AI ประเภทนี้ยังคงอยู่ในการทดลองและพัฒนา แต่เราสามารถเห็นได้จากหนังหลายๆ เรื่อง เช่น The Matrix, I Robot, และอื่นๆ เป็นต้นครับ


2. แบบที่สร้างขึ้นมาสำหรับ Functionality แบ่งออกเป็นอีก 4 ประเภท คือ











2.1 Reactive Machines, คือ ประเภทหนึ่งของ AI ที่ไม่มี Memory โดยการทำงานจะพิจารณจากข้อมูลและสถานการณ์ปัจจุบันเท่านั้น เพื่อทำงานต่างๆ 

2.2 Limited Memory, คือ ประเภทหนึ่งของ AI ที่มี Memory ขั่วคราวเพื่อใช้ในการทำงานและเป็นการปรับปรุงจาก AI ประเภทแรกก่อนหน้านี้ โดย AI ประเภทนี้จะมีการใช้งานและเก็บข้อมูลต่างๆ ก่อนหน้านี้เอาไว้ใน Memory (ซึ่งเก็บได้ระยะเวลาหนึ่งเท่านั้นหรือเรียกว่า Short-Term Memory) เพื่อทำให้การทำงานตลอดจนการตัดสินใจดีขึ้นกว่าประเภทแรก

2.3 Theory Of Mind, คือ ประเภทหนึ่งของ AI ที่ยังอยู่ในการทดลองและพัฒนา เพราะ AI ประเภทนี้จะมีความสามารถในการเรียนรู้และเข้าใจสิ่งต่างๆ ของมนุษย์ เช่น อารมณ์ของมุนษย์ (Human Emotions), ความเชื่อ (Belief), และอื่นๆ

2.4 Self-Aware AI, คือ ประเภทหนึ่งของ AI ที่มีความฉลาดมากๆ หรือเรียกว่า Super Intelligent เพราะ AI ประเภทนี้สามารถเรียนรู้และเข้าใจในเรื่องราวต่างๆ เช่น ความตระหนักรู้ (Consciousness), อารมณ์ (Sentiment), และอื่นๆ 


และทั้งหมดนี้คือเรื่องราวของ AI ตอนที่ 1 ซึ่งเป็นจุดเริ่มต้นที่ผมจะพาทุกท่านเข้าสู่เรื่องราวของ AI เทคโนโลยีที่จะนำมาประยุกต์ใช้งานในด้าน Cybersecurity ครับผม.....

วันจันทร์ที่ 26 สิงหาคม พ.ศ. 2567

รู้จักกับ Multitenant Organization ใน Microsoft Entra ID

      สวัสดีครับทุกท่านสำหรับบทความนี้ผมอยากจะนำเสนอเรื่องราวเกี่ยวกับการบริหารจัดการ Identity ในลักษณะหรือรูปแบบที่เรียกว่า "Multi-Tenant" ครับ ซึ่งแน่นอนว่าจะมี Service ที่ชื่อว่า "Microsoft Entra ID" เข้ามาเกี่ยวข้องอย่างแน่นอนครับ ที่มาที่ไปของบทความนี้สืบเนื่องมาจากที่ผมได้มีโอกาสเข้าไปพบและให้คำปรึกษากับลูกค้าก่อนหน้านี้และได้พบว่า Tenants ของลูกค้าหลายที่เลยครับที่มีมากกว่า 1 Tenants และอีกหลายที่ๆ กำลังวางแผนและพิจารณาการมี Tenants หลายๆ Tenants เพิ่มเติมครับ ทางลูกค้าก็มีคำถามว่าจะวางแผนเพื่อดำเนินการในเรื่องของการบริหารจัดการอย่างไร? ถ้าองค์กรมีหลายๆ  Tenants ครับ

และจากคำถามดังกล่าวนี้เอง, ผมจึงอยากจะพาทุกท่านไปทำความรู้จักกับความสามารถหรือฟีเจอร์หนึ่งของ Microsoft Entra ID ที่จะเข้ามาช่วยในประเด็นดังกล่าวนี้ครับ โดยฟีเจอร์นี้มีชื่อว่า "Multitenant Organization" ครับ แต่ก่อนที่จะพาทุกท่านไปทำความรู้จักกับฟีเจอร์ดังกล่าวนี้ มีสิ่งหนึ่งที่ผมอยากจะอธิบายทุกท่านก่อนนะครับ นั่นก็คือเรื่องของการบริหารจัดการในลักษณะที่มีหลายๆ Tenants นั้น โดยส่วนใหญ่เลยจะเกี่ยวข้องกับ Tenants ที่มี Resources ของ Microsoft 365 ครับ แต่ก็มี Resources ของ Microsoft Azure ได้นะครับทั้งนี้ทั้งนั้นจะต้องดูจากความต้องการของแต่ละองค์กรครับ  

ผมขอยกตัวอย่างหนึ่งนะครับ เช่น ถ้าตัวผมต้องการที่จะ access เข้าไปใช้งาน Resources ต่างๆ ใน Tenant ของทุกท่านล่ะครับ คำถามคือ ท่านจะดำเนินการอย่างไรครับ? เพื่อให้ผมสามารถเข้าถึงหรือ access ได้  สิ่งที่จะต้องพิจารณาก่อนเลยคือ ตัวผมเท่านั้นหรือมีคนอื่นๆ อีกหรือเปล่าพูดง่ายๆ เลย คือ อยากทราบว่าจำนวนครับ ถัดมาคือ ตัวผมรวมถึงท่านอื่นคือใคร เช่น เป็นผู้ใช้งานภายในองค์กรหรือบุคคลภายนอกองค์กรครับ ถ้าเป็นภายนอกองค์กร สิ่งที่ทุกท่านสามารถจัดการได้เพื่อให้ผมเข้าถึงและใช้งาน Resources ต่างๆ ได้ นั่นก็คือ การใช้ External User (Guest User) ครับ (คุ้นๆ กันมั๊ยครับ)  แต่ถ้าเป็นอีกกรณีหนึ่งคือ ถ้าออฟฟิศของผมกับทุกท่านเรามีการทำธุรกิจร่วมกันครับ และมีความต้องการ access Resources ต่างๆ ข้ามออฟฟิศซึ่งแน่นอนมันก็คือข้าม Tenants ครับ คำถามคือ ท่านผู้อ่านจะทำอย่างไร? สำหรับกรณีนี้ครับ ลองนึกดูครับ.....

จากตัวอย่างที่ผมยกขึ้นมาอธิบายและสอบถามทุกท่านเมื่อซักครู่ พอนึกคำตอบหรือหาแนวทางได้มั๊ยครับ ถ้านึกไม่ออก ไม่เป็นไรครับ เพราะทาง Microsoft ได้เตรียมแนวทางที่จะดำเนินการเอาไว้ให้เราแล้วครับ โดยมีหลายแนวทางให้เราพิจารณาดังนี้ครับ:


- B2B Direct Connect

- B2B Collaboration

- Cross-Tenant Synchronization

- อื่นๆ 


ขยายความตรงอื่นๆ ครับ คือ นอกเหนือจากแนวทางหรือรูปแบบข้างต้นแล้ว ยังมีอีกแนวทางหนึ่งก็คือ "Multitenant Organization" ครับ และในบทความนี้ตามที่เกริ่นไว้ข้างต้น ผมจะพาทุกท่านมาทำความรู้จักกับ Multitenant Organization กันครับ และเพื่อไม่ให้เป็นการเสียเวลาเรามาทำความรู้จักกับ Multitenant Organization กันเลยครับ


Multitenant Organization คืออะไร?

คือฟีเจอร์หนึ่งของ Microsoft Entra ID และ Microsoft 365 ซึ่งเข้ามาช่วยในเรื่องของการกำหนดขอบเขต (Boundary) ในการบริหารจัดการครับ Tenants ต่างๆ ในองค์กรครับ สิ่งที่อยากจะให้ทุกท่านได้ทราบต่อมาคือ ทำไมเราถึงต้องพิจารณาและนำเอา Multitenant Organization มาใช้งาน มันมีเหตุผลหลักๆ ดังนี้ครับ:


- มีความต้องการที่จะกำหนดขอบเขต (Boundary) ใหักับ Tenants ที่เป็นขององค์กร

- มีความต้องการที่จะ Collaborate ข้าม Tenants สำหรับ Microsoft Teams

- มีความต้องการที่จะ Collaborate ข้าม Tenants สำหรับ Microsoft Viva Engage 


และถัดมาคือใครหรือองค์กรใดที่ควรจะพิจารณานำเอา Multitenant Organizations มาประยุกต์ใช้งาน คำตอบ คือ องค์กรที่มีหลาย Tenants นั่นเองครับและต้องการทำให้การบริหารจัดการ Identity ในหลายๆ Tenants นั้นมีความยืดหยุ่นและมีประสิทธิภาพมากขึ้น ส่งผลทำให้องค์กรที่นำเอาฟีเจอร์ดังกล่าวนี้ได้รับประโยชน์ต่างๆ เช่น:


- ระบุถึงความแตกต่างระหว่างผู้ใช้งานในองค์กรกับผู้ใช้งานภายนอกองค์กรได้อย่างชัดเจน เพราะใน Microsoft Entra ID นั้นคำว่า "External Users" นั้นสามารถเป็นผู้ใช้งานมาจากภายในองค์กร แต่องค์กรดังกล่าวมีลักษณะเป็น Multi-Tenant หรือ External Users ที่ว่านี้อาจจะเป็นบุคคลภายนอกองค์กรก็ได้ ซึ่งถ้าสร้างหรือกำหนดความแตกต่างในะรื่องนี้ได้อย่างชัดเจนก็จะส่งผลทำให้การบริหารจัดการ เช่น การกำหนด Policy ต่างๆ ได้มีความยืดหยุ่นและมีประสิทธิภาพมากขึ้น

- ปรับปรุงเรื่องของ Collaboration ใน Microsoft Teams

- ปรับปรุงเรื่องของ Collaboration ใน Microsoft Viva Engage


Multitenant Organization ทำงานอย่างไร?

เริ่มจากตัวของ Multitenant Organization จะให้เราทำการกำหนดขอบเขต (Boundary) รอบๆ  Microsoft Entra Tenants ของเราครับ ว่า Tenants ไหนเป็นของเรา หรือเรียกว่าการ Define a Multitenant Organization  จากนั้นทำการ Join a Multitenant Organization โดยผู้ดูแลหรือผู้ที่เกี่ยวข้องก็จะทำการ Join Tenants ต่างๆ ตามที่ต้องการหรือตามที่วางแผนเอาไว้ก็จะส่งผลให้ Multitenant Organization ถูกสร้างและกำหนดขึ้นส่งผลทำให้ผู้ดูแลแต่ละ Tenants ยังคงมีความสามารถในการบริหารจัดการ Tenants ของตัวเองและ Tenants ที่เป็นสมาชิกอยู่ใน Multitenant Organization ดังรูปด้านล่างครับ





จากรูปด้านบนหลังจากที่มีการกำหนดและใช้งาน Multitenant Organization เรียบร้อยแล้วส่งผลทำให้ Admin หรือผู้ดูแลจาก Tenant A มองเห็นหลายๆ Tenants (A, B, และ C) และเห็น Cross-Tenant Settings ของ Tenant B และ C

Admin หรือผู้ดูแลจาก Tenant B มองเห็นหลายๆ Tenants (A, B, และ C) และเห็น Cross-Tenant Settings ของ Tenant A และ C

Admin หรือผู้ดูแลจาก Tenant C มองเห็นหลายๆ Tenants (A, B, และ C) และเห็น Cross-Tenant Settings ของ Tenant A และ B


*Cross-Tenant Settings คือ การที่ผู้ดูแลหรือ Admin ยังคงบริหารจัดการและควบคุม Resources ต่างๆ ในตามคอนเซปการทำงานของ Multitenant Organization ครับ 












โดย Cross-Tenant Settings จะถูกใช้ในการกำหนดความสัมพันธ์ระหว่าง Tenants (Tenant-to-Tenant Relationship) และ Policy ต่างๆ ดังนี้:


1. Cross-Tenant access Partner Configuration  รายละเอียดเพิ่มเติมสามารถไปที่ Link นี้ได้เลยครับ, Configure B2B collaboration cross-tenant access - Microsoft Entra External ID | Microsoft Learn

2. Cross-Tenant access Identity Synchronization รายละเอียดเพิ่มเติมสามารถไปที่ Link นี้ได้เลยครับ, Configure cross-tenant synchronization - Microsoft Entra ID | Microsoft Learn


Multitenant Organization จะอยู่ใน Microsoft Entra ID Edition (Premium P1) นะครับ รายละเอียดเพิ่มเติมเกี่ยวกับความแตกต่างของแต่ละ Edition ของ Microsoft Entra ID สามารถไปที่ Link นี้ครับ, แผนและราคาของ Microsoft Entra | Microsoft Security


เรื่องราวของฟีเจอร์นี้ยังมีรายละเอียดอีกเยอะนะครับ บทความนี้เป็นเพียงแค่ส่วนหนึ่งเท่านั้นนะครับ สำหรับท่านใดที่อยากทราบรายละเอียดเพิ่มเติมเกี่ยวกับ Multitenant Organization สามารถไปที่ Link นี้ได้เลยครับ, What is a multitenant organization in Microsoft Entra ID? - Microsoft Entra ID | Microsoft Learn


และนี่คือเรื่องราวของ Multitenant Organization ครับผม.....








วันอังคารที่ 13 สิงหาคม พ.ศ. 2567

รูปแบบต่างๆ ของ Identity ใน Microsoft Entra ID

      สวัสดีครับทุกท่าน สำหรับบทความนี้ผมอยากจะนำเสนอเรื่องราวเกี่ยวกับ Identity ใน Microsoft Azure ครับ และแน่นอนครับว่าพอเราพูดหรือนึกถึง Identity ก็จะมี Service นึงเข้ามาเกี่ยวข้องแน่นอนนั่นก็คือ "Microsoft Entra ID" โดยตัวของ Microsoft Entra ID นั้นเป็น Service ที่เข้ามาช่วยในเรื่องของการบริหารจัดการ Identity (Identity and Access Management) ซึ่งถ้าเราใช้งาน Cloud Services ต่างๆ ของ Microsoft ยกตัวอย่างเช่น Microsoft 365, Microsoft Azure, เป็นต้น Microsoft Entra ID ก็จะมาพร้อมกับ Cloud Services เหล่านี้และเข้ามาบริหารจัดการ Identity ใน Microsoft Entra Tenant ขององค์กรครับ โดยตัวของ Microsoft Entra ID นั้นถือว่าเป็น Service หนึ่งที่มีความสำคัญมากในองค์กรที่มีนำเอา Cloud เข้ามาประยุกต์ใช้งานเพราะตัวของ Microsoft Entra ID จะเข้ามาบริหารจัดการ Identity อย่างที่ผมได้เกริ่นไว้ข้างต้นและ Microsoft Entra ID จะดำเนินการกระบวนการต่างๆ กับ Identities เช่น Authentication, Authorization, และ Auditing ครับ 


โดยในบทความนี้ผมอยากจะพาทุกท่านมาทำความรู้จักกับชนิดหรือรูปแบบของ Identity ต่างๆ ใน Microsoft Entra ID ครับ เพราะในการบริหารจัดการ Identity ในองค์กร เราจะต้องเข้าไปเกี่ยวข้องกับ Identity หลากหลายรูปแบบครับ ทั้งนี้ก็ขึ้นอยู่กับความต้องการของแต่ละองค์กรว่าจะใช้ Identity ชนิดหรือรูปแบบใดบ้างครับ และสำหรับท่านที่ทำหน้าที่เป็นผู้ดูแล Microsoft Entra ID ในองค์กรตลอดจนท่านที่บทบาทหน้าที่ที่เกี่ยวข้องกับการบริหารจัดการ Identity ยิ่งควรทราบและทำความรู้จักกับชนิดหรือรูปแบบต่างๆ ของ Identity ครับ รายละเอียดจะเป็นอย่างไร เรามาเริ่มกันเลยครับ



รูปแบบต่างๆ ของ Identity ใน Microsoft Entra ID





สำหรับใน Microsoft Entra ID นั้นจะมี Identity อยู่ 4 แบบครับ โดยมีรายละเอียดดังนี้:


รูปแบบที่ 1:  User Account จัดว่าเป็น Identity รูปแบบหรือชนิดที่หลายๆ ท่านรวมถึงตัวผมเองรู้จักและคุ้นเคยมากที่สุด เพราะ Identity รูปแบบดังกล่าวนี้ใช้แทนตัวของผู้ใช้งานเพื่อใช้ในการเข้าถึง Resources ต่างๆ  โดยก่อนหน้าที่จะเข้าถึง Resources ต่างๆ ก็จะต้องผ่านกระบวนการตรวจสอบ (Authentication) กับ Microsoft Entra ID ก่อน โดยตัวของ User Account นั้นยังแบ่งออกเป็นอีก 3 ชนิดครับ นั่นก็คือ

- Cloud User Account (Cloud Account) คือ User Account ที่สร้างขึ้นมาใหม่ใน Microsoft Entra Tenant

- Hybrid User Account (Hybrid Account) คือ User Account ที่ถูก Synced จาก Active Directory Domain Service (AD DS) มายัง Microsoft Entra ID

- External User Account (Guest Account) คือ User Account ที่ใช้แทนบุคคลภายนอกองค์กร แต่เราต้องการให้เข้ามา Access Resources ต่างๆ ใน Microsoft Entra Tenant  


รูปแบบที่ 2: Group Account จัดว่าเป็น Identity ที่นำเอามาใช้ในเรื่องของการทำ Access Control หรือการ Assign สิทธิ์เพื่อเข้าถึง Resources ต่างๆ ครับ โดยตัวของ Group Account นั้นยังแบ่งออกเป็น 2 ชนิด คือ

- Security Group (Default) สำหรับใช้ในการเข้าถึงหรือ Access Resources ต่างๆ *Nest ได้

- Microsoft 365 Group สำหรับใช้ในการเข้าถึงหรือ Access Microsoft 365 Resources *ไม่สามารถ Nest ได้


รูปแบบที่ 3: Service Principal จัดว่าเป็น Identity ที่ถูกนำเอาไปใช้กับ Applications ในกรณีที่องค์กรที่มีความต้องการที่จะให้ Applications เช่น Web App เข้าถึงหรือ Access Resources ต่างๆ ใน Microsoft Tenant ครับ โดยการที่จะทำให้ตัวของ Application มี Identity (Service Principal) นั้นจะต้องนำเอา App ดังกล่าวนี้ไปทำการ Register กับ Microsoft Entra ID ครับ


รูปแบบที่ 4: Managed Identity จัดว่าเป็น Identity ที่ถูกนำเอามาใช้กับ Services ต่างๆ ใน Microsoft Azure ที่ต้องการเข้าถึงหรือ Access Resources ต่างๆ ใน Microsoft Tenant ครับ ยกตัวอย่างเช่น ถ้าผมต้องการให้ Azure Web App หรือ Azure App Service เข้าไป Access ข้อมูลหรือ Data ใน Azure Storage Account ครับ เพราะฉะนั้นการที่เราจะทำให้ Services ใน Microsoft Azure มี Identity ขึ้นมาได้น้้นก็จะอาศัยความสามารถของ Microsoft Entra ID โดยใช้ฟีเจอร์ "Managed Identity" ซึ่งก็คือ Identity ในรูปแบบดังกล่าวนี้นั่นเองครับ นอกจากนี้แล้ว Managed Identity ยังแบ่งออกเป็น 2 ชนิด คือ

- System-Assigned Managed Identity คือ ชนิดที่ Microsoft Entra ID สร้าง Identity ขึ้นมาและกำหนดให้กับ Azure Services นั้นๆ  ยกตัวอย่างเช่น ผมต้องการให้ Azure App Service เข้าไป Access ข้อมูลใน Azure Storage Account ดังนั้นเมื่อมีการกำหนด Identity ให้กับ Azure App Service แล้ว จากนั้นเราสามารถทำการ Assign RBAC Roles ที่ต้องการให้กับ Azure App Service ได้เลยครับ ซึ่งจะมีคอนเซปเดียวกับตอนที่เราทำการ Assign RBAC Roles ให้กับ  User หรือ Group Accounts (รูปแบบที่ 1 และ 2) ครับ

- User-Assigned Managed Identity คือ ชนิดที่ Microsoft Entra ID สร้าง Identity ขึ้นมาต่างหากและทำการกำหนดให้กับ Azure Services หลายตัวที่ต้องการเข้าถึงหรือ Access Resources เช่น ผมมี Azure Virtual Machines หลายตัวที่ต้องการเข้าถึงหรือ Access Resources ครับ ดังนั้น Identity ชนิดนี้สามารถถูกกำหนดให้กับหลาย Azure Virtual Machines ได้ครับ แทนที่จะกำหนดที่ละตัวครับ


และทั้งหมดนี้คือเรื่องราวเกี่ยวกับรูปแบบต่างๆ ของ Identity ที่อยู่ใน Microsoft Entra ID ครับ และมาถึงตรงนี้ท่านผู้อ่านจะเห็นว่า คำว่า "Identity" ที่เรารู้จักหรือคุ้นเคยกันอยู่เลย ไม่ได้หมายความเพียงแค่  User Account เพียงอย่างเดียวครับ อีกทั้งสิ่งที่จะเข้ามา Access Resources ที่อยู่ใน Microsoft Entra Tenant ก็ไม่ได้มีเพียงแค่ผู้ใช้งาน (User Account) อย่างเดียว ยังมี Applications ที่ต้องการเข้าถึงหรือ Access Resources เช่นเดียวกันครับ ดังนั้นในการที่เราจะเข้าไปทำการบริหารจัดการ Identity ในองค์กรมีความเป็นไปได้ครับ ที่เราอาจจะเกี่ยวข้องกับ Identity หลายหลายรูปแบบ และเราสามารถบริหารจัดการ Identity หลากหลายรูปแบบได้โดยอาศัยความสามารถของ Microsoft Entra ID ที่เรารู้จักครับผม.....

วันอังคารที่ 6 สิงหาคม พ.ศ. 2567

ทำความเข้าใจ Microsoft Entra ID, Tenant, และอื่นๆ เพื่อนำไปวางแผน, ออกแบบ, และประยุกต์ใช้งานในองค์กร

      สวัสดีครับทุกท่าน สบายดีกันทุกท่านนะครับ สำหรับผมนั้นช่วงที่ผ่านมาติดงานและภารกิจหลายอย่างครับไม่ว่าจะเป็นงานสอน, งาน Consulting, และอื่นๆ เลยไม่ได้มีเวลามาเขียนบทความเลย แต่ตอนนี้พอจะมีเวลาแล้วครับเลยกลับมานำเสนอเรื่องราวต่างๆ เหมือนเช่นเคยครับ และสำหรับบทความนี้ผมอยากนำเสนอเรื่องราวเกี่ยวกับ Microsoft Entra ID หรือชื่อเดิมคือ Azure Active Directory (Azure AD) นั่นเองครับ โดยสิ่งที่ผมอยากจะนำเสนอคือ การที่เราจะต้องทำความเข้าใจเกี่ยวกับคำศัพท์หรือ Terminology ต่างๆ ที่เกี่ยวข้องกับ Microsoft Entra ID เพื่อนำไปใช้ตั้งแต่การวางแผน,ออกแบบ, จนถึงการนำไปประยุกต์ใช้งานในองค์กรครับ และผมเชื่อว่าท่านผู้อ่านทุกท่านที่ใช้งาน Cloud Services ของ Microsoft อยู่แล้ว ก็น่าจะมีความคุ้นเคยตลอดจนมีประสบการณ์ในการบริหารจัดการ Microsoft Entra ID กันพอสมควร แต่หลายๆ ครั้งที่ผมเจอกับลูกค้า ยังมีหลายท่านเลยครับที่ยังไม่เข้าใจคอนเซปตลอดจนเรื่องราวต่างๆ ของ Microsoft Entra ID รวมถึงคำศัพท์ต่างๆ ที่เกี่ยวข้อง และนี่จึงเป็นที่มาของบทความของผมตอนนี้ครับ


Microsoft Entra ID คืออะไร?

เป็น Service หนึ่งที่มาพร้อมกับ Cloud Services ของ Microsoft (เช่น Microsoft 365, Microsoft Azure, เป็นต้น) ครับ โดยชื่อเดิมของ Microsoft Entra ID คือ Azure Active Directory (Azure AD) ครับ ตัวของ Microsoft Entra ID นั้นจะเป็น Service ที่ให้บริการในเรื่องของการบริหารจัดการ Identity หรือเรียกอย่างเป็นทางการว่า "Identity and Access Management" หรือ "IAM" ครับ ซึ่งจะมาทำหนาที่หลักๆ เช่น Authentication, Authorization, เป็นต้นครับ นอกจากนี้แล้วตัวของ Microsoft Entra ID ยังมีความสามารถในการไปทำงานร่วมกับ Active Directory Domain Service (AD DS) ซึ่งเป็น Role หนึ่งใน Windows Server (โดย Role ดังกล่าวนี้ไปติดต้ังที่ Windows Server ตัวใดก็ตาม เราจะเรียกว่า "Domain Controller" หรือ "DC" นั่นเองครับ) เพื่อทำ Hybrid Identity Scenario โดย Scenario ดังกล่าวนี้ถือว่าเป็นสิ่งที่ทุกองค์กรที่นำเอา Cloud ของ Microsoft เข้ามาประยุกต์ฺใช้งาน ก็จะต้องมีการวางแผนเพื่อดำเนินการ Scenario ดังกล่าวนี้ครับ เพื่อให้ได้ Benefits หนึ่งคือ "Single Sign-On" หรือ "SSO" ครับ 











นอกจากการทำงานร่วมกับ AD DS แล้ว, Microsoft Entra ID ยังสามารถทำงานร่วมกับ External Identity Providers อื่นๆ ได้อีกด้วย เช่น Google, Facebook. และอื่นๆ ครับ รวมถึงยังสามารถทำงานร่วมกับ SaaS หรือ Cloud Applications ได้อีกด้วยครับ มาถึงตรงนี้ท่านผู้อ่านก็จะเห็นว่า Microsoft Entra ID นั้นมีความสามารถหลากหลายและถือว่าเป็นส่วนประกอบที่สำคัญในระบบ IT ขององค์กร ไม่ว่าจะมีลักษณะเป็น Hybrid หรือ Multi-Cloud Environments ก็ตามครับ

ในแง่ของการบริหารจัดการ Identity เช่น Users, Microsoft Entra ID สามารถบริหารจัดการ User Accounts ได้ 3 ชนิด คือ

1. Cloud User Account คือ User ที่ถูกสร้างขึ้นมาใน Microsoft Entra (จริงๆ คือ ถูกสร้างขึ้นใน Tenant)

2. Hybrid User Account คือ User ที่ถูก Synced จาก AD DS มายัง Microsoft Entra ID (เกิดจากองค์กรวางแผนและดำเนินการทำ Hybrid Identity Scenario ตามที่อธิบายไว้ในข้างต้นครับ)

3. External User Account (Guest Account) คือ บุคคลที่อยู่ภายนอกองค์กรแต่ต้องการให้เข้ามา Access Resources ต่างๆ ขององค์กร


มาดูกันในแง่ของ Access Control กันบ้างครับ, ใน Microsoft Entra ID จะมีฟีเจอร์ที่ชื่อว่า Role-Bases Access Control (RBAC) เอาไว้จัดการในเรื่องของการที่เราจะทำการกำหนดหรือ Assign สิทธิ์ให้กับผู้ใช้งานในองค์กรเพื่อเข้าถึง Resources ต่างๆ โดย RBAC ใน Microsoft Entra ID ยังแบ่งออกเป็น 2 ชนิด คือ

1. Microsoft Entra Roles ใช้ในการจัดการ Microsoft Entra ID และ Tenant

2. Azure Resource Roles ใช้ในการจัดการ Resources ต่างๆ ของ Microsoft Azure


ยิ่งไปกว่านั้นตัวของ Microsoft Entra ID ยังมีหลาย Editions อีกด้วยครับ โดย Edition ที่มาพร้อมกับ Microsoft Entra ID นั่นก็คือ Free Edition ครับ (ใช้งานฟรีครับ) บางท่านอาจจะเคยได้ยินชื่อของ Edition อื่นๆ นอกเหนือจาก Free Edition ของ Microsoft Entra ID เช่น Microsoft Entra ID Premium P1, Microsoft Entra ID Premium P2 เป็นต้น โดยแต่ละ Edition ของ Microsoft Entra ID ก็จะมีสิ่งที่แตกต่างก็อยู่หลักๆ นั่นก็คือ ฟีเจอร์รวมถึงราคาครับ 

โครงสร้างหรือ Structure ของ Microsoft Entra ID จะมีลักษณะเป็นแบบ Flat ครับ คือ จะมีสิ่งที่เรียกว่า Microsoft Entra Tenant เกิดขึ้น (เดี๋ยวผมจะอธิบายเป็นเรื่องถัดไปครับ) และจะมีสิ่งต่างๆ ถูกเพิ่มเข้ามาใน Tenant ที่ว่านี้ ยกตัวอย่างเช่น Subscriptions, Resources ต่างๆ เป็นต้นครับ ถัดมาเรามาทำความรู้จักกับ Microsoft Entra Tenant หรือเรามักจะเรียกกันสั้นๆ ว่า Tenant ครับ



Microsoft Entra Tenant คืออะไร?

มันคือ Instance หนึ่งของ Microsoft Entra ID ซึ่งจะเกิดขึ้นเมื่อเราใช้งาน Cloud ของ Microsoft (Microsoft 365, Microsoft Azure เป็นต้น) โดยผ่านการนำเอา Subscriptions ของ Cloud Services ของ Microsoft มาทำการ Activate เพื่อใช้งานครั้งแรก สิ่งหนึ่งที่จะเกิดอยู่เบื้องหลังจากการ Activate คือ Microsoft Entra Tenant ครับ โดยถ้าเรามองในมุมของการบริหารจัดการ, Tenant ถือว่าเป็นขอบเขตที่ใช้ในการบริหารจัดการ Resources ต่างๆ ไม่ว่าจะเป็น Resources ของ Microsoft 365, Microsoft Azure ก็ตามครับ ดังนั้นก่อนที่เราจะนำเอา Cloud ของทาง Microsoft มาใช้งาน เราจะต้องทำความเข้าใจและทำการวางแผนออกแบบก่อนว่าในองค์กรของเราจะมีการนำเอา Cloud Services ใดของ Microsoft มาใช้งานบ้าง, จะมี Microsoft Entra Tenant กี่ Tenant (Best Practices ของ Microsoft แนะนำว่าควรจะเริ่มจากมี Tenant เดียวก่อนครับ), และอื่นๆ นี่คือตัวอย่างของปัจจัยต่างๆ ที่จะต้องถูกนำเอาพิจารณาตอนที่ทำการออกแบบครับ นอกจากนี้แล้วยังมีอีกสิ่งหนึ่งที่มาพร่อมกับ Tenant อีกครับ นั่นก็คือ Domain Representation ครับ ตัวอย่างเช่น  MyCompany.onmicrosoft.com ครับ หรืออีกชื่อว่า Primary Domain ซึ่งก็คือชื่อ Domain ของ Tenant ของเรา ซึ่งเราสามารถใช้ชื่อ Domain Name ของเราที่จดทะเบียนไว้ได้ครับ ซึ่งใน Microsoft Entra ID จะมีฟีเจอร์ที่ชื่อว่า Domain Names จัดการเรื่องดังกล่าวนี้ครับ

สิ่งที่ผมอยากจะอธิบายเพิ่มเติมสำหรับ โดยขอยกตัวอย่างนี้ครับ ในกรณีที่ผมตัดสินใจจะนำเอา Microsoft Azure เข้ามาประยุกต์ใช้งานในองค์กรเป็นครั้งแรก ผมจะต้องวางแผนและเตรียมความพร้อมต่างๆ จนกระทั่งผมตัดสินใจซื้อ Azure Subscription (ในความเป็นจริง จะต้องมีการวางแผนออกแบบด้วยนะครับว่า เราจะมี Subscriptions ทั้งหมดกี่ Subscriptions) จากนั้นทำการ Activate และสิ่งที่ตามมาคือ Tenant ตามที่ผมได้อธิบายไปก่อนหน้านี้ แต่มีอีกหนึ่งสิ่งที่ทุกท่านจะต้องรู้จักกับเพราะสิ่งนี้จะอยู่ภายใน Tenant ครับ นั่นก็คือ "Azure Resource Hierarchy" ดูตามรูปด้านล่างครับ














และในการทำงานและใช้งานจริง จะต้องมีการวางแผนและออกแบบ Azure Resource Hierarchy ด้วยนะครับ เพราะโครงสร้างดังกล่าวนี้จะเกี่ยวข้องกับหลายเรื่องเลยครับ ไม่ว่าจะเป็นเรื่องของ การ Organizing Resources, Access Control, Governance, เป็นต้นครับ ซึ่งจะต้องมีการนำเอา Services ตัวอื่นๆ ที่อยู่ใน Microsoft Entra Family หรือ Microsoft Entra Suite (ล่าสุดที่ทาง Microsoft ได้มีการ Announced ออกมาครับ) เข้ามาทำงานร่วมกัน ทั้งนี้ขึ้นอยู่กับความต้องการของแต่ละองค์กรด้วยนะครับ ถัดมาผมจะอธิบายเรื่องของ Azure Subscriptions ครับ



Azure Subscriptions คืออะไร?

ม้นเป็น Logical Containers เพื่อใช้ในการ Provisioning และ Managing Azure Resources ต่างๆ  และจะผูกเข้ากับเรื่องของ Billing ครับ สำหรับท่านใดที่คุ้นเคยกับการใช้งาน Microsoft Azure อยู่แล้ว ก็จะทราบและเข้าใจว่า Azure Subscriptions นั้นจะเข้ามาเกี่ยวข้องในเวลาที่เราต้องการที่จะทำการ Deploy หรือ Provision Services ซักตัวหนึ่งใน Microsoft Azure ใช้งาน ซึ่งค่าใช้จ่ายของ Services ดังกล่าวนั้นก็จะผูกเข้ากับ Azure Subscriptions เพื่อ Charge หรือคิดค่าใช้จ่ายครับ โดยแต่ละ Services ใน Microsoft Azure ก็จะมีค่าใช้จ่ายที่แตกต่างกันไปครับ ดังนั้นในการใช้งานจริง จึงจำเป็นต้องมีการวางแผนออกแบบด้วยนะครับว่าจะมี Subscriptions ทั้งหมดเท่าไร? และตัวของ Azure Subscriptions ถือว่าเป็นส่วนหนึ่งของ Azure Resource Hierarchy และอยู่ภายใต้ Tenant ครับ

มาถึงตรงนี้แล้ว นั่นหมายความว่าเรามี Tenant, Subscription, และอื่นๆ พร้อมที่จะดำเนินการตามที่ได้ทำการวางแผนออกแบบไว้แล้วครับ และนี่เป็นเพียงแค่เรื่องราวที่เกี่ยวข้องกับ Microsoft Entra ID ที่เราจะต้องทำความเข้าใจเบื้องต้นเท่านั้นนะครับ เพราะในความเป็นจริงแล้วยังมีเรื่องราวอีกเยอะมากครับที่เกี่ยวข้องกับ Microsoft Entra ID ยังไงคอยติดตามกันนะครับผม.....


วันจันทร์ที่ 19 กุมภาพันธ์ พ.ศ. 2567

รู้จักกับ Azure Savings Plan

      สวัสดีครับทุกท่าน สำหรับบทความนี้ผมขอนำเสนอเรื่องราวของ Pricing Model ใหม่ของ Microsoft Azure ซึ่งจะมีผลกับ Azure Compute Services ต่างๆ  เช่น Azure Virtual Machine (Azure VM) ครับ โดย Pricing Model ใหม่ที่ว่านี้มีชื่อว่า "Azure Savings Plan" ครับ และที่มาที่ไปของบทความนี้สืบเนื่องมาจากมีลูกค้าสอบถามมาว่า Azure Savings Plan กับ Azure Reservations (หรือ Azure Reserved Instances) ต่างกันอย่างไร? ครับ


โดยผมขออนุญาตยกตัวอย่างประกอบในการอธิบายเรื่องของ Azure Savings Plan รวมถึง Azure Reserved Instances (Azure RIs) ครับ เริ่มจากผมมีความต้องการที่อยากจะสร้างและทำการ Deploy Azure VM ซัก 1 VM ซึ่งแน่นอนว่าผมจะต้องเริ่มจากการวางแผนและทำการประเมินหลายปัจจัยก่อน ปัจจัยหนึ่งที่จะต้องนำมาพิจารณา คือ ค่าใช้จ่ายของ Azure VM ซึ่งจะอยู่ที่เท่าไรนั้น ก็ขึ้นอยู่กับ 2 ส่วนหลัก คือ Compute (Series & Sizes) และ Storages (Disks) ครับ เพราะฉะนั้นนี่คือ ค่าใช้จ่ายที่เราจะต้องจ่ายสำหรับ Azure VM ดังกล่าวนี้โดยเราสามารถทำการประเมินค่าใช้จ่ายได้ก่อนที่จะทำการ Deploy ซึ่งการประเมินโดยส่วนใหญ่ก็จะประเมินค่าใช้จ่ายเป็นรายเดือนครับ จากตัวอย่างดังกล่าวนี้ สมมติว่า Azure VM ที่ผมอยากจะสร้างและใช้งานค่าใช้จ่ายหรือราคาอยู่ที่ 100 บาท/เดือน ซึ่งเราจะเรียกโดยรวมสำหรับค่าใช้จ่ายของ Azure VM ที่ผมยกตัวอย่างขึ้นมานี้ว่าอยู่ในรูปแบบที่เรียกว่า "Pay as You Go" หรือใช้เท่าไรก็จ่ายเท่านั้นครับ 


อีกปัจจัยหนึ่งที่จะต้องนำมาพิจารณาในขณะที่ทำการวางแผน คือ เรื่องของ Optimize เรื่องของค่าใช้จ่าย หรือพูดง่ายๆ ก็คือ จะทำอย่างไรให้ค่าใช้จ่ายของ Services (จากตัวอย่างนี้คือ Azure VM) ใน Microsoft Azure นั้นมีค่าใช้จ่ายที่ลดหรือถูกลง ในกรณีของตัวอย่างนี้การที่จะทำการ Optimize หรือหาวิธีการที่จะทำอย่างไรให้ค่าใช้จ่ายของ Azure VM นั้นถูกลง โดยปรกติสามารถทำได้อยู่แล้วครับ ทางเลือกหนึ่งที่จะนำมาพิจารณาใช้คือ "Azure Reserved Instances" หรือ Azure RIs ครับ โดยคอนเซปของ Azure RIs คือ การที่เราพิจารณาซื้อสัญญาการใช้งาน Azure Compute Services ล่วงหน้า โดยมีระยะเวลาให้เลือก เช่น 1 หรือ 3 ปีครับ ซึ่งจะทำให้ค่าใช้จ่ายของ Azure Compute Services ดังกล่าวนั้นถูกลง จะถูกมากหรือน้อยแค่ไหนขึ้นอยู่กับหลายส่วนครับ เช่น Azure VM Series & Sizes เป็นต้นครับ และช่วงที่ผ่านมาตัวผมเองก็จะแนะนำให้ลูกค้าใช้ทางเลือกนี้ครับ แต่ในช่วงเวลาที่ผ่านมาทาง Microsoft ได้เพิ่ม Pricing Model ใหม่สำหรับ Azure Compute Services ครับ นั่นก็คือ "Azure Savings Plan" นั่นเองตามที่ผมได้เกริ่นไว้ตอนต้นของบทความครับ


Azure Savings Plan คืออะไร?


คือ Pricing Model ใหม่สำหรับ Azure Compute Services เช่น

- Azure Virtual Machine

- Azure App Service

- Azure Functions

- Azure Container Instances

- Azure Dedicated Host

- อื่นๆ














โดยเราสามารถ Commit ว่าจะใช้ Azure Compute Services จากที่อธิบายไว้ข้างต้น เป็นเวลากี่ชั่วโมง ยกตัวอย่างเช่น ผมอยากจะใช้ซัก 10 ชั่วโมงต่อปี เป็นต้นครับ ค่าใช้จ่ายโดยรวมก็จะถูกกว่าแบบปรกติ (Pay as You Go) ครับ 


ผมเชื่อว่ามาถึงตรงนี้ ท่านผู้อ่านหลายๆ ท่านคงมีคำถามแน่ๆ เลย คือ  Azure Savings Plan แตกต่างจาก Azure RIs อย่างไร?  อธิบายแบบนี้ครับ สำหรับ Azure Reserved Instances (Azure RIs) นั้นคือ การที่เรากำหนดระยะเวลาในการใช้งาน Azure Compute Services ใดโดยเราจะต้องระบุเลยว่าจะใช้ Azure Compute Services ใด เช่น Azure VM จากตัวอย่างที่ผมได้อธิบายข้างต้นไว้นั่นคือคอนเซปของ Azure RIs ครับ ตามด้วยระยะเวลา เช่น 1 หรือ 3 ปีครับ ดังนั้นสรุปได้ว่าการใช้ Azure RIs นั้น จะต้องระบุการใช้งาน Azure Compute Services และ Regions ครับ ในขณะที่ Azure Saving Plans เราไม่ต้องระบุการใช้งาน Azure Compute Services ว่าจะใช้ Service ใด ขอให้อยู่ใน List ของ Azure Savings Plan, ไม่ต้องระบุหรือกำหนด Regions เป็นแบบ Global เลยครับ นั่นหมายความเราสามารถทำการ Deploy และใช้งาน Azure Compute Services ใดก็ได้ (อยู่ใน List ที่ Azure Saving Plan รองรับ) จะอยู่ใน Regions ใดก็ได้ โดยทำการ Commit จำนวนชั่วโมงของ Azure Compute Services เหล่านั้นหรือที่เรียกว่า "On-Demand Compute Usage" ครับ โดยตัวของ Azure Savings Plan มี Savings Plan Recommendations ช่วยเราในวิเคราะห์การใช้งานที่ผ่านมา, ค่าใช้จ่าย, และอื่นๆ เพื่อช่วยเราในการพิจารณาครับ นอกจากนี้แล้วใน Azure Savings Plan ยังมีความยืดหยุ่นให้เราใช้งาน โดยสามารถกำหนด Scope ในการใช้งาน (Savings Plan Scope) ได้อีกด้วย เช่น Shared Scope, Single Subscription Scope, Management Group Scope, และ Single Resource Group Scope ครับ












และผมขอสรุปแบบนี้นะครับว่า เราจะพิจารณาใช้ Azure Reserved Instances (Azure RIs) สำหรับ Workloads เช่น Azure VMs ที่ต้องให้บริการอย่างต่อเนื่อง (Critical Workloads) และไม่ต้องการเปลี่ยนแปลงใดๆ เช่น Series, Regions, เป็นต้น ถ้าเข้าข่ายลักษณะดังกล่าวนี้แนะนำว่าให้พิจารณาใช้ Azure RIs ครับ แต่ถ้า Workloads มีลักษณะการทำงานเป็นแบบ Dynamic เช่น มีการเปลี่ยนแปลง Sizes, Regions, เป็นต้นอยู่บ่อยๆ หรือเป็นระยะๆ แนะนำว่าควรพิจารณา Azure Savings Plan ครับ


Azure Savings Plan ยังมีรายละเอียดมากกว่านี้นะครับ ข้อมูลหรือรายละเอียดเพิ่มเติมเกี่ยวกับ Azure Savings Plan สามารถไปที่ Link นี้ได้เลยครับ, Azure Savings Plan for Compute | Microsoft Azure









สิ่งที่อยากจะเน้นย้ำคือ การทำความเข้าใจคอนเซปตลอดจนการวางแผนและออกแบบยังคงเป็นสิ่งที่มีความสำคัญมากนะครับ และเป็นเรื่องที่จะต้องทำก่อนที่จะเลือกและติดตั้งใช้งาน Azure Services ใดๆ ก็ตามครับ และทั้งหมดนี้คือเรื่องราวของ Azure Savings Plan ครับผม.....

วันเสาร์ที่ 10 กุมภาพันธ์ พ.ศ. 2567

ทำความรู้จักกับ Azure Monitor Agent (AMA)

      สวัสดีครับทุกท่าน สำหรับบทความนี้ผมอยากจะนำเสนอเรื่องราวของการ Monitoring โดยใช้ Services ที่อยู่ใน Microsoft Azure ครับ โดยการ Monitoring ที่ว่านี้ยังรวมถึง Security Operations ด้วยครับ เพราะเนื่องจากมันมีความเกี่ยวข้องกันอยู่ครับ ขออนุญาตยกตัวอย่าง เช่น ถ้าผมมีความต้องการที่อยากจะทำการตรวจสอบ (Monitor) ดูเรื่องของ Performance และ Availability กับ Workloads ต่างๆ  (Azure Virtual Machines, Azure Storage Accounts, และอื่นๆ) ที่ผมใช้งานอยู่ว่าเป็นอย่างไร? ใน Microsoft Azure มี Services ใดที่สามารถจัดการเรื่องนี้ได้มั๊ย คำตอบ คือ ใน Microsoft Azure จะมี Service หนึ่งที่ชื่อว่า "Azure Monitor" ที่จะเข้ามาช่วยจัดการเรื่องดังกล่าวที่ผมยกตัวอย่างนี้ได้ครับ


หรือในกรณีของตัวอย่างต่อมา ถ้าผมต้องการอยากจะทำการตรวจสอบว่า IT Environments (Hybrid และ Multi-Cloud) โดยมี Workloads เช่น Virtual Machines ตัวใดที่มีช่องโหว่หรือมีความเสี่ยงหรือไม่ คำตอบ คือ สามารถใช้ "Microsoft Defender for Cloud" ซึ่งเป็นอีกหนึ่ง Service ที่อยู่ใน Microsoft Azure เข้ามาช่วยจัดการกับตัวอย่างนี้ได้ครับ และจากนี้ผมได้ยกตัวอย่างมานี้ มันเป็นเพียงแค่ส่วนหนึ่งเท่านั้นสำหรับเรื่องราวที่เกี่ยวข้องกับการ Monitoring รวมถึงการทำ Security Operations ครับ


แต่ประเด็นที่ผมอยากจะนำเสนอและมีความเกี่ยวข้องกับเรื่องเหล่านี้ก็คือ ก่อนที่เราจะเริ่มดำเนินการเรื่องดังกล่าวนี้ (Monitoring และ Security Operations) จะต้องเริ่มจากการวางแผนและทำการออกแบบก่อนครับ เพราะเรื่องนี้ยังมีรายละเอียดอีกเยอะพอสมควรครับ อีกทั้งยังเกี่ยวข้องกับหลาย Services ใน Microsoft Azure ดังที่ผมได้ยกตัวอย่างไปในข้างต้นครับ และสำหรับบทความนี้ ผมจะนำเสนอเรื่องของการรวบรวมข้อมูล (Collecting Data) จาก Workloads คือ Virtual Machines ครับ โดยมีวัตถุประสงค์คือ นำเอาข้อมูลดังกล่าวนี้มาทำดำเนินการต่อ เช่น การ Monitoring, การ Detection, และอื่นๆ เป็นต้น ในกรณีที่เราต้องการรวบรวมข้อมูลจาก Virtual Machines ที่อยู่ใน IT Environments (Hybrid และ Multi-Cloud) ถ้าใช้ Microsoft Azure จะต้องมีการติดตั้ง Agent ไปยัง Virtual Machines เหล่านี้ครับ โดย Agent ที่ว่านี้มีชื่อว่า "Azure Monitor Agent" หรือเรียกสั้นๆ ว่า "AMA" ครับ โดย AMA จะเป็น Agent ตัวใหม่ที่ทาง Microsoft ได้มีการพัฒนาขึ้นมาเพื่อใช้งานแทน Agent เดิมคือ Azure Log Analytics Agent ครับ (ซึ่งทาง Microsoft จะ Retired ในวันที่ 31 August 2024 นี้ครับ) รวมถึงมาแทน Agents อื่นๆ เช่น Telegraf Agent และ Diagnostics Extension ด้วยครับ


เพราะฉะนั้นในกรณีถ้าหากท่านผู้อ่านมีการใช้งาน Azure Log Analytics Agent อยู่ ก็จะตัองเตรียมวางแผนในเรื่องของการ Migrate มาใช้งาน AMA แทนครับ รายละเอียดเกี่ยวกับเรื่องนี้สามารถไปที่ Link นี้ได้เลยครับ, Migrate from legacy agents to Azure Monitor Agent - Azure Monitor | Microsoft Learn








Azure Monitor Agent (AMA) คืออะไร?


AMA คือ Agent ที่ทำหน้าที่ในการเก็บรวบรวมข้อมูล (Performance Metric และ Logs) จาก Guest OS (Windows และ Linux) ของ Virtual Machines ที่อยู่ใน Microsoft Azure, On-Premise, และที่อื่นๆ (ครอบคลุมทั้ง Hybrid และ Multi-Cloud Environments) โดยข้อมูลที่เก็บรวบรวมมาจาก Virtual Machines ต่างๆ นั้นก็จถูกนำไปใช้งานกับ Services อื่นๆ ใน Microsoft Azure เช่น Azure Log Analytics Workspace, Azure Monitor, Microsoft Defender for Cloud, เป็นต้น


สำหรับ AMA นั้นทาง Microsoft ได้มีการปรับปรุงและพัฒนาความสามารถต่างๆ ที่ดีและเก่งขึ้นกว่า Azure Log Analytics Agent ครับ ยกตัวอย่างเช่น 












- การรวบรวมข้อมูลต่างๆ นั้น เราสามารถกำหนดได้ว่าจะทำเอาข้อมูลอะไรบ้าง ไม่ต้องเอามาทั้งหมดเหมือนแต่ก่อน โดยใช้ "Data Collection Rules" หรือ "DCR" ทำให้เกิดความยืดหยุ่นสำหรับการเก็บรวบรวมข้อมูล และที่สำคัญคือ ทำให้ประหยัค่าใช้จ่ายอีกด้วยครับ











- ใช้ Agent เดียว (AMA) รองรับทั้ง Server และ Devices 

- ข้อมูลที่ถูกรวบรวมมานั้นสามารถถูกส่งไปยังหลายๆ ที่หรือหลาย Azure Log Analytics Workspaces (Multi-Homing) รองรับทั้ง Cross-Region และ Cross-Tenant 

- มีความปลอดภัยและ Performance ดีขึ้น เพราะมีการทำงานร่วมกับ Microsoft Entra ID (Managed Identity) และมี Throughput ดีกว่าเดิมถึง 25% เมื่อเปรียบเทียบกับ Agent เดิม (Azure Log Analytics Agent)

- อื่นๆ


รายละเอียดเพิ่มเติมเกี่ยวกับ AMA ครับ, Azure Monitor Agent overview - Azure Monitor | Microsoft Learn














ในเรื่องของการติดตั้ง AMA นั้น ไม่ได้มีขั้นตอนอะไรที่ยุ่งยากเลยครับ ทั้งนี้ขึ้นอยู่กับ Virtual Machines ของเราอยู่ที่ไหน ยกตัวอย่างเช่น ถ้า Virtual Machines อยู่ใน Microsoft Azure (Azure Virtual Machines) ก็สามารถติดตั้ง AMA ได้จาก Extension ครับ เพราะทาง Microsoft ได้เตรียม AMA สำหรับติดตั้งใน Azure Virtual Machines ไว้เป็น Azure VM Extension เรียบร้อยแล้วครับ รายละเอียดเพิ่มเติมสามารถไปที่ Link นี้ครับ, Manage Azure Monitor Agent - Azure Monitor | Microsoft Learn


สำหรับ Virtual Machines ที่ไม่ได้อยู่ใน Microsoft Azure เช่น อยู่ใน On-Premise จะต้องมีการติดตั้ง Agent ที่ชื่อว่า "Azure Connected Machine Agent" ก่อนจากนั้นค่อยติดตั้ง AMA ครับ โดยตัวของ Azure Connected Machine Agent นั้นจะทำงานร่วมกับ Azure Arc ซึ่งเป็นอีกหนึ่ง Service ที่อยู่ใน Microsoft Azure ครับ













และทั้งหมดนี้เป็นเรื่องราวของ Azure Monitor Agent (AMA) ที่ผมนำมาให้ทุกท่านได้รู้จักกันครับ และอย่างที่ผมได้อธิบายไว้ในข้างต้นของบทความนี้ว่า ยังมีรายละเอียดอีกเยอะครับ และที่สำคัญคือ การวางแผนและออกแบบก่อนที่จะเริ่มใช้งานนะครับ.....