เรียนรู้วิธีใช้ node Microsoft SharePoint ใน n8n ปฏิบัติตามเอกสารทางเทคนิคเพื่อรวม node Microsoft SharePoint เข้ากับ workflow ของคุณ
ใช้ node Microsoft SharePoint เพื่อทำงานใน Microsoft SharePoint โดยอัตโนมัติ และรวม Microsoft SharePoint เข้ากับแอปพลิเคชันอื่นๆ n8n มีการสนับสนุนในตัวสำหรับคุณลักษณะต่างๆ ของ Microsoft SharePoint ซึ่งรวมถึงการดาวน์โหลด การอัปโหลด และการอัปเดตไฟล์ การจัดการรายการในรายการ และการรับรายการและรายการข้อมูล
ในหน้านี้ คุณจะพบรายการการดำเนินการที่ node Microsoft SharePoint รองรับ คำแนะนำในการลงชื่อเข้าใช้และการเลือกไซต์ สิ่งที่เปลี่ยนแปลงในเวอร์ชัน 2 ของ node และลิงก์ไปยังแหล่งข้อมูลเพิ่มเติม
ความพร้อมใช้งานของคุณสมบัติ (Feature availability)
จาก n8n 2.37.0 การเพิ่ม node Microsoft SharePoint ลงใน workflow จะสร้าง node เวอร์ชัน 2 ซึ่งใช้ Microsoft Graph API workflow ที่สร้างด้วยเวอร์ชัน 1 จะยังคงอยู่บนเวอร์ชัน 1 และยังคงทำงานต่อไปโดยไม่มีการเปลี่ยนแปลง โดยใช้ credentials ที่ใช้อยู่แล้ว อ้างถึง สิ่งที่เปลี่ยนแปลงไปจากเวอร์ชัน 1 .
Credentials
เวอร์ชัน 2 ของ node มีสองวิธีในการลงชื่อเข้าใช้ โดยเลือกด้วย Authentication แบบเลื่อนลง:
- Microsoft OAuth2 (Graph) : เข้าสู่ระบบในฐานะบุคคลทั่วไป Microsoft credentials . ป้อนขอบเขตที่ node ต้องการใน credentials Scope สนาม:
Sites.Read.Allอ่านSites.ReadWrite.Allที่จะเขียน รวมopenid offline_accessดังนั้นข้อมูลประจำตัวจึงสามารถรีเฟรช token ได้ ตัวอย่างเช่น ในการดำเนินการทั้งหมดของ node:openid offline_access Sites.ReadWrite.All. หากองค์กรของคุณให้สิทธิ์การเข้าถึงทีละไซต์ ให้ใช้openid offline_access Sites.Selectedแทนและอ้างอิงถึง การเข้าถึงต่อไซต์ . - Microsoft Entra Service Principal (App-Only) : ลงชื่อเข้าใช้ในฐานะแอปสำหรับ workflow แบบอัตโนมัติที่ไม่มีผู้ใช้อยู่ด้วย Microsoft Entra Service Principal credentials . ให้สิทธิ์การลงทะเบียนแอป
Sites.Read.Allการอนุญาตแอปพลิเคชันเพื่ออ่านและSites.ReadWrite.Allเขียนโดยได้รับความยินยอมจากผู้ดูแลระบบ หากต้องการจำกัดแอปไว้เฉพาะบางไซต์ ให้อนุญาตSites.Selectedแทนและ ให้สิทธิ์การเข้าถึงต่อไซต์ .
เวอร์ชัน 1 ของ node ใช้ node เฉพาะ credentials Microsoft SharePoint . เวอร์ชัน 2 ไม่มีให้บริการ: มีการออก token สำหรับ SharePoint REST API รุ่นเก่า และไม่ทำงานกับ Microsoft Graph
การเลือกวิธีการลงชื่อเข้าใช้
วิธีการลงชื่อเข้าใช้ทั้งสองวิธีรองรับทุกการดำเนินการ เลือกตามวิธีการทำงานของ workflow:
| Microsoft OAuth2 (กราฟ) | Microsoft Entra Service Principal (แอปเท่านั้น) | |
|---|---|---|
| ลงชื่อเข้าใช้เป็น | บุคคล | การลงทะเบียนแอป |
| ดีที่สุดสำหรับ | workflow ที่ทำหน้าที่เป็นคุณหรือลองใช้ node | workflow ที่ไม่ต้องดูแล แบ่งปัน หรือใช้งานจริงโดยไม่มีผู้ใช้อยู่ |
| สิ่งที่สามารถเข้าถึงได้ | สิ่งที่ผู้ใช้ที่ลงชื่อเข้าใช้สามารถเข้าถึงได้ ภายในขอบเขตที่คุณอนุญาต | ทุกไซต์ในผู้เช่า เว้นแต่คุณจะใช้ การเข้าถึงต่อไซต์ |
| ยินยอม | ผู้ใช้ที่ลงชื่อเข้าใช้ยินยอมเมื่อลงชื่อเข้าใช้ (ผู้ดูแลระบบอาจต้องอนุญาต) | ผู้ดูแลระบบให้ความยินยอมแก่ผู้ดูแลระบบหนึ่งครั้ง |
| หยุดทำงานเมื่อ | เซสชันของผู้ใช้ถูกเพิกถอน เช่น หลังจากที่ออกจากองค์กรหรือรีเซ็ตรหัสผ่าน | รหัสลับไคลเอ็นต์หรือใบรับรองหมดอายุ |
| คู่มือการตั้งค่า | Microsoft credentials | Microsoft Entra Service Principal credentials |
การดำเนินงาน
- File:
- ดาวน์โหลด: ดาวน์โหลดไฟล์
- อัปเดต: เปลี่ยนชื่อไฟล์ แทนที่เนื้อหา หรือทั้งสองอย่าง
- อัปโหลด: อัปโหลดไฟล์ไปยังไลบรารีเอกสาร
- Item:
- สร้าง: สร้างรายการในรายการที่มีอยู่
- สร้างหรืออัปเดต: สร้างรายการใหม่หรืออัปเดตรายการปัจจุบันหากมีอยู่แล้ว (เพิ่ม)
- ลบ: ลบรายการออกจากรายการ
- รับ: ดึงรายการจากรายการ
- รับหลายรายการ: รับรายการเฉพาะในรายการหรือรายการหลายรายการ
- อัปเดต: อัปเดตรายการในรายการที่มีอยู่
- List:
- รับ: ดึงรายละเอียดของรายการเดียว
- รับมากมาย: ดึงรายการรายการ
การเลือกไซต์
ทุกการดำเนินการเริ่มต้นจากก Site . ตั้งค่าด้วยวิธีใดวิธีหนึ่งจากสามวิธี:
- From List : ค้นหาไซต์ขององค์กรของคุณตามชื่อ การค้นหาไซต์ต้องได้รับอนุญาตในการอ่านทั่วทั้งผู้เช่า (
Sites.Read.AllหรือSites.ReadWrite.All); ไม่สามารถใช้งานได้กับการเข้าถึงแต่ละไซต์ - By URL : วางที่อยู่เว็บไซต์แบบเต็ม เป็นต้น
https://contoso.sharepoint.com/sites/mysite. - By ID : วาง ID ของไซต์ในรูปแบบใดก็ได้ในเอกสาร Microsoft Graph: รหัสคอมโพสิตที่ส่งคืนโดยเครื่องมือเลือกไซต์และกราฟ (
contoso.sharepoint.com,<site-GUID>,<web-GUID>), GUID ของไซต์เปล่า, ชื่อโฮสต์ (ไซต์รูทของผู้เช่า) หรือroot. หากต้องการค้นหารหัสคอมโพสิตของไซต์ ให้ขอตามที่อยู่:GET https://graph.microsoft.com/v1.0/sites/contoso.sharepoint.com:/sites/mysite.
การเข้าถึงต่อไซต์
บางองค์กรไม่อนุญาตให้แอปเข้าถึง SharePoint ทั่วทั้งผู้เช่า แต่พวกเขาใช้ Sites.Selected อนุญาตและให้สิทธิ์แอปเข้าถึงแต่ละไซต์ node รองรับสิ่งนี้อย่างสมบูรณ์: ทุกการดำเนินการและตัวเลือกทำงานได้ ยกเว้นการค้นหาไซต์ซึ่ง Microsoft Graph ไม่รองรับหากไม่มีสิทธิ์ในการอ่านทั่วทั้งผู้เช่า ตั้งค่า Site ฟิลด์ถึง By URL หรือ By ID แทน; ไม่จำเป็นต้องค้นหา
วิธีตั้งค่าการเข้าถึงแต่ละไซต์:
- การลงชื่อเข้าใช้เป็นแอป (Signing in as an app) : ให้สิทธิ์การลงทะเบียนแอป
Sites.Selectedการอนุญาตแอปพลิเคชันโดยได้รับความยินยอมจากผู้ดูแลระบบ จากนั้นให้อนุญาตแอปreadหรือwriteการเข้าถึงในแต่ละไซต์ อ้างถึง ให้สิทธิ์การเข้าถึงต่อไซต์ หรือถึง Provision a SharePoint app registration with the Azure CLI สำหรับการตั้งค่าการคัดลอกและวางรวมถึงรายการสิทธิ์ - การลงชื่อเข้าใช้ในฐานะบุคคล (Signing in as a person) : ตั้งค่า credentials Scope ฟิลด์ถึง
openid offline_access Sites.Selected. การให้สิทธิ์ต่อไซต์แบบเดียวกันนี้ใช้กับการลงทะเบียนแอป และบัญชีที่ลงชื่อเข้าใช้ก็จำเป็นต้องเข้าถึงไซต์ด้วย
สิ่งที่เปลี่ยนแปลงไปจากเวอร์ชัน 1
เวอร์ชัน 2 เป็นการสร้าง node ใหม่บน Microsoft Graph API workflow ที่มีอยู่จะยังคงอยู่ในเวอร์ชันที่สร้างขึ้น ดังนั้นจึงไม่มีอะไรเปลี่ยนแปลงจนกว่าคุณจะเพิ่ม node ใหม่หรือสลับ workflow ใหม่ เมื่อคุณทำ:
- ข้อมูลประจำตัวมีการเปลี่ยนแปลง (The credential changes.) เวอร์ชัน 2 ลงชื่อเข้าใช้ด้วยข้อมูลประจำตัว Microsoft OAuth2 ทั่วไป หรือใหม่ในเวอร์ชัน 2 ซึ่งเป็น credentials Microsoft Entra Service Principal สำหรับ workflow แอปเท่านั้นที่ไม่ต้องดูแล เวอร์ชัน 1 Microsoft SharePoint ไม่มีการนำเสนอข้อมูลประจำตัวในเวอร์ชัน 2: token ของมันกำหนดเป้าหมายไปที่ SharePoint REST API รุ่นเก่าและล้มเหลวกับ Microsoft Graph workflow เวอร์ชัน 1 ใช้ต่อไปไม่เปลี่ยนแปลง
- การอัปเดตรายการใช้เส้นทางที่จัดทำเป็นเอกสารของ Microsoft (Item updates use Microsoft's documented route.) อัปเดตรายการเวอร์ชัน 1 ผ่านเส้นทางที่ใช้งานได้ แต่ไม่ได้อยู่ในเอกสารของ Microsoft เวอร์ชัน 2 ส่งการอัปเดตไปยังตำแหน่งข้อมูล Microsoft Graph ที่จัดทำเอกสารไว้ และส่งคืน output เหมือนเดิม ดังนั้น workflow ของคุณจะไม่สังเกตเห็นความแตกต่าง เวอร์ชัน 2 จะเข้มงวดยิ่งขึ้นเมื่อคอลัมน์ที่ตรงกันระบุมากกว่าหนึ่งรายการ: ทั้งสองรายการ Update และ Create or Update หยุดด้วยข้อผิดพลาดที่ชัดเจน แทนที่จะสร้างสำเนาเป็นเวอร์ชัน 1 Create or Update ทำ
- การดาวน์โหลดไฟล์จะดึงลิงค์ดาวน์โหลดก่อน (File downloads fetch a download link first.) เวอร์ชัน 2 จะขอข้อมูลเมตาของไฟล์จาก Microsoft Graph และลิงก์ดาวน์โหลดที่มีอายุสั้นและได้รับอนุญาตล่วงหน้า จากนั้นจึงดึงเนื้อหาจากลิงก์นั้น n8n จะไม่แนบรายละเอียดการลงชื่อเข้าใช้ของคุณไปกับคำขอลิงก์ เนื่องจากลิงก์ได้รับการอนุมัติแล้ว ไฟล์ที่ดาวน์โหลดจะเหมือนกันกับเวอร์ชัน 1 รวมถึงชื่อด้วย
ปัญหาทั่วไป
- การค้นหาไซต์ล้มเหลวด้วยการอนุญาตต่อไซต์ (Site search fails with per-site permissions.) Microsoft Graph ไม่สามารถแสดงรายการไซต์สำหรับข้อมูลประจำตัวที่มีการเข้าถึงสำหรับแต่ละไซต์เท่านั้น สลับ Site ฟิลด์ถึง By URL หรือ By ID โหมดหรือให้สิทธิ์ในการอ่านทั่วทั้งผู้เช่า (
Sites.Read.AllหรือSites.ReadWrite.All) หากคุณต้องการค้นหา - ข้อผิดพลาด 403 ตั้งชื่อสิทธิ์ที่ขาดหายไป (A 403 error names a missing permission.) ข้อผิดพลาดในการอนุญาตของ node ตั้งชื่อการอนุญาต Microsoft Graph ที่การดำเนินการต้องการ เป็นต้น
Sites.ReadWrite.All (or Sites.Selected granted with write access for this site). ให้สิทธิ์โดยได้รับความยินยอมจากผู้ดูแลระบบในการอนุญาตแอปพลิเคชัน จากนั้นลองอีกครั้ง ด้วยการเข้าถึงแบบรายไซต์ ให้ตรวจสอบด้วยว่าแอปได้รับอนุญาตให้เข้าถึงไซต์ที่คุณกำลังใช้อยู่ - การทดสอบข้อมูลประจำตัวของ Service Principal ผ่านไป แต่การดำเนินการล้มเหลว (The Service Principal credential test passes but operations fail.) ตั้งแต่ n8n 2.40.0 การทดสอบการเชื่อมต่อจะตรวจสอบว่าการลงทะเบียนแอปสามารถลงชื่อเข้าใช้ได้เท่านั้น ไม่ใช่สิทธิ์ที่แอปนั้นเก็บไว้ ตรวจสอบว่าสิทธิ์ของแอปพลิเคชัน SharePoint ได้รับความยินยอมจากผู้ดูแลระบบ และด้วยการเข้าถึงแต่ละไซต์ ว่าแอปได้รับสิทธิ์ในการเข้าถึงไซต์หรือไม่ อ้างถึง Microsoft Entra Service Principal credentials.
- การเชื่อมต่อข้อมูลประจำตัวล้มเหลวด้วยรหัสข้อผิดพลาด AADSTS (Connecting a credential fails with an AADSTS error code.) Microsoft ปฏิเสธการแลกเปลี่ยนการลงชื่อเข้าใช้หรือ token เช่น AADSTS7000215 (รหัสลับไคลเอ็นต์ไม่ถูกต้อง), AADSTS7000222 (รหัสลับไคลเอ็นต์หมดอายุ) หรือ AADSTS700027 (การยืนยันใบรับรองที่ถูกปฏิเสธ) อ้างถึง ปัญหาทั่วไปในเอกสาร credentials Microsoft Entra Service Principal .
- การอัปโหลดเกิน 250 MB ล้มเหลว (Uploads over 250 MB fail.) File: Upload และ File: Update ส่งเนื้อหาในคำขอเดียวซึ่งจำกัดไว้ที่ 250 MB ยังไม่รองรับการอัปโหลดไฟล์ขนาดใหญ่เป็นชิ้นๆ
- การกรองรายการขนาดใหญ่ล้มเหลว (Filtering a large list fails.) SharePoint กรองเฉพาะรายการที่มีมากกว่า 5,000 รายการในคอลัมน์ที่จัดทำดัชนี เพิ่มดัชนีใน SharePoint ( การตั้งค่ารายการ (List settings) > คอลัมน์ที่จัดทำดัชนี (Indexed columns) ) หรือกรองคอลัมน์ที่จัดทำดัชนีไว้
- การสร้างหรือการอัปเดตรายการล้มเหลวโดยมีข้อผิดพลาดข้อจำกัดเฉพาะ คอลัมน์ในรายการบังคับใช้ค่าที่ไม่ซ้ำ และค่าที่คุณเขียนมีอยู่แล้วในรายการอื่น เปลี่ยนค่าหรือผ่อนคลาย บังคับใช้ค่าที่ไม่ซ้ำ (Enforce unique values) สำหรับคอลัมน์ใน SharePoint
เทมเพลตและตัวอย่าง
เรียกดูเทมเพลตการรวมเอกสาร node Microsoft SharePoint หรือ ค้นหาเทมเพลตทั้งหมด
ทรัพยากรที่เกี่ยวข้อง
node เวอร์ชัน 2 ใช้ Microsoft Graph API อ้างถึง เอกสารกราฟของ Microsoft สำหรับ SharePoint สำหรับข้อมูลเพิ่มเติมเกี่ยวกับบริการ เวอร์ชัน 1 ใช้ API ส่วนที่เหลือของ SharePoint .

