นําแนวทางปฏิบัติที่ดีที่สุดไปใช้กับ Microsoft Graph

เสร็จสมบูรณ์เมื่อ

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

ตรวจ สอบ

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

  • ส่วนหัวของคําขอการให้สิทธิ์ HTTP เป็นโทเค็น ของผู้ถือ
  • คอนสตรักเตอร์ของไคลเอ็นต์กราฟ เมื่อใช้ไลบรารีไคลเอ็นต์ของ Microsoft Graph

ใช้ API ไลบรารีการรับรองความถูกต้อง Microsoft MSAL เพื่อรับโทเค็นการเข้าถึง Microsoft Graph

ใช้แนวทางปฏิบัติที่ดีที่สุดต่อไปนี้เพื่อขอความยินยอมและการอนุญาตในแอปของคุณ:

  • ใช้สิทธิ์การใช้งานน้อยที่สุด ร้องขอสิทธิ์ที่จําเป็นเท่านั้น และเฉพาะเมื่อคุณต้องการเท่านั้น สําหรับ API แอปพลิเคชันของคุณเรียกใช้ ตรวจสอบส่วนสิทธิ์ในหัวข้อวิธีการ ตัวอย่างเช่น ดู การสร้าง ผู้ใช้ และเลือกสิทธิ์ที่มีสิทธิ์ใช้งานน้อยที่สุด

  • ใช้ชนิดสิทธิ์ที่ถูกต้องตามสถานการณ์ ถ้าคุณกําลังสร้างแอปพลิเคชันแบบโต้ตอบที่มีผู้ใช้ที่ลงชื่อเข้าใช้ อยู่ แอปพลิเคชันของคุณควรใช้ สิทธิ์ ที่ได้รับมอบสิทธิ์ อย่างไรก็ตาม ถ้าแอปพลิเคชันของคุณทํางานโดยไม่มีผู้ใช้ที่ลงชื่อเข้าใช้ เช่น บริการเบื้องหลังหรือ daemon แอปพลิเคชันของคุณควรใช้สิทธิ์แอปพลิเคชัน

    ความระมัดระวัง

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

  • พิจารณาประสบการณ์การใช้งานของผู้ใช้ปลายทางและผู้ดูแลระบบ ส่งผลโดยตรงต่อประสบการณ์ของผู้ใช้ปลายทางและผู้ดูแลระบบ เช่น:

  • พิจารณาแอปพลิเคชันแบบหลายผู้เช่า คาดหวังว่าลูกค้าจะมีแอปพลิเคชันต่าง ๆ และการควบคุมความยินยอมในสถานะที่แตกต่างกัน เช่น:

    • ผู้ดูแลระบบผู้เช่าสามารถปิดใช้งานความสามารถสําหรับผู้ใช้ปลายทางในการยินยอมให้แอปพลิเคชัน ในกรณีนี้ ผู้ดูแลระบบจําเป็นต้องยินยอมในนามของผู้ใช้

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

จัดการการตอบสนองอย่างมีประสิทธิภาพ

แอปพลิเคชันของคุณควรเตรียมพร้อมสําหรับการจัดการคําตอบประเภทต่างๆ ทั้งนี้ขึ้นอยู่กับคําขอที่คุณทํากับ Microsoft Graph ต่อไปนี้เป็นแนวทางปฏิบัติที่สําคัญที่สุดบางประการที่ต้องทําตามเพื่อให้แน่ใจว่าแอปพลิเคชันของคุณมีลักษณะการทํางานอย่างน่าเชื่อถือและคาดการณ์ได้สําหรับผู้ใช้ปลายทางของคุณ เช่น:

  • การแบ่งหน้า : เมื่อสอบถามคอลเลกชันทรัพยากร คุณควรคาดหวังว่า Microsoft Graph จะส่งกลับผลลัพธ์ที่ตั้งค่าไว้ในหลายหน้า เนื่องจากขีดจํากัดขนาดหน้าฝั่งเซิร์ฟเวอร์ แอปพลิเคชันของคุณควร จัดการกับความเป็นไปได้ที่การตอบกลับจะถูกจัดหน้าในลักษณะที่เป็นหน้า และใช้คุณสมบัติ @odata.nextLink เพื่อรับชุดผลลัพธ์ที่มีหน้าถัดไปจนกระทั่งหน้าทั้งหมดของชุดผลลัพธ์ถูกอ่าน หน้าสุดท้ายไม่มีคุณสมบัติ @odata.nextLink สําหรับข้อมูลเพิ่มเติม โปรดเยี่ยมชม การแบ่งหน้า

  • การแจงนับที่พัฒนาได้: การเพิ่มสมาชิกไปยังการแจงนับที่มีอยู่สามารถแบ่งแอปพลิเคชันโดยใช้ enum เหล่านี้อยู่แล้ว Enum ที่สามารถพัฒนาได้คือกลไกที่ Microsoft Graph API ใช้เพื่อเพิ่มสมาชิกใหม่ๆ ไปยังค่าจาระเหน็บที่มีอยู่โดยไม่ทําให้เกิดการเปลี่ยนแปลงอย่างสิ้นเชิงสําหรับแอปพลิเคชัน ตามค่าเริ่มต้น การดําเนินการ GET จะส่งกลับเฉพาะสมาชิกที่รู้จักสําหรับคุณสมบัติของชนิด enum ที่เปลี่ยนแปลงได้และแอปพลิเคชันของคุณต้องการจัดการเฉพาะสมาชิกที่รู้จักเท่านั้น หากคุณออกแบบแอปพลิเคชันเพื่อจัดการสมาชิกที่ไม่รู้จักด้วยคุณสามารถเลือกรับสมาชิกเหล่านั้นโดยใช้ HTTP Prefer ส่วนหัวของคําขอได้

จัดเก็บข้อมูลภายในเครื่อง

แอปพลิเคชันของคุณควรเรียกใช้ Microsoft Graph เพื่อดึงข้อมูลในเวลาจริงตามที่จําเป็น คุณควรแคชหรือจัดเก็บข้อมูลภายในเครื่องที่จําเป็นสําหรับสถานการณ์เฉพาะเท่านั้น หากกรณีการใช้งานนั้นครอบคลุมโดยข้อกําหนดการใช้งานและนโยบายความเป็นส่วนตัวของคุณ และไม่ละเมิด ข้อกําหนดการใช้งานของ Microsoft APIแอปพลิเคชันของคุณควรใช้นโยบายการเก็บข้อมูลและการลบที่เหมาะสม