Delen via


Architectuur van Defender for Containers

Defender for Containers is voor elke Kubernetes-omgeving anders ontworpen, ongeacht of deze worden uitgevoerd:

  • Azure Kubernetes Service (AKS): de beheerde service van Microsoft voor het ontwikkelen, implementeren en beheren van toepassingen in containers.

  • Amazon Elastic Kubernetes Service (EKS) in een verbonden AWS-account (Amazon Web Services): de beheerde service van Amazon voor het uitvoeren van Kubernetes op AWS zonder dat u uw eigen Kubernetes-besturingsvlak of -knooppunten hoeft te installeren, te gebruiken en te onderhouden.

  • Google Kubernetes Engine (GKE) in een verbonden GCP-project (Google Cloud Platform): de beheerde omgeving van Google voor het implementeren, beheren en schalen van toepassingen met behulp van GCP-infrastructuur.

  • Een onbeheerde Kubernetes-distributie (met behulp van Kubernetes met Azure Arc) - CncF-gecertificeerde Kubernetes-clusters (Cloud Native Computing Foundation) die on-premises of op IaaS worden gehost.

Notitie

Defender for Containers-ondersteuning voor Kubernetes-clusters met Arc (AWS EKS en GCP GKE) is een preview-functie.

Om uw Kubernetes-containers te beveiligen, ontvangt en analyseert Defender for Containers:

  • Auditlogboeken en beveiligingsgebeurtenissen van de API-server
  • Informatie over clusterconfiguratie vanuit het besturingsvlak
  • Workloadconfiguratie van Azure Policy
  • Beveiligingssignalen en gebeurtenissen van het knooppuntniveau

Zie de beschikbaarheid van functies van Defender for Containers voor meer informatie over implementatiedetails, zoals ondersteunde besturingssystemen, beschikbaarheid van functies, uitgaande proxy.

Architectuur voor elke Kubernetes-omgeving

Architectuurdiagram van Defender voor Cloud- en AKS-clusters

Wanneer Defender voor Cloud een cluster beveiligt dat wordt gehost in Azure Kubernetes Service, is de verzameling auditlogboekgegevens zonder agent en automatisch verzameld via de Azure-infrastructuur zonder extra kosten of configuratieoverwegingen. Dit zijn de vereiste onderdelen om de volledige beveiliging van Microsoft Defender for Containers te ontvangen:

  • Defender-sensor: De DaemonSet die op elk knooppunt wordt geïmplementeerd, verzamelt signalen van hosts met behulp van eBPF-technologie en biedt runtimebeveiliging. De sensor wordt geregistreerd bij een Log Analytics-werkruimte en wordt gebruikt als gegevenspijplijn. De auditlogboekgegevens worden echter niet opgeslagen in de Log Analytics-werkruimte. De Defender-sensor wordt geïmplementeerd als een AKS-beveiligingsprofiel.
  • Azure Policy voor Kubernetes: een pod die de opensource Gatekeeper v3 uitbreidt en zich registreert als een webhook op Kubernetes-toegangsbeheer, zodat het mogelijk is om afdwinging op schaal toe te passen en beveiligingsmaatregelen op uw clusters op een gecentraliseerde, consistente manier te waarborgen. De Azure Policy voor Kubernetes-pod wordt geïmplementeerd als een AKS-invoegtoepassing. Het is slechts geïnstalleerd op één knooppunt in het cluster. Zie Uw Kubernetes-workloads beveiligen en Inzicht in Azure Policy voor Kubernetes-clusters voor meer informatie.

Diagram van architectuur op hoog niveau van de interactie tussen Microsoft Defender for Containers, Azure Kubernetes Service en Azure Policy.

Details van defender-sensoronderdeel

Podnaam Naamruimte Soort Korte beschrijving Functies Bronlimieten Uitgaand verkeer vereist
microsoft-defender-collector-ds-* kube-system DaemonSet Een set containers die zich richten op het verzamelen van inventaris- en beveiligingsevenementen uit de Kubernetes-omgeving. SYS_ADMIN,
SYS_RESOURCE,
SYS_PTRACE
geheugen: 296Mi

cpu: 360m
Nee
microsoft-defender-collector-misc-* kube-system Implementatie Een set containers die zich richten op het verzamelen van inventaris- en beveiligingsgebeurtenissen uit de Kubernetes-omgeving die niet zijn gebonden aan een specifiek knooppunt. N.v.t. geheugen: 64Mi

cpu: 60 min.
Nee
microsoft-defender-publisher-ds-* kube-system DaemonSet Publiceer de verzamelde gegevens naar de back-endservice van Microsoft Defender for Containers waar de gegevens worden verwerkt en geanalyseerd. N.v.t. geheugen: 200Mi

cpu: 60 min.
Https 443

Meer informatie over de vereisten voor uitgaande toegang

* Resourcelimieten kunnen niet worden geconfigureerd; Meer informatie over limieten voor Kubernetes-resources.

Hoe werkt detectie zonder agent voor Kubernetes in Azure?

Het detectieproces is gebaseerd op momentopnamen die met intervallen zijn gemaakt:

Diagram van de machtigingsarchitectuur.

Wanneer u de detectie zonder agent inschakelt voor de Kubernetes-extensie, wordt het volgende proces uitgevoerd:

  • Maken:

    • Als de extensie is ingeschakeld vanuit Defender CSPM, maakt Defender voor Cloud een identiteit in klantomgevingen met de naam CloudPosture/securityOperator/DefenderCSPMSecurityOperator.
    • Als de extensie is ingeschakeld vanuit Defender for Containers, maakt Defender voor Cloud een identiteit in klantomgevingen met de naam CloudPosture/securityOperator/DefenderForContainersSecurityOperator.
  • Toewijzen: Defender voor Cloud wijst een ingebouwde rol met de naam Kubernetes Agentless Operator toe aan die identiteit op abonnementsniveau. De rol bevat de volgende machtigingen:

    • AKS read (Microsoft.ContainerService/managedClusters/read)
    • Vertrouwde AKS-toegang met de volgende machtigingen:
    • Microsoft.ContainerService/managedClusters/trustedAccessRoleBindings/write
    • Microsoft.ContainerService/managedClusters/trustedAccessRoleBindings/read
    • Microsoft.ContainerService/managedClusters/trustedAccessRoleBindings/delete

    Meer informatie over vertrouwde AKS-toegang.

  • Detecteren: Met behulp van de door het systeem toegewezen identiteit voert Defender voor Cloud een detectie uit van de AKS-clusters in uw omgeving met behulp van API-aanroepen naar de API-server van AKS.

  • Bind: Bij detectie van een AKS-cluster voert Defender voor Cloud een AKS-bindingsbewerking uit door een ClusterRoleBinding tussen de gemaakte identiteit en de Kubernetes ClusterRole aks:trustedaccessrole:defender-containers:microsoft-defender-operator te maken. Het ClusterRole is zichtbaar via de API en geeft Defender voor Cloud gegevensvlak leesmachtigingen binnen het cluster.

Notitie

De gekopieerde momentopname blijft in dezelfde regio als het cluster.

Volgende stappen

In dit overzicht hebt u geleerd over de architectuur van containerbeveiliging in Microsoft Defender voor Cloud. Als u het plan wilt inschakelen, raadpleegt u: