Apex дуудлагууд VPN-ээс биш, Salesforce-ээс гардаг
Зөөврийн компьютерын VPN таны хөтөчдөд зам өгдөг, Apex эсвэл Marketing Cloud-д биш. Бодит дуудагчийг нийтийн гарц эсвэл мэргэшсэн хувийн холболттой тааруулаарай.
Зөөврийн компьютер VPN-д нэгдэх тэр мөчид хувийн API таны хөтөчд хариулдаг тул интеграци ажиллах ёстой. Гэтэл ажиллахгүй байна, учир нь дуудлага хийдэг код огт өөр газар ажилладаг. Apex нь Salesforce-ийн аппликейшн серверүүд дээр, Marketing Cloud-ийн сервер талын үйл ажиллагаа нь тухайн бүтээгдэхүүний ажиллагааны орчинд ажилладаг. Аль нь ч таны зөөврийн компьютерын туннелийг өвлөдөггүй. Үүнийг богино журам болгон гүйцэтгээрэй: дуудагчийг тодорхойл, тухайн дуудагч хүрч чадах орох хаалгыг сонго, замыг эхнээс нь дуустал холбо, дараа нь ажиллагааны орчноос өөрөөс нь шалга.
Сүлжээнд ямар ч өөрчлөлт хийхээс өмнө дуудагчийн картыг бич
Таван талбарыг бөглөж, аль нэгийг нь таамаглахаас татгалз. Гүйцэтгэлийн бүтээгдэхүүн ба контекст цаашдын бүхнийг шийддэг тул серверийн галт ханынаас биш, тэндээс эхэл.
| Field | What it must answer |
|---|---|
| Runtime | Which product and execution context issues the request? |
| Endpoint | Which hostname must that runtime resolve, and to what? |
| Path | Which supported public entry or private connection carries it? |
| Identity | Which credential and which operation is the API asked to authorize? |
| Failure | How do responses return, and what happens when the path is down? |
Хөтчийн таб ба Apex дуудлага нь хоёр өөр клиент бөгөөд ажиллаж буй хөтөч нь таны ширээнээс зам байгааг л баталдаг. Хэрэв ажиллагааны орчны талбар Apex гэвэл хамааралтай асуулт нь Salesforce ямар хаягуудаас гардаг вэ, таны зөөврийн компьютер ямар хаягтай вэ гэдэг биш. Тиймээс API-г хөтөчд ачаалдаг туннель нь интеграцийг өмнөхтэй ижил хугацааны хязгаарт бүтэлгүйтэхэд хүргэж болно. Хэн нэгэн галт ханыг засахаас өмнө тэр алдааг зогсоохын тулд дуудагчийн карт байдаг.
Дуудагч үнэхээр ашиглаж чадах орох хаалгыг сонго
Хоёр загвар хоёулаа хууль ёсны бөгөөд өөр өөр асуудлыг шийддэг. Эхнийх нь зориудын нийтийн орох хаалга: дуудагчийг баталгаажуулж, нарийн зөвшөөрөл хэрэглэж, хувийн backend-тэй хамгаалагдсан холболт хадгалдаг HTTPS API гарц эсвэл интеграцийн үйлчилгээ. Энэ нь backend үйлчилгээ бүрийг ил гаргах эсвэл удирдлагын портыг интернет рүү дамжуулахтай ижил зүйл биш.
Хоёр дахь нь мэргэшсэн хувийн холболт. Salesforce-ийн гадагш Private Connect баримт бичиг нь дэмжигдсэн дуудлагуудыг нэрлэсэн итгэмжлэлд холбогдсон Outbound Network Connection-ээр, түүний тодорхойлсон AWS PrivateLink зохион байгуулалтаар чиглүүлэхийг тайлбарладаг. Энэ боломж нь хэвлэл, лиценз, бүтээгдэхүүний хязгаарлалттай тул түүнийг тойрон зохион бүтээхээс өмнө байгууллага шаардлага хангаж байгаа эсэхийг батал.
Аль ч загвар нь Salesforce дотор суулгасан OpenVPN клиент биш бөгөөд интеграци бүр нийтийн backend-д хүрэх ёстой гэсэн хуучин мэдэгдэл нь дэмжигдсэн хувийн холболт тохирох газарт хэт өргөн юм. Ажиллагааны орчин дэмждэгийг сонгоод, дараа нь бодит API хүртэлх замыг гүйцээ: AWS төгсгөлийн цэг таны локал нөөцийг мэдэхгүй бөгөөд таны зөөврийн компьютерын чиглэлийг өвлөдөггүй. DNS, backend чиглүүлэлт, хандалтын бодлого, хариу урсгал бүгд таны сонгосон архитектурыг дагах ёстой. Хагас барьсан хувийн зам нь баталгаажуулалтын асуудалтай яг адил харагдах байдлаар бүтэлгүйтдэг.
Хувийн замыг эхнээс нь дуустал холбо
API-аас гадагш ажиллаж, эхний цоорхойд зогс. Backend локалд хариулж байгаа, дараа нь хувийн төгсгөлийн цэг түүнд хүрч байгаа, дараа нь нэрлэсэн итгэмжлэл ба түүний гадагш холболт тэр цэгийг зорьж байгааг батал.
curl -sS -m 5 -o /dev/null -w '%{http_code}\n' http://10.40.8.20:8080/health
dig +short api.partner.example
sf apex run --file scripts/apex/callout-check.apex --target-org integrationЭхний команд нь backend хувийн сүлжээний дотроос эрүүл байгааг баталж, хоёр дахь нь нэр юу болж шийдэгдэхийг харуулж, гурав дахь нь бодит Salesforce ажиллагааны орчноос дуудлага гүйцэтгэдэг. Эхнийхээс 200, гурав дахьд бүтэлгүйтэл нь цоорхойг үйлчилгээнд биш, зам эсвэл итгэмжлэлд тусгаарладаг.
Холбох үед таних хүрээг нарийн баримтал. Нэрлэсэн итгэмжлэл нь хүрэх боломжгүй төгсгөлийн цэгийг дангаараа засдаггүй, учир нь итгэмжлэл ба хувийн холболт нь тусдаа ажилтай холбоотой тохиргоо юм. IP зөвшөөрлийн жагсаалт сүлжээний хүлээн авалтыг нарийсгадаг бөгөөд API итгэмжлэл биш тул ердийн TLS баталгаажуулалт болон үйлчилгээний өөрийн баталгаажуулалт, эргэлтийн процессыг хадгал. Хэрэв туршилт зөвхөн гэрчилгээний шалгалтыг унтраасны дараа амжилттай болбол та зам биш, хостын нэрийн асуудал олсон бөгөөд гэрчилгээ одоо ч тохирох ёстой.
Ажиллагааны орчноос шалгаад, дараа нь буцаалтыг бүртгэ
Өөрийн машинаас биш, интеграцийн ажиллагааны орчноос хор хөнөөлгүй зөвшөөрөгдсөн хүсэлт хүлээн ав. Хүлээн авагч үйлчилгээний ажигласан эх үүсвэр, баталгаажсан субъект, үр дүн, мөн заавал бүтэлгүйтэх ёстой санаатайгаар татгалзсан нэг хүсэлтийг бүртгэ.
curl -sS -o /dev/null -w '%{http_code} %{remote_ip}\n' https://api.partner.example/v1/ping
curl -sS -o /dev/null -w '%{http_code}\n' -H 'Authorization: Bearer invalid' https://api.partner.example/v1/pingМөн тэр хоёр шалгалтыг backend-ийн өөрийн сүлжээнээс ажиллуулж, ажигласан эх үүсвэрийг ажиллагааны орчин үүсгэсэнтэй харьцуулах боломжтой болго. 200-ын дараа 401 эсвэл 403 ирэх нь хүссэн хэлбэр; хоёр 200 гэдэг нь татгалзах зам үнэхээр хэрэгжихгүй байна гэсэн үг.
Хэрэгтэй болохоос өмнө буцаалтыг бич: аль зөвшөөрлийн жагсаалтын бичлэг, нэрлэсэн итгэмжлэл эсвэл гадагш холболтыг өөрчилсөн, хэн эзэмшдэг, өмнөх утгыг хэрхэн сэргээх. Дараа нь тасалбарт үүлэн дуудагч ба үйлчилгээний бүрэн замыг нэрлэж тойргийг хаа, ингэснээр хэн ч мөн асуудлыг дахин VPN-ийн асуудал гэж нээхгүй.