Blue digital padlock over a circuit pattern representing Azure security and governance

Aventure Cloud Blog — 6 November 2026

Security protects things. Governance controls things. That is the simplest way to tell them apart — and the reason they are so often confused.

Security stops the wrong person getting in: who can sign in, what is encrypted, what is being attacked. Governance stops the wrong thing being built: what is allowed, what is compliant, what is organised, and what it costs.

Most Azure services sit on the line between the two. Entra ID is security — authentication. RBAC is governance — authorisation, who is allowed to do what — and security. Azure Policy is pure governance. Defender is pure security.

Keep this rule in mind as you read the rest:

Governance stops the wrong thing being built. Security stops the wrong person getting in.

1. Identity and Access — Security + Governance

ServiceWhat it does
Microsoft Entra IDIdentity — users, groups, apps, devices, sign-in, MFA
RBAC (Role-Based Access Control)Authorisation — who can do what, on which scope (subscription / resource group / resource)
Privileged Identity Management (PIM)Just-in-time admin — eligible roles, activation with approval + MFA, time-limited, audited
Conditional AccessPolicies — only allow sign-in from a compliant device, in this country, with MFA
Multi-Factor Authentication (MFA)Second factor for sign-in
Managed IdentityPasswordless identity for Azure services — system-assigned (one resource) or user-assigned (shared across many)
Service Principal / App RegistrationIdentity for applications outside Azure — client ID + client secret / certificate
Entra ID ProtectionRisk detection — leaked credentials, impossible travel, risky sign-ins
Entra ID GovernanceAccess reviews, entitlement management, lifecycle workflows
Entra Permissions Management (CIEM)Finds over-privileged identities across Azure, AWS, GCP

Who uses what identity?

IdentityFor whom / what?Managed by
User (member)EmployeeYou / HR
User (guest)External partner / vendor (B2B)You, via B2B invite
GroupSet of usersYou
DeviceLaptop / phone / VMEntra ID + Intune
Service PrincipalAn application (yours or a vendor’s)You — you manage the secret
Managed IdentityAn Azure resourceAzure — no secret to manage
Workload Identity FederationAn external workload (GitHub Actions, Kubernetes)Trust, no secret stored

Rule: People get in through a user in a group. Apps get in through a Managed Identity. Never give an app a human user’s account, and never give a human a Managed Identity.

Service Principal — step by step

A Service Principal is a username + password for an application, not a person. Use it when an app runs outside Azure — a script, GitHub Actions, an on-prem app. Inside Azure, use Managed Identity instead.

  • Step 1 — Register the app: Entra ID → App registrations → New registration (e.g. my-storage-reader-app). Azure gives it a Client ID — the app’s username.
  • Step 2 — Azure creates the Service Principal automatically when you register the app. App Registration = the app’s birth certificate; Service Principal = the account that can sign in.
  • Step 3 — Create a secret: Certificates & secrets → New client secret, with an expiry. Copy the value once — you cannot see it again. Store it in Key Vault, never in code.
  • Step 4 — Give it permission: target resource → Access control (IAM) → Add role assignment, least-privilege role (e.g. Storage Blob Data Reader), assign to the Service Principal by app name.
  • Step 5 — Use it in code: ClientSecretCredential with tenant ID + client ID + client secret (from Key Vault).
  • Step 6 — Rotate before expiry: create a new secret, update Key Vault / pipeline, delete the old one. If you forget, the app stops working on the expiry date.

The same idea, in other clouds

The pattern is the same on AWS and GCP, only the names change. On AWS, IAM users and roles, IAM Identity Center, and Organizations with Service Control Policies (SCPs) play the Entra ID, RBAC, and Management Group roles. On GCP, Cloud IAM, Workforce Identity Federation, and Organization Policy do the same job. In a multi-cloud setup, keep one rule everywhere: humans in groups with MFA, workloads with a cloud-managed identity, and no long-lived secret where a federated identity will do.

2. Network Security

ServiceWhat it does
Network Security Groups (NSG)Firewall rules on subnets / NICs — allow/deny by port, IP, protocol
Azure FirewallManaged cloud firewall — L3/L4 + L7, threat intel, DNS proxy
Web Application Firewall (WAF)Protects web apps from SQL injection, XSS, OWASP Top 10 — on Application Gateway / Front Door / CDN
DDoS ProtectionNetwork-level DDoS mitigation
Private Link / Private EndpointPrivate access to PaaS services — no public internet
Private DNS ZonesPrivate name resolution for Private Endpoints
BastionSecure RDP/SSH to VMs without a public IP
VPN Gateway / ExpressRoutePrivate connectivity from on-premises to Azure
Network WatcherFlow logs, NSG diagnostics, connectivity checks
Azure DNS Private ResolverConditional forwarding between on-prem DNS and Azure Private DNS

In a landing zone, DNS is a hub service, not a per-workload afterthought. The most common Private Endpoint failure is a missing Private DNS record or a missing VNet link — the service is reachable, but the name does not resolve to the private IP.

3. Data Protection

ServiceWhat it does
Key VaultSecrets, keys, certificates — RBAC, soft-delete, purge protection
Managed HSMDedicated hardware security module for keys
EncryptionStorage Service Encryption, disk encryption, TDE for SQL, TLS in transit
Customer-Managed Keys (CMK)You own the encryption key in Key Vault, not Microsoft
Microsoft PurviewData governance — classification, labelling, data lineage, DLP
Information Protection / Sensitivity LabelsLabel and encrypt documents and emails
Data Loss Prevention (DLP)Block sharing of sensitive data (e.g. credit card numbers)

Encryption is not the same as private access. A storage account can be encrypted and still be publicly reachable. You need all three: encryption, a Private Endpoint, and public access denied.

4. Threat Protection and Monitoring

ServiceWhat it does
Microsoft Defender for CloudCSPM — posture management, Secure Score, recommendations, compliance dashboards
Microsoft Defender XDRExtended detection and response across identity, endpoint, email, cloud apps
Microsoft Defender for IdentityDetects attacks on Entra ID / AD (lateral movement, pass-the-hash)
Microsoft Defender for EndpointEDR on servers and workstations
Microsoft Defender for Cloud AppsCASB — shadow IT, SaaS app risk
Microsoft SentinelSIEM + SOAR — collect logs, detect threats, automate response with playbooks
Azure Monitor / Log AnalyticsLogs, metrics, alerts — the data layer under Defender and Sentinel

5. Governance — Organisation and Control

ServiceWhat it does
Management GroupsHierarchy above subscriptions — apply policy and RBAC at scale
Azure PolicyGuardrails — only allow these regions, require a tag, deny public Storage, require private endpoints — audit, deny, deploy-if-not-exists
Policy InitiativesBundles of policies (e.g. CIS or NIST initiative)
Resource LocksPrevent accidental delete / modification (CanNotDelete, ReadOnly)
TagsOrganisation — cost centre, environment, owner, on every resource
Resource GraphQuery all resources across subscriptions at scale
Cost Management + BillingBudgets, cost analysis, alerts — governance of spend
Landing Zones / Cloud Adoption Framework (CAF)The governance design — platform vs workload subscriptions, management groups, policy, networking
Azure ArcGovernance of non-Azure resources (on-prem servers, other clouds) under the same Policy / RBAC

The Cloud Adoption Framework landing-zone model is simple at its core: a platform landing zone holds the shared services — identity, networking, management — and workload landing zones hold the applications, inheriting policy from above. AI resources belong in workload subscriptions, never in platform subscriptions.

6. Compliance

Service / conceptWhat it does
Defender for Cloud — Regulatory ComplianceMaps posture to CIS, NIST, ISO 27001, PCI DSS, HIPAA
Microsoft Purview Compliance ManagerCompliance score, assessments, evidence
Audit logsEntra sign-in logs, Activity Log, diagnostic settings — who did what, when
Azure AttestationProve a platform / workload is running trusted code

Compliance is evidence, not a feeling. Every claim should be traceable to a real record — a Policy compliance result, a Defender recommendation, a sign-in log — with a link and a timestamp.

7. Using Agents to Automate and Audit Security and Governance

Agents are very useful in this area, with one rule: agents can audit and prepare remediation — a human approves the change.

What agents can automate

Use caseWhat the agent doesHuman decision
Continuous compliance auditReads Azure Policy, Defender for Cloud Secure Score, and Resource Graph; finds resources without tags, Storage with public access, Key Vaults without purge protection, NSGs with open port 22/3389, standing Owner access; produces a prioritised report with evidenceApprove the fix list, or accept the risk
Identity auditFinds over-privileged users and Service Principals, standing admin roles that should be PIM-eligible, secrets expiring in 30 days, unused permissions, guest users with no use in 90 days; drafts access-review recommendationsApprove or revoke access
Incident triage (Sentinel)Pulls related logs, identity, resource, and recent changes for a Sentinel alert; writes a first triage summary — what happened, blast radius, known pattern — and suggests next stepsApprove containment; agent never isolates a VM or disables an account alone
Remediation draftingPrepares the fix as code — Terraform/Bicep patch, Policy remediation task, or Azure CLI command (e.g. enable diagnostic settings, rotate a Service Principal secret)Approve via pull request / PIM activation; agent never applies it silently
Cost and governance cleanupFinds unused resources, oversized VMs, unattached disks, old snapshots; drafts a cleanup list with saving per itemApprove before any deletion — deletion is never automated without a human
Key Vault and secret auditTracks secret/key/certificate expiry, rotation, and access; flags secrets about to expireApprove rotation plan
Network exposure auditFinds public endpoints, missing private endpoints, open NSGs, and drift from the landing-zone network designApprove remediation

How to build it — in Foundry terms

Defender / Policy / Sentinel / Resource Graph / Entra logs → AI Search index (grounding — the agent only answers from real data) → Foundry agent (GPT-4o) with tools: Resource Graph query tool; Policy compliance tool; Key Vault / RBAC read tool (read-only); Draft remediation tool (prepares, does not apply) → Human reviewer approves → Remediation runs via pipeline, with full audit log. Tools are read-only by default. The write tool is separate, and it only prepares the change.

What agents must NOT do in this area

  • Never auto-revoke access or delete a resource on their own — a wrong revocation can take down production.
  • Never rotate a secret and not tell anyone — the app using it will break.
  • Never invent a compliance result — every finding must cite the actual Policy / Defender record it came from, with a link and a timestamp.
  • Never act on a log it cannot verify — if the evidence is missing, it says “could not verify”, not “compliant”.

The pattern to remember: build a Foundry agent grounded in Defender for Cloud, Azure Policy, and Resource Graph, with read-only tools to audit RBAC, Key Vault expiry, and non-compliant resources, and a separate draft-only tool to prepare remediation as code. The agent audits and prepares — a human approves the change, and every action is logged in the Activity Log and Sentinel. That keeps the automation fast without giving an agent standing write access to production.

The takeaway

Entra ID is identity security, RBAC is the authorisation layer that sits on top of it — so both are security and governance. Around them: PIM for just-in-time admin, Conditional Access for sign-in policy, Azure Policy and Management Groups for guardrails at scale, Key Vault for secrets, Private Link and Firewall / NSG / WAF for network, Defender for Cloud for posture, and Sentinel as the SIEM.

Governance is what stops the wrong thing being built; security is what stops the wrong person getting in. Get both right, and the cloud stays fast and safe.

Want to learn to build and govern cloud systems like this? Email info@aventurecloud.net. For training enquiries, email info@aventurecloud.net. For careers, email hr@aventurecloud.net.

Category
Tags

No responses yet

Leave a Reply

Your email address will not be published. Required fields are marked *