Du koplar den berbare datamaskinen til VNet via ein VPN, opnar URL-en til Cosmos DB-kontoen, og førespurnaden går framleis ut over det offentlege internettet. Tunnelen gjorde jobben sin. Det han ikkje gjorde, var å opprette eit privat endepunkt, publisere den private DNS-posten eller slå av offentleg tilgang, fordi det er tre separate endringar på kontoen og ikkje eigenskapar ved nettverkstilkoplinga di. Dette dømet brukar Azure Cosmos DB for NoSQL, eit privat endepunkt i eit VNet og ein berbar datamaskin kopla til det VNet-et via VPN, og det held adressa til applikasjonen uendra.

Myten: å vere på VPN gjer databasen privat

Å vere på VNet betyr berre at pakkane dine kan nå private adresser i det VNet-et. Det seier ingenting om kvar kontonamnet blir løyst opp, og det seier ingenting om kontoen framleis godtek offentleg trafikk.

Eit privat endepunkt er ein separat ressurs med si eiga adresse, sitt eige godkjenningstrinn og si eiga DNS-kabling. Inntil det finst og er godkjent, blir namnet løyst opp til det offentlege endepunktet, og trafikken din går dit uansett tunnel.

Kva som faktisk får namnet til å bli løyst opp privat

Behald SDK-ens vanlege kontoendepunkt, noko som https://ACCOUNT.documents.azure.com. Privat DNS bør løyse opp det namnet gjennom Private Link-kjeda til dei private adressene til endepunktet. Ikkje erstatt det med ein numerisk URL og slå ikkje av sertifikatkontrollar, fordi det byter eit DNS-problem mot eit tryggleiksproblem.

Example choiceValue
Cosmos APINoSQL
Private endpoint subresourceSql
Private DNS zoneprivatelink.documents.azure.com
SDK connection modeGateway

Desse verdiane er spesifikke for NoSQL-API-en. Andre Cosmos-API-ar er ikkje utskiftbare oppføringar i same døme, og kopiering av underressursnamnet frå ein annan API gir eit endepunkt som aldri blir løyst opp.

Opprett og godkjenn endepunktet gjennom den autoriserte Azure-arbeidsflyten, og bruk deretter integrasjonen med private DNS-sonegrupper. Den berbare datamaskinen treng ein resolver som kan svare for den sona, anten direkte eller gjennom godkjend vidaresending, og ei VPN-klientrute til kvar relevante endepunktadresse.

Eit privat endepunkt kan ha meir enn éi adresse, inkludert globale og regionale oppføringar. Vedlikehald DNS-integrasjonen når regionane til kontoen endrar seg, i staden for å feste éi adresse i ei hosts-fil, og hugs at eit svar frå ein urelatert offentleg resolver ikkje beviser noko om den private vegen. Viss du vidaresender DNS gjennom ein hub, må du stadfeste at vidaresendaren svarar før du feilsøkjer klienten. Ein utdatert vidaresendar returnerer det offentlege svaret, som ser nøyaktig ut som eit manglande endepunkt.

Gateway-modus og Direct-modus er ikkje utskiftbare

Gateway-modus sender tenesteførespurnader over HTTPS på TCP 443. Det er derfor ein brannmurpolicy berre for 443 fungerer for han, og derfor vel dette dømet han med vilje.

Direct-modus over Private Link har andre tilkoplingskrav, inkludert eit breiare TCP-portområde som kontodokumentasjonen listar opp. Ein policy skriven for Gateway-modus må ikkje gjenbrukast i det stille for ein Direct-modus-klient, elles koplar SDK-en til og heng deretter på den første dataoperasjonen.

Vel éin modus, skriv han ned saman med kontoen, og få nettverkspolicyen til å samsvare. Team som byter modus under feilsøking, endar vanlegvis opp med eit brannmurregelsett som ikkje tilfredsstiller nokon av dei.

Å slå av offentleg tilgang er ein eigen brytar

Viss kontoen skal vere berre privat, slår du av offentleg nettverkstilgang gjennom den støtta innstillinga til kontoen og stadfester resultatet. Ikkje handsam eksistensen av eit privat endepunkt som den fullstendige tilgangsavgjerda, fordi ein konto med eit privat endepunkt og offentleg tilgang slått på framleis svarar på internettet.

Stadfest frå utsida av VPN-en så vel som frå innsida. Ein førespurnad frå eit nettverk som bør utelukkast, er testen som beviser at innstillinga tok til å gjelde, og det er testen dei fleste endringsvindauge hoppar over.

Tilgjenge er ikkje løyve

Ein tillaten SDK-operasjon frå VPN-datamaskinen er aksepttesten, med den vanlege konto-URL-en og den tiltenkte identiteten. VPN-tilgjenge gir ikkje Cosmos-datatillatingar; dataplanet kontrollerer sine eigne rollar eller nøklar.

Køyr deretter avvisingane: ein annan identitet, og ein nettverksveg som ikkje lenger skal nå kontoen. Viss ein av dei lukkast, er grensa du dokumenterte ikkje grensa du bygde.

Skriv ned fire fakta når du er ferdig: dei private adressene til endepunktet, DNS-sona som svarar for kontonamnet, tilkoplingsmodusen med portkrava sine, og om offentleg tilgang er slått av. Desse fire forklarer oppsettet for neste person, og kvar av dei feilar uavhengig.

Relaterte artiklar