L-API privata twieġeb fil-browser tiegħek fil-mument li l-laptop jingħaqad mal-VPN, allura l-integrazzjoni għandha taħdem. Ma taħdimx, għax il-kodiċi li jagħmel is-callout jaħdem x'imkien ieħor għal kollox. Apex jaħdem fuq is-servers tal-applikazzjoni ta' Salesforce, u attività fuq in-naħa tas-server f'Marketing Cloud taħdem fir-runtime ta' dak il-prodott. Lanqas waħda minnhom ma tiret it-tunnel tal-laptop tiegħek. Mexxi dan bħala proċedura qasira: identifika s-sejjieħ, agħżel daħla li dak is-sejjieħ jista' jilħaq, qabbad il-mogħdija minn tarf għall-ieħor, imbagħad ivverifika mir-runtime stess.

Ikteb il-karta tas-sejjieħ qabel kull bidla fin-netwerk

Imla ħames oqsma u rrifjuta li taqta' xi waħda minnhom bil-preżunzjoni. Il-prodott tal-eżekuzzjoni u l-kuntest jiddeċiedu kollox wara, allura ibda minn hemm u mhux mill-firewall tas-server.

FieldWhat it must answer
RuntimeWhich product and execution context issues the request?
EndpointWhich hostname must that runtime resolve, and to what?
PathWhich supported public entry or private connection carries it?
IdentityWhich credential and which operation is the API asked to authorize?
FailureHow do responses return, and what happens when the path is down?

Tab tal-browser u callout Apex huma żewġ klijenti differenti, u browser li jaħdem jipprova biss li teżisti mogħdija mill-iskrivanija tiegħek. Jekk il-qasam tar-runtime jgħid Apex, il-mistoqsija rilevanti hija minn liema indirizzi joħroġ Salesforce, mhux liema indirizzi għandu l-laptop tiegħek. Għalhekk tunnel li jġiegħel l-API tgħabbi fil-browser jista' jħalli l-integrazzjoni tfalli bl-istess timeout ta' qabel. Il-karta tas-sejjieħ teżisti biex twaqqaf dik l-iżball qabel ma xi ħadd jeditja firewall.

Agħżel id-daħla li s-sejjieħ jista' tassew juża

Iż-żewġ disinji huma leġittimi, u jsolvu problemi differenti. L-ewwel hija daħla pubblika maħsuba: gateway tal-API bl-HTTPS jew servizz tal-integrazzjoni li jawtentika lis-sejjieħ, japplika permessi dejqa u jżomm konnessjoni protetta mal-backend privat. Dan mhuwiex l-istess bħal tesponi kull servizz tal-backend jew tibgħat port tal-amministrazzjoni lejn l-internet.

It-tieni hija konnessjoni privata kwalifikata. Id-dokumentazzjoni ta' Private Connect il-barrani ta' Salesforce tiddeskrivi kif is-callouts appoġġjati jiġu rrotati permezz ta' Outbound Network Connection marbut ma' kredenzjali bl-isem, fuq l-arranġament AWS PrivateLink definit tiegħu. Il-karatteristika għandha restrizzjonijiet tal-edizzjoni, tal-liċenzja u tal-prodott, allura ikkonferma li l-organizzazzjoni tikkwalifika qabel ma tiddisinja madwarha.

Lanqas waħda mid-disinji mhu klijent OpenVPN installat ġewwa Salesforce, u l-allegazzjoni eqdem li kull integrazzjoni trid tilħaq backend pubbliku hija wiesgħa wisq fejn taqbel konnessjoni privata appoġġjata. Agħżel dik li tappoġġja r-runtime, imbagħad kompli l-mogħdija sal-API vera: endpoint AWS ma jafx ir-riżors lokali tiegħek u ma jirtx ir-rotta tal-laptop tiegħek. DNS, routing tal-backend, politika tal-aċċess u traffiku tar-risposta kollha jridu jsegwu l-arkitettura li għażilt. Mogħdija privata mibnija nofs triq tfalli b'mod li jidher eżattament bħal problema ta' awtentikazzjoni.

Qabbad il-mogħdija privata minn tarf għall-ieħor

Aħdem 'il barra mill-API u waqaf fl-ewwel vojt. Ikkonferma li l-backend iwieġeb lokalment, imbagħad li l-endpoint privat jilħaq, u mbagħad li l-kredenzjali bl-isem u l-konnessjoni barranija tiegħu jimmirjaw dak l-endpoint.

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

L-ewwel kmand jipprova li l-backend huwa f'saħħtu minn ġewwa n-netwerk privat, it-tieni juri għal xiex jiġi riżolt l-isem, u t-tielet iwettaq callout mir-runtime vera ta' Salesforce. 200 mill-ewwel u falliment mit-tielet jiżolaw il-vojt fil-mogħdija jew fil-kredenzjali, mhux fis-servizz.

Żomm l-ambitu tal-identità preċiż waqt li tqabbad. Kredenzjali bl-isem ma ssewwix waħedha endpoint li ma jintlaħaqx, għax il-kredenzjali u l-konnessjoni privata huma settings relatati b'xogħlijiet separati. Lista tal-IP permessi tnaqqas id-dħul fin-netwerk u mhijiex kredenzjali tal-API, allura żomm il-validazzjoni normali tat-TLS u l-proċess ta' awtentikazzjoni u rotazzjoni tas-servizz stess. Jekk test jgħaddi biss wara li tiddiżattiva l-verifika taċ-ċertifikat, sibt problema tal-isem tal-host u mhux tal-mogħdija, u ċ-ċertifikat xorta jrid jaqbel.

Ivverifika mir-runtime, imbagħad irreġistra r-rollback

Aċċetta talba permessa u bla ħsara mir-runtime tal-integrazzjoni, mhux mill-magna tiegħek. Irreġistra s-sors osservat mis-servizz li jirċievi, il-prinċipal awtentikat, ir-riżultat, u talba waħda miċħuda apposta li trid tfalli.

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

Mexxi l-istess żewġ probes min-netwerk tal-backend stess biex is-sors osservat jista' jitqabbel ma' dak li pproduċa r-runtime. 200 segwit minn 401 jew 403 hija l-forma li trid; żewġ 200 ifissru li l-mogħdija tar-rifjut ma hijiex tassew infurzata.

Ikteb ir-rollback qabel ma jkollok bżonnu: liema entrata tal-lista permessa, kredenzjali bl-isem jew konnessjoni barranija biddilt, min jippossjediha u kif terġa' tiġi restawrata l-valur preċedenti. Imbagħad agħlaq iċ-ċirku billi ssemmi s-sejjieħ fil-cloud u l-mogħdija sħiħa tas-servizz fil-biljett, sabiex ħadd ma jerġa' jiftaħ l-istess kwistjoni bħala problema tal-VPN.

Artikli relatati