Salesforce credentials#
คุณสามารถใช้ credentials นี้เพื่อเชื่อมต่อกับ node เหล่านี้:
Supported authentication methods#
- JWT
- OAuth2
Related resources#
ดูรายละเอียดเพิ่มเติมเกี่ยวกับ Salesforce ได้ที่ Salesforce's developer documentation
Using JWT#
ในการตั้งค่า credentials นี้ คุณต้องมี Salesforce account และ:
- Environment Type (Production หรือ Sandbox)
- Client ID: ได้จากการสร้าง connected app
- Username ของ Salesforce
- Private Key สำหรับ self-signed digital certificate
ขั้นตอนการตั้งค่า:
- ใน n8n ให้เลือก Environment Type ที่ตรงกับ environment ของคุณ (Production หรือ Sandbox)
- กรอก Username ของ Salesforce
- ล็อกอินเข้า Salesforce ของคุณ
- คุณต้องมี private key และ certificate ที่ออกโดย certification authority จะใช้ key/cert ของคุณเอง หรือใช้ OpenSSL สร้าง key และ self-signed digital certificate ก็ได้ ดูวิธีที่ Create a Private Key and Self-Signed Digital Certificate documentation
- ที่ Salesforce ไปที่ Setup แล้วค้นหา
App Manager
จากนั้นเลือก App Manager - ในหน้า App Manager ให้เลือก New Connected App
- กรอก Basic Info ที่จำเป็น เช่น Name และ Contact Email address ดูรายละเอียดที่ Configure Basic Connected App Settings
- ติ๊กถูกที่ Enable OAuth Settings
- สำหรับ Callback URL ให้ใส่
http://localhost:1717/OauthRedirect
- ติ๊กถูกที่ Use digital signatures
- เลือก Choose File แล้วอัปโหลดไฟล์ certificate เช่น
server.crt
- เพิ่ม OAuth scopes ดังนี้:
- Full access (full)
- Perform requests at any time (refresh_token, offline_access)
- กด Save แล้ว Continue จะเข้าสู่หน้า Manage Connected Apps ของแอปที่เพิ่งสร้าง
- ในส่วน API (Enable OAuth Settings) ให้เลือก Manage Consumer Details
- คัดลอก Consumer Key ไปใส่ใน n8n ที่ Client ID
- ใส่เนื้อหาในไฟล์ private key ลงใน n8n ที่ Private Key
- ใช้ multi-line editor ใน n8n
- ใส่ private key ในรูปแบบ PEM key มาตรฐาน:
1 2 3
-----BEGIN PRIVATE KEY----- KEY DATA GOES HERE -----END PRIVATE KEY-----
ขั้นตอนข้างต้นคือสิ่งที่ต้องทำในฝั่ง n8n Salesforce แนะนำให้ตั้งค่า refresh token policies, session policies, และ OAuth policies เพิ่มเติม:
- ที่ Salesforce เลือก Back to Manage Connected Apps
- เลือก Manage
- เลือก Edit Policies
- ตรวจสอบ Refresh Token Policy Salesforce แนะนำให้ใช้ expire refresh token after 90 days
- ในส่วน Session Policies Salesforce แนะนำให้ตั้ง Timeout Value เป็น 15 นาที
- ในส่วน OAuth Policies เลือก Admin approved users are pre-authorized for permitted users ที่ Permitted Users แล้วกด OK
- กด Save
- เลือก Manage Profiles แล้วเลือก profile ที่ pre-authorized ให้ใช้ connected app นี้ แล้วกด Save
- เลือก Manage Permission Sets เพื่อเลือก permission sets (สร้าง permission sets ถ้าจำเป็น)
ดูรายละเอียดเพิ่มเติมที่ Create a Connected App in Your Org
Using OAuth2#
ในการตั้งค่า credentials นี้ คุณต้องมี Salesforce account
หมายเหตุสำหรับผู้ใช้ n8n Cloud
ผู้ใช้ Cloud ไม่จำเป็นต้องให้รายละเอียดการเชื่อมต่อ เลือก Connect my account เพื่อเชื่อมต่อผ่านเบราว์เซอร์ของคุณ
สำหรับผู้ใช้ Cloud และ hosted ให้เลือก Environment Type ระหว่าง Production และ Sandbox
ถ้าคุณ self-hosting n8n คุณต้องตั้งค่า OAuth2 เองโดยสร้าง connected app:
- ใน n8n ให้เลือก Environment Type ที่ตรงกับ environment ของคุณ (Production หรือ Sandbox)
- กรอก Username ของ Salesforce
- ล็อกอินเข้า Salesforce ของคุณ
- ที่ Salesforce ไปที่ Setup แล้วค้นหา
App Manager
จากนั้นเลือก App Manager - ในหน้า App Manager ให้เลือก New Connected App
- กรอก Basic Info ที่จำเป็น เช่น Name และ Contact Email address ดูรายละเอียดที่ Configure Basic Connected App Settings
- ติ๊กถูกที่ Enable OAuth Settings
- สำหรับ Callback URL ให้ใส่
http://localhost:1717/OauthRedirect
- เพิ่ม OAuth scopes ดังนี้:
- Full access (full)
- Perform requests at any time (refresh_token, offline_access)
- ตรวจสอบให้แน่ใจว่าไม่ได้ติ๊กถูกที่:
- Require Proof Key for Code Exchange (PKCE) Extension for Supported Authorization Flows
- Require Secret for Web Server Flow
- Require Secret for Refresh Token Flow
- กด Save แล้ว Continue จะเข้าสู่หน้า Manage Connected Apps ของแอปที่เพิ่งสร้าง
- ในส่วน API (Enable OAuth Settings) ให้เลือก Manage Consumer Details
- คัดลอก Consumer Key ไปใส่ใน n8n ที่ Client ID
- คัดลอก Consumer Secret ไปใส่ใน n8n ที่ Client Secret
ขั้นตอนข้างต้นคือสิ่งที่ต้องทำในฝั่ง n8n Salesforce แนะนำให้ตั้งค่า refresh token policies และ session policies เพิ่มเติม:
- ที่ Salesforce เลือก Back to Manage Connected Apps
- เลือก Manage
- เลือก Edit Policies
- ตรวจสอบ Refresh Token Policy Salesforce แนะนำให้ใช้ expire refresh token after 90 days
- ในส่วน Session Policies Salesforce แนะนำให้ตั้ง Timeout Value เป็น 15 นาที
ดูรายละเอียดเพิ่มเติมที่ Create a Connected App in Your Org