ms-ai-architect/skills/ms-ai-engineering/references/azure-ai-services/ai-services-networking-security.md
Kjell Tore Guttormsen 070141f06b chore(ms-ai-architect): refresh KB medium-bucket — 74 files [skip-docs]
KB-currency refresh (medium priority, 2026-06-19) via /architect:kb-update.
74 medium-prioritets filer re-verifisert mot Microsoft Learn (MCP) — delegert
til 15 parallelle Opus-subagenter (3 bølger) gruppert etter delt kilde, med
disjunkte fil-sett. Verifisert i hovedkontekst (scope-sjekk + diff-review av
de faktatunge gruppene + tester).

Hovedendringer (faktuelle korreksjoner + currency):
- Azure AI Search semantic ranker: TILGJENGELIG PÅ ALLE TIERS (også Free/Basic
  m/ gratis månedlig kvote) — gammel KB sa feilaktig "kun S1+". Korrigert i
  tier-tabell, anti-patterns og beslutningstabell (azure-ai-search-setup).
- APIM score-threshold = DISTANSE (lavere = strengere): tuning-tabellen i
  rag-caching-optimization hadde retningen baklengs — invertert til korrekt.
- Agentic retrieval GA/preview-nyanse presisert (hovedkontekst-korreksjon mot
  agentic-retrieval-how-to-migrate): GA via REST 2026-04-01 returnerer EKSTRAKTIV
  grounding (references + activity), IKKE syntetiserte svar. Answer synthesis,
  ikke-minimal reasoning effort (LLM query planning) og multi-turn messages
  forblir preview (2026-05-01-preview). Subagent hadde overforenklet til "hele
  kjernepipelinen GA"; rettet i agentic-rag-patterns + citation-tracking.
- Copilot Studio modell-tabeller (platforms/copilot-studio): fjernet Claude Opus
  4.5 + GPT-5.2 (borte fra kilde), lagt til Claude Sonnet 4.6/Opus 4.6 (GA),
  Opus 4.7 + Mistral Medium 3.5 (experimental); GPT-5 Reasoning/Auto = preview;
  A2A GA (apr 2026).
- Computer Use (CUA): Copilot Studio GA 2026-05-07; 4 modeller m/ tier/status
  (OpenAI CUA + Sonnet 4.5 GA, Sonnet 4.6 + Opus 4.6 experimental); 5 credits/
  steg standard, 15 premium; US-only region-krav FJERNET i GA-dok; Cloud PC pool
  + Hosted browser + bring-your-own-machine.
- Azure AI Search REST API-versjoner bumpet: 2025-09-01 -> 2026-04-01 (stabil),
  2025-11-01-preview -> 2026-05-01-preview (hybrid-search, rag-security-rbac,
  chunking).
- Power Automate-integrasjon: trigger "Run a flow from Copilot" -> "When an agent
  calls the flow"; App Service innebygd MCP (preview) lagt til.
- M365 Copilot-manifest v1.26 -> v1.28 (GA, mai) / v1.29 dokumentert (juni);
  "Tenant graph grounding" -> "Work IQ".
- Speech fast transcription 2t/300MB -> 5t/500MB; multilingual 14 -> 15 locales
  (+ pt-BR). Content Understanding reasoning preview -> GA (v1.0, 2025-11-01).
- Security Copilot E5 -> E5+E7. Død Databricks-URL ci-cd/best-practices ->
  ci-cd/flows. Prompt Flow retirement (2027-04-20 -> MAF) notert der den
  presenteres som go-forward. Gateway-topologi-tabell-feil rettet.
- Alle 74 Last updated -> 2026-06-19.

Discovery ikke kjørt (historisk kun Databricks-støy) -> 389-telling uendret,
ingen resync. validate 239 PASS, kb-integrity 115/115 (262 orphan-warnings
uendret), gitleaks clean.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01REiKFhP4w6xGXXqWKpPCJJ
2026-06-19 14:02:18 +02:00

28 KiB

Azure AI Services - Networking, Security and Private Endpoints

Last updated: 2026-06-19 | Verified: MCP 2026-06-19 Status: GA

Navngivning 2026-04: Microsoft har omdøpt "Azure Cognitive Services" til "Azure AI Foundry Tools" (eller kortform "Foundry Tools") i dokumentasjonen. API-endepunkter, RBAC-roller og ARM-ressurstyper beholder "CognitiveServices" i identifikatoren. Alle nye dokumentasjonsreferanser bruker "Foundry Tools".

Category: Azure AI Services (Foundry Tools)


Introduksjon

Azure AI Services (tidligere Cognitive Services) tilbyr et lagdelt sikkerhetsrammeverk for nettverksisolasjon som beskytter AI-modeller, data og tjenester mot uautorisert tilgang. Private endpoints, virtual networks og service endpoints gir fleksible sikkerhetskonfigurasjoner som passer både skytilkoblede og hybrid-scenarier.

Denne kunnskapsreferansen dekker:

  • Private endpoints og Azure Private Link-konfigurasjon
  • Virtual network-integrasjon med service endpoints
  • IP-baserte firewall-regler og nettverkstilgangskontroll
  • Managed identity-autentisering for nettverkssikker tilgang
  • DNS-konfigurasjon for private endpoints
  • Trusted services og nettverksunntak

Viktig kontekst: Azure AI Services støtter ikke direkte VNet-injeksjon (deployes ikke inn i kundens VNet), men bruker i stedet private endpoints for sikker tilkobling fra VNet til tjenesten.


Kjernekomponenter

Private endpoints gir dedikert nettverkstilgang til Azure AI Services uten eksponering mot offentlig internett.

Komponent Funksjon Konfigurasjon
Private Endpoint Dedikert nettverksgrensesnitt i kundens VNet Tildeles privat IP fra VNet-adresseområdet
Private Link Service Azure-backbone-tilkobling Eliminerer internett-eksponering
Private DNS Zone Navneoppløsning for private endpoints privatelink.cognitiveservices.azure.com (AI Services)
privatelink.openai.azure.com (Azure OpenAI)
Target Sub-resource Endepunkttype account (AI Services, Azure OpenAI)

Fordeler:

  • Eliminerer offentlig internett-eksponering fullstendig
  • Trafikk går over Microsoft backbone network
  • Fungerer med VPN Gateway og ExpressRoute for on-premises tilgang
  • Konsistent tilkoblings-string for både private og public endpoints
  • Støtter både system-assigned og user-assigned managed identities

Begrensninger:

  • Krever Basic tier eller høyere (ikke Free tier)
  • Custom subdomain er påkrevd for private endpoints
  • Speech service krever separate endpoint-konfigurasjoner
  • Portal-tilgang kan kreve ekstra konfigurasjon

2. Service Endpoints

Service endpoints gir optimalisert ruting fra VNet til Azure AI Services uten private IP-adresser.

Aspekt Beskrivelse
Service Tag Microsoft.CognitiveServices
Routing Optimal sti fra VNet til tjenesten via Azure backbone
Identitet Subnet- og VNet-identitet sendes med hver forespørsel
Kombinasjon Kan brukes sammen med IP-regler (maks 100 VNet-regler per ressurs)

Når bruke service endpoints vs private endpoints:

  • Service Endpoints: Enklere oppsett, gratis, men tjenesten beholder offentlig IP
  • Private Endpoints: Full isolasjon, privat IP, bedre sikkerhet, men høyere kostnad

3. IP Firewall-regler (Network ACLs)

Service-level IP filtering for å begrense tilgang til godkjente IP-adresser.

Regeltype Format Eksempel Bruksområde
Enkelt IP x.x.x.x 203.0.113.10 Spesifikt klientmaskin
IP-range CIDR-notasjon 10.0.0.0/24 Subnet eller on-premises nettverk
IPv4 kun RFC 1918-kompatibel Private: 10.*, 172.16-31.*, 192.168.* ikke tillatt Kun offentlige IP-adresser

Konfigurasjonsalternativer:

  • All networks: Åpen tilgang (default)
  • Selected networks: Kun godkjente VNets/IPs
  • Disabled: Ingen public access (kun private endpoints)

Viktig: Default action må settes til Deny for at nettverksregler skal ha effekt.

4. Managed Identity og Autentisering

Managed identity eliminerer behovet for API-nøkler ved nettverksikrede tilkoblinger.

Type Levetid Bruksområde
System-assigned Knyttet til ressurs-levetid Standard for enkle scenarier
User-assigned Uavhengig av ressurs Multi-ressurs, delt identitet

Konfigurering via Azure Portal:

  1. Naviger til AI Services-ressurs → Identity
  2. Aktiver System assigned eller legg til User assigned
  3. Tildel RBAC-rolle på målressurs: Cognitive Services User eller Cognitive Services OpenAI User

Trusted Services Bypass:

  • Aktiveres med networkAcls.bypass: "AzureServices"
  • Tillater Azure AI Search, Azure Machine Learning å kalle tjenesten via managed identity
  • Tjenesten validerer JWT-token fra trusted services

Arkitekturmønstre

1. Full Private Endpoint-isolasjon

Scenario: Maksimal sikkerhet, null internett-eksponering.

┌─────────────────────────────────────────────┐
│  Azure Virtual Network (10.0.0.0/16)       │
│                                             │
│  ┌─────────────────────────────────────┐   │
│  │  App Subnet (10.0.1.0/24)           │   │
│  │  - Web App / Function App           │   │
│  │  - VNet Integration                 │   │
│  └─────────────────────────────────────┘   │
│                                             │
│  ┌─────────────────────────────────────┐   │
│  │  Private Endpoint Subnet            │   │
│  │  (10.0.2.0/24)                      │   │
│  │  - PE for Azure OpenAI (10.0.2.4)   │───┼──> Azure OpenAI
│  │  - PE for AI Services (10.0.2.5)    │───┼──> AI Services
│  │  - PE for Key Vault (10.0.2.6)      │───┼──> Key Vault
│  │  - PE for Storage (10.0.2.7)        │───┼──> Storage
│  └─────────────────────────────────────┘   │
│                                             │
│  ┌─────────────────────────────────────┐   │
│  │  Azure Bastion Subnet (10.0.3.0/26) │   │
│  │  - Bastion Host                     │   │
│  └─────────────────────────────────────┘   │
└─────────────────────────────────────────────┘
        │
        └──> On-premises (VPN Gateway / ExpressRoute)

Konfigurasjonsrekkefølge:

  1. Opprett VNet med subnets (app, private endpoint, bastion)
  2. Opprett Azure AI Services med custom subdomain
  3. Opprett private endpoint i dedikert subnet
  4. Konfigurer Private DNS Zone (privatelink.cognitiveservices.azure.com)
  5. Sett publicNetworkAccess: Disabled på AI Services
  6. Aktiver managed identity på applikasjon
  7. Tildel RBAC-rolle til applikasjonen på AI Services

Best practices:

  • Bruk dedikert subnet for private endpoints (anbefalt /26 eller større)
  • Aktiver PrivateEndpointNetworkPolicies: Disabled på subnet
  • Integrer med Private DNS Zone for automatisk navneoppløsning
  • Bruk Azure Bastion for sikker management-tilgang

2. Hybrid Service Endpoint + IP Firewall

Scenario: Koste-effektiv sikkerhet med VNet + on-premises tilgang.

┌─────────────────────────────────────────────┐
│  Azure Virtual Network                      │
│                                             │
│  ┌─────────────────────────────────────┐   │
│  │  App Subnet                         │   │
│  │  - Service Endpoint enabled         │   │
│  │    (Microsoft.CognitiveServices)    │   │
│  └─────────────────────────────────────┘   │
│              │                              │
│              └──────────────┐               │
└─────────────────────────────┼───────────────┘
                              │
                              ▼
                    ┌─────────────────┐
                    │ Azure AI Service│
                    │ Firewall:       │
                    │ - VNet rule     │
                    │ - IP allow:     │
                    │   203.0.113.0/24│ <──── On-premises public IP
                    └─────────────────┘

Konfigurasjon:

  1. Aktiver service endpoint på subnet: Microsoft.CognitiveServices
  2. Konfigurer AI Services firewall:
    • Default action: Deny
    • VNet rule: tillat spesifikk subnet
    • IP rule: tillat on-premises public IP range

3. Hub-Spoke med Centralisert Network Security

Scenario: Enterprise-arkitektur med sentralisert sikkerhet.

          ┌─────────────────────────────┐
          │  Hub VNet (10.0.0.0/16)     │
          │  - Azure Firewall           │
          │  - VPN Gateway              │
          │  - Private DNS Zones        │
          └─────────────┬───────────────┘
                        │ VNet Peering
           ┌────────────┴────────────┐
           │                         │
    ┌──────▼──────┐          ┌──────▼──────┐
    │ Spoke 1 VNet│          │ Spoke 2 VNet│
    │ AI Workload │          │ AI Workload │
    │ - PEs       │          │ - PEs       │
    └─────────────┘          └─────────────┘

Nettverksflyt:

  • Outbound trafikk → Azure Firewall (FQDN filtering)
  • Inbound management → Azure Bastion i Hub
  • Private DNS Zones deles via VNet-links

4. Azure OpenAI "On Your Data" med Network Isolation

Scenario: RAG-løsning med Azure AI Search + Storage bak private endpoints.

┌────────────────────────────────────────────────┐
│  VNet (3 subnets)                              │
│                                                │
│  1. VPN Gateway Subnet                         │
│  2. Private Endpoint Subnet:                   │
│     - Azure OpenAI PE                          │
│     - Azure AI Search PE (shared private link) │
│     - Storage Account PE                       │
│  3. Web App Outbound Integration Subnet        │
└────────────────────────────────────────────────┘

┌─────────────┐  Managed Identity  ┌──────────────┐
│ Azure OpenAI├───────────────────>│ AI Search    │
│             │  (trusted service) │ (embedding)  │
└─────────────┘  bypass firewall   └──────────────┘

Spesialkonfigurasjon:

  • Azure OpenAI: networkAcls.bypass: "AzureServices" (trusted service)
  • AI Search: managed identity med Cognitive Services OpenAI User rolle
  • Storage: private endpoint + RBAC for OpenAI managed identity

Beslutningsveiledning

Når bruke hvilken nettverkssikkerhet?

Scenario Anbefalt løsning Rasjonale
Maksimal sikkerhet, compliance-kritisk Private Endpoints + Disable Public Access Zero Trust, ingen internett-eksponering
Kostnadsbevisst, medium sikkerhet Service Endpoints + IP Firewall Gratis, god sikkerhet, enklere oppsett
Hybrid on-premises + Azure Private Endpoints + VPN Gateway / ExpressRoute Privat tilkobling til on-premises
Multi-region, lav latency Private Endpoints per region Redusert latency, regional isolasjon
Dev/Test miljø IP Firewall kun Lavest kompleksitet, akseptabel risiko

Sikkerhetsnivå-matriks

Tiltak Sikkerhetsnivå Kompleksitet Kostnad Compliance
IP Firewall kun Lav Gratis Basis
Service Endpoints Medium Gratis Medium
Private Endpoints Høy Medium Høy (GDPR, HIPAA)
PE + Disabled Public Høy Medium Maksimal

DNS-konfigurasjon: Azure Private DNS vs Custom DNS

Azure Private DNS (anbefalt):

  • Automatisk CNAME-record oppdatering
  • Integrert med VNet
  • Ingen ekstra konfigurasjon

Custom DNS (on-premises DNS server):

  • Krev conditional forwarder til Azure DNS (168.63.129.16)
  • Manuell A-record for private endpoint IP
  • Nødvendig for hybrid-scenarier

FQDN-resolusjon:

  • Fra VNet: myaccount.cognitiveservices.azure.com10.0.2.5 (privat IP)
  • Fra internett: myaccount.cognitiveservices.azure.com → public IP (hvis ikke disabled)

Integrasjon med Microsoft-stakken

1. Azure AI Foundry (tidligere AI Studio)

Portal-tilgang med private endpoints:

  • Custom subdomain må brukes i alle API-kall
  • Portal-tilgang krever VPN eller Azure Bastion til VNet
  • Service tags for portal: AzureActiveDirectory, AzureFrontDoor.Frontend, AzureResourceManager, CognitiveServicesManagement, CognitiveServicesFrontEnd

Managed VNet i Foundry:

  • Foundry hub kan ha egen managed VNet
  • Workspace inheriter nettverksregler fra hub
  • Private endpoints til Foundry Tools konfigureres separat

2. Power Platform Integration

Power Automate / Power Apps med private endpoints:

  • Krever On-premises data gateway for VNet-tilkobling
  • Azure Relay hybrid connection ikke støttet direkte
  • Custom connector må bruke public endpoint med IP firewall

Workaround for private endpoints:

  1. Deploy Azure Function med VNet integration
  2. Function kaller AI Services via private endpoint
  3. Custom connector kaller Azure Function (public endpoint med auth)

3. Azure Machine Learning

AML Workspace med AI Services private endpoints:

  • Shared private link fra AML til AI Services
  • Managed identity med Cognitive Services User rolle
  • Trusted service bypass: networkAcls.bypass: "AzureServices"

Compute Cluster konfigurasjon:

  • Cluster må være i samme VNet (eller peered VNet)
  • NSG må tillate outbound til AzureMachineLearning service tag

4. Azure AI Search (for RAG)

Shared Private Link:

  • AI Search kan opprette private endpoint til AI Services
  • Eliminerer behovet for trusted service bypass
  • Konfigureres via AI Search → Networking → Shared Private Links

Trusted Service alternativ:

  • AI Search managed identity med RBAC-rolle på AI Services
  • networkAcls.bypass: "AzureServices" på AI Services
  • System-assigned managed identity authentication påkrevd

Offentlig sektor (Norge)

1. Compliance-krav

Regelverk Relevante krav Nettverkstiltak
Personvernforordningen (GDPR) Art. 32: Tekniske sikkerhetstiltak Private endpoints, kryptering i transit (TLS 1.2+)
Nasjonal sikkerhetsmyndighet (NSM) Grunnprinsipper for IKT-sikkerhet Network segmentation, least privilege access
Schrems II Data Processing Agreement-krav Private endpoints reduserer eksponering mot utenlandsk jurisdiksjon
eHelse Norm for informasjonssikkerhet (HelseNorge) Nettverksisolasjon, logging, audit trail

2. Offentlig Sektor-spesifikke hensyn

Data Residency:

  • Private endpoints endrer ikke data location (fortsatt i Azure-regionen)
  • Norway East / Norway West anbefales for offentlig sektor
  • Private Link-trafikk forblir innenfor Microsoft backbone network (ikke public internet)

Schrems II og Cloud Act:

  • Private endpoints reduserer ikke juridisk ansvar ved Cloud Act-forespørsler
  • Tilleggstiltak: Customer-Managed Keys (CMK), Microsoft Purview audit logs

Kostnadsmodell:

  • Private Endpoint: ~40 NOK/måned per endpoint
  • Data Processing (ingress): Gratis
  • Data Processing (egress): ~0.40 NOK/GB (intra-region via private link)

Kostnad og lisensiering

1. Nettverkskomponenter - Priser (NOK, ca. 2026)

Komponent Kostnad Enhet Merknad
Private Endpoint ~40 NOK per endpoint/måned Uavhengig av trafikkmengde
Data Processing (inbound) Gratis per GB Ingen kostnad for ingress
Data Processing (outbound) ~0.40 NOK per GB Intra-region via private link
Service Endpoint Gratis - Ingen ekstra kostnad
VNet Peering ~0.08 NOK per GB (intra-region) For hub-spoke arkitektur
Azure Bastion ~1200 NOK per måned (Basic) For secure management access
VPN Gateway ~2400 NOK per måned (Basic) For on-premises tilkobling

Estimert månedskostnad for typisk oppsett:

  • SMB (1 AI Service + Storage): ~80 NOK/måned (2 private endpoints)
  • Enterprise (3 AI Services + Search + Storage + Key Vault): ~240 NOK/måned (6 private endpoints) + Bastion/VPN

2. AI Services Tier-krav

Tier Private Endpoints IP Firewall Service Endpoints
Free Ikke støttet Ikke støttet Ikke støttet
Basic Støttet Støttet Støttet
Standard Støttet Støttet Støttet

Minstekrav: Basic tier (S0) eller høyere for nettverkssikkerhet.

3. Hidden Costs å være obs på

  • DNS Zone: ~4 NOK/måned per Private DNS Zone + ~0.004 NOK per 1000 queries
  • Data Egress: Trafikk ut av Azure region (ikke via private link) kan bli dyrt
  • Network Watcher: Flowlogger for NSG koster ~40 NOK/måned per NSG
  • Log Analytics: Ingest av network logs (pris avhenger av volum)

For arkitekten (Cosmo)

1. Oppstartssekvens for Private Endpoint-prosjekt

Pre-deployment checklist:

  1. Validert at AI Services tier er Basic eller høyere
  2. Planlagt IP-adresseområder (VNet, subnets)
  3. Identifisert custom subdomain for AI Services-ressurs
  4. Avklart DNS-strategi (Azure Private DNS vs custom DNS)
  5. Bestemt managed identity-strategi (system vs user-assigned)
  6. RBAC-roller definert (hvem skal ha tilgang til hva)

Deployment-rekkefølge (kritisk!):

  1. Opprett Resource Group
  2. Opprett VNet med subnets (app, private endpoint, bastion)
  3. Opprett AI Services-ressurs med custom subdomain
  4. Opprett Private DNS Zone (privatelink.cognitiveservices.azure.com)
  5. Link Private DNS Zone til VNet
  6. Opprett Private Endpoint (velg target sub-resource: account)
  7. Verifiser DNS record i Private DNS Zone (A-record for private IP)
  8. Sett publicNetworkAccess: Disabled på AI Services (etter testing!)
  9. Aktiver managed identity på applikasjon
  10. Tildel RBAC-rolle (Cognitive Services User) til applikasjon

Testing-rekkefølge:

  1. Fra VNet: nslookup <myaccount>.cognitiveservices.azure.com → skal returnere privat IP
  2. Fra VNet: Test-NetConnection <private-ip> -Port 443 → skal lykkes
  3. Fra internett (før disabled public): nslookup → skal returnere public IP
  4. API-kall fra VNet med managed identity → skal lykkes
  5. API-kall fra internett (etter disabled public) → skal feile (403 Forbidden)

2. Troubleshooting-guide

Symptom Mulig årsak Løsning
403 Forbidden fra VNet IP firewall blokkerer Sjekk firewall rules, default action må være Deny med eksplisitt Allow-regel
DNS resolves til public IP fra VNet Private DNS Zone ikke linket Link Private DNS Zone til VNet, verifiser A-record
Connection timeout NSG blokkerer port 443 Sjekk NSG-regler på subnet, tillat outbound 443 til CognitiveServices service tag
Portal ikke tilgjengelig Service tags mangler Legg til AzureFrontDoor.Frontend, CognitiveServicesFrontEnd i firewall/NSG
Managed identity auth fails RBAC-rolle mangler Tildel Cognitive Services User eller Cognitive Services OpenAI User rolle

3. Design-avveininger

Private Endpoints vs Service Endpoints:

Dimensjon Private Endpoints Service Endpoints
Sikkerhet (privat IP) (public IP, VNet-regler)
Kompleksitet Høy (DNS, subnets) Lav (enable på subnet)
Kostnad ~40 NOK/måned per endpoint Gratis
Latency Lavest (direkte) Lavt (optimalisert)
Compliance Best (Zero Trust) Godt (nettverksisolasjon)
On-prem access VPN/ExpressRoute VPN/ExpressRoute

Anbefaling:

  • Prod + høy sikkerhet: Private Endpoints + Disabled Public Access
  • Prod + kostnadsfokus: Service Endpoints + IP Firewall
  • Dev/Test: IP Firewall kun (akseptabel risiko)

4. Common Pitfalls (å unngå!)

Aktivere "Disable public access" før private endpoint fungerer:

  • Resultat: Fullstendig tap av tilgang (inkludert Azure Portal)
  • Fix: Test private endpoint grundig først, bruk "Selected networks" som mellomsteg

Glemme custom subdomain:

  • Resultat: Private endpoint creation feiler eller DNS resolution fungerer ikke
  • Fix: Custom subdomain må settes ved opprettelse av AI Services-ressurs

Private DNS Zone ikke linket til alle relevante VNets:

  • Resultat: DNS resolves til public IP fra peered VNets
  • Fix: Link Private DNS Zone til alle VNets som trenger tilgang (hub og spokes)

Bruke *.privatelink.openai.azure.com som endpoint URL:

  • Resultat: API-kall feiler med HTTPS-feil
  • Fix: Bruk alltid custom subdomain (myaccount.openai.azure.com), DNS håndterer ruting

Managed identity uten RBAC-rolle:

  • Resultat: 403 Forbidden selv om nettverkstilgang er OK
  • Fix: Tildel minst Cognitive Services User rolle på AI Services-ressursen

5. Production Readiness Checklist

Sikkerhet:

  • Private endpoints aktivert for alle AI Services
  • Public network access disabled (eller IP-baserte firewall-regler)
  • Managed identity aktivert (eliminerer API-nøkler i kode)
  • RBAC-roller tildelt med least privilege
  • NSG-regler konfigurert (least privilege)
  • Azure Firewall / WAF for outbound/inbound trafikk (enterprise)

Overvåkning:

  • Diagnostic settings aktivert (send logs til Log Analytics)
  • Network Watcher flowlogger aktivert (NSG)
  • Azure Monitor alerts for nettverksfeil (429, 403, connection timeout)
  • Private Link metrics overvåket (bytes in/out, connection count)

Disaster Recovery:

  • Multi-region deployment vurdert (private endpoints per region)
  • VNet peering konfigurert for failover
  • DNS failover-strategi dokumentert
  • Backup-plan for public access (emergency access)

Dokumentasjon:

  • Nettverksdiagram (logical + physical)
  • IP-adressering dokumentert (subnets, private endpoint IPs)
  • DNS-konfigurasjon dokumentert (zones, records, forwarders)
  • RBAC-roller og service principals dokumentert
  • Runbook for troubleshooting

6. Spør kunden dette (før design)

  1. Sikkerhetsnivå:

    • "Har dere compliance-krav som krever zero internett-eksponering?" → private endpoints
    • "Hva er risikovurdering av data lekkasje?" → akseptabelt nivå for kostnad
  2. Eksisterende nettverk:

    • "Har dere eksisterende hub-spoke arkitektur?" → integrering vs ny VNet
    • "Bruker dere on-premises DNS-servere?" → conditional forwarders trengs
  3. On-premises tilkobling:

    • "Trenger brukere on-premises tilgang til AI Services?" → VPN Gateway/ExpressRoute
    • "Har dere eksisterende ExpressRoute?" → reuse eller ny
  4. Multi-region:

    • "Trenger dere DR i annen region?" → private endpoints per region
    • "Hva er akseptabel RTO/RPO?" → påvirker arkitektur
  5. Kostnadsbudsjett:

    • "Hva er månedlig budsjett for nettverksinfrastruktur?" → private endpoints (~40 NOK/stk) vs service endpoints (gratis)
    • "Er data egress-volum relevant?" → intra-region vs inter-region trafikk

7. Quick Reference - Azure CLI/PowerShell

Opprett Private Endpoint (Azure CLI):

# Hent ressurs-ID for AI Services
csResourceId=$(az cognitiveservices account show \
  --resource-group myRG \
  --name myAIAccount \
  --query id --output tsv)

# Opprett private endpoint
az network private-endpoint create \
  --resource-group myRG \
  --name myAIPrivateEndpoint \
  --location norwayeast \
  --vnet-name myVNet \
  --subnet privateEndpointSubnet \
  --private-connection-resource-id $csResourceId \
  --group-id account \
  --connection-name myConnection

# Opprett DNS zone group (automatisk A-record)
az network private-endpoint dns-zone-group create \
  --resource-group myRG \
  --endpoint-name myAIPrivateEndpoint \
  --name myDNSZoneGroup \
  --private-dns-zone privatelink.cognitiveservices.azure.com \
  --zone-name cognitiveservices

Disable Public Access (Azure CLI):

az cognitiveservices account update \
  --resource-group myRG \
  --name myAIAccount \
  --set properties.publicNetworkAccess=Disabled

Aktiver Managed Identity (Azure CLI):

az cognitiveservices account identity assign \
  --resource-group myRG \
  --name myAIAccount

Test DNS Resolution (PowerShell):

# Fra VNet VM - skal returnere privat IP
nslookup myaccount.cognitiveservices.azure.com

# Test port 443
Test-NetConnection -ComputerName 10.0.2.5 -Port 443

Kilder og verifisering

Verified (MCP microsoft-learn, 2026-02):

Baseline (modellkunnskap, januar 2025):

  • Azure Private Link pricing: ca. 40 NOK/måned per endpoint (basert på USD-priser og valutakurs)
  • Custom subdomain-krav for private endpoints (dokumentert i flere Microsoft-kilder)
  • NSG-støtte ikke tilgjengelig for AI Services (bekreftet via security baseline)
  • Trusted services bypass med networkAcls.bypass: "AzureServices" (REST API-konfigurasjon)

Sist verifisert: 2026-06-19 MCP calls: 7 (microsoft_docs_search, microsoft_docs_fetch, microsoft_code_sample_search) Kilder: 10 unike Microsoft Learn URLs