Wazuh Microsoft Azure monitoring

Wazuh collects Azure activity through the azure-logs module, and the right source depends on which Azure logs you need and where they live. This page covers the collection choice, prerequisites, configuration sequence, mapping, security and testing for a self-hosted Wazuh deployment.

On this page

Wazuh Microsoft Azure monitoring starts with choosing the collection method

Azure data reaches Wazuh through the azure-logs module, and the collection source (Log Analytics, Microsoft Graph or Azure Storage) is decided before any configuration begins. If your team already runs Wazuh and needs Azure activity in the same alert pipeline as endpoint and other cloud alerts, this choice sets the rest of the project. It determines which Azure identities you create, where the logs sit, what permissions the collector needs and how much data arrives. Changing the source later usually means revisiting credentials, decoders, rules and expected alert volume, so assign a named owner to this decision before anyone edits a configuration file.

Each source fits a different question. Log Analytics suits activity and diagnostic data that your Azure administrators already route into a workspace. Microsoft Graph suits identity and directory events, such as sign-ins and changes to users, groups and applications in Entra ID. Azure Storage suits logs exported to blob containers, often for retention or cost reasons. Because each source supplies different log categories, list the events your security team must see first, then check which source provides them. Many gaps appear when teams assume one source covers identity, control plane and resource logs alike.

Agents on Azure virtual machines are a separate path. The Wazuh agent collects host-level data from inside the operating system, including installed software, file integrity changes, system logs and local security events. It does not replace the azure-logs module, which reads cloud activity through Azure APIs. Many teams run both, so decide which layer answers each question before you build. Agent deployment also depends on your own inventory, patching and hardening standards for those virtual machines, and those standards should be settled before the collection work starts.

Before you start, confirm the exact azure-logs module options for the Wazuh release you run. Option names, supported log categories and authentication settings can change between releases, and the current release line is 4.14, so check the azure-logs section of the Wazuh documentation for your specific version. Record that version in your design notes along with the Azure tenants and subscriptions in scope, the owner of the Azure access and the retention period set on the Azure side. Those three records will guide the rest of the implementation and make later upgrades easier to plan.

What you need in place before connecting Azure to Wazuh

The azure-logs integration depends on a working Wazuh 4.14 deployment and on Azure access that lets your team create the identities the module authenticates with. Network reachability, TLS trust and proxy handling then determine whether the Wazuh server can reach Azure at all. Work through these items before any Azure configuration starts.

Wazuh 4.14 core components

Confirm that the Wazuh indexer, Wazuh server and Wazuh dashboard are installed and healthy on the 4.14 release line. The indexer stores alerts and the server decodes and analyzes incoming data, so the server carries the Azure integration and its version and health matter most. Check the release notes for the patch level you intend to deploy, for example 4.14.9, released on 14 October 2026, and record the version of every component so the module documentation matches your installation.

Azure tenant and subscription access

Identify who can create app registrations or other identities in the Microsoft Entra tenant, and who can assign roles on the subscriptions or resources that hold the logs. The exact permissions the azure-logs module needs must come from its documentation and be confirmed by your team before anything is created, not inferred from general Azure roles. Request these approvals early, because tenant-level changes are often the slowest step in the sequence.

Network paths to Azure endpoints

The Wazuh server reaches Azure to pull logs, so outbound connectivity from that host is the path to verify. List the Azure endpoints the module documentation names for your chosen collection method, then check DNS resolution, egress firewall rules and any network security controls between the server and those endpoints. Test from the Wazuh server itself, since a test from a workstation proves little about the path the server uses.

TLS trust and proxy settings

Azure endpoints are reached over TLS, so the Wazuh server must trust the certificate chain those endpoints present, including any inspection certificate your network applies. If outbound traffic goes through an HTTP proxy, record the proxy address, its authentication method and the destinations it may bypass, then confirm how the azure-logs module accepts proxy settings. Certificate rewriting and proxy misconfiguration can produce failures that look like permission errors, so test both separately.

Agreed log scope and ownership

Decide which Azure log sources the integration will collect, who owns each source, and how long the resulting alerts should remain in the Wazuh indexer. The collection method you select changes the access and network requirements, so settle it before identities are created. Record a named owner for the tenant, the subscriptions and the Wazuh server, so that approvals, credential rotation and incident contacts are assigned before go-live.

Log Analytics, Microsoft Graph or Azure Storage: which source fits your Azure logs

Decide the source one log category at a time. Azure does not keep all of its logs in one place, and each source holds different data. Platform resource logs typically land in a Log Analytics workspace, identity and directory data is reached through Microsoft Graph, and exported logs can be written as files to Azure Storage blob containers. Start by listing the categories your detection and audit requirements need, such as sign-in activity, administrative changes or resource activity. For each one, note the subscription, tenant or resource it comes from. That list drives every other decision in this section, and it is the fastest way to find out which categories need a different path from the rest.

Each source also asks for a different identity and different permissions, and this is where most approval delays happen. Reading from a workspace requires an identity with a read role scoped to that workspace. Microsoft Graph access uses permissions that a tenant administrator must consent to, and those can be broad, so your security owner should review each one against the categories you selected. Blob storage access depends on how the export is configured and which authentication methods the module supports. Confirm the exact role names, permission identifiers and authentication options in the azure-logs module documentation before you request approval, and record who approves each one.

Latency and cost follow the path you choose. A workspace query reflects events as Azure ingests them. A storage export adds stages: the diagnostic configuration, the write to blob storage and the module's polling cycle. Graph data follows its own collection cadence and query limits. Ask your Azure team for the current ingestion and retention charges for each category you plan to forward, along with any export or storage transaction costs. Azure bills these on usage, so they recur for as long as the data flows. On the Wazuh side, ask your implementation partner to size indexer storage from the event volume you measure during a pilot. In the quote, ask for one-time setup effort and recurring run costs separately, and state which party owns each Azure bill.

Before you commit, run a short pilot in a non-production subscription. Pick one category per source, confirm that the module supports it and how it is queried, and measure the delay between an event in Azure and its appearance in the Wazuh dashboard. Check that your alert rules fire on test activity. Keep a decision table with the category, source, identity, observed latency, owner and cost owner for each row. Some activity inside virtual machines may be better covered by a Wazuh agent on the instance, which is a separate decision. Record any category without a confirmed module path as an open gap for your Azure and security teams to resolve before go-live.

How to configure the azure-logs module in sequence

This sequence takes a Wazuh server from a confirmed module setup to a working Azure log feed. Each step produces a record you can check before moving on, from the version and identifiers to the first events visible in the indexer and dashboard. Work through it in order, because later steps depend on the identity and identifiers created earlier.

  1. Confirm the server version and module availability

    The Wazuh platform owner checks the exact server version against the Wazuh release notes for the 4.14 line and confirms that the azure-logs module is documented for that version. Record the patch release you run, because patch releases in this line have arrived roughly every one to two months. Also confirm which Azure source the module version supports for your use case: Log Analytics, Microsoft Graph or Azure Storage. Check: a written record of the server version, patch level and chosen source, approved by the owner of the Wazuh deployment before any Azure work begins.

  2. Create the Azure identity with least privilege

    An Azure administrator creates a dedicated identity for the module, using the identity type the module documentation describes for the chosen source. Grant only the read access that source requires, scoped to the subscription, workspace or storage account being collected, and avoid broad owner or contributor roles on the whole tenant. Store the credential in your approved secrets store, not in a shared document. Check: a test authentication with the new identity succeeds, and the role assignment appears in your Azure access review with a named owner.

  3. Record tenant, subscription and workspace identifiers

    Gather the identifiers the module configuration needs: the tenant ID, the subscription ID and, depending on the source, the Log Analytics workspace ID or the storage account name and container. Copy each value from the Azure portal rather than from a ticket or a chat message, and note which resource each value belongs to. Keep the set in your change record with the identity name. Check: a second person compares every identifier against the Azure portal and signs off on the record before the configuration step starts.

  4. Add the azure-logs configuration to the Wazuh server

    A Wazuh server administrator adds the azure-logs block to the manager configuration file, using the parameter names from the module documentation for your server version. Enter the identifiers from the previous step and reference the stored credential the way the documentation describes, so no secret sits in plain text in the file. Run the configuration test the documentation provides before any restart. Check: the configuration test completes with no syntax or parameter errors, and the change is saved in version control or your configuration backup.

  5. Restart the manager and read the module log

    The administrator restarts the Wazuh manager service in the way the module documentation requires for the change to take effect, during a window your operations team has approved. Then the administrator reads the manager log for messages from the azure-logs module. Startup problems usually show up here first, including credential failures and wrong identifiers. Check: a log line that shows successful authentication against Azure and a first collection run, with no repeated error messages in the same window.

  6. Verify the first events reach the indexer

    Confirm that Azure events are arriving in the Wazuh indexer, then find them in the Wazuh dashboard using the index pattern for the module. Generate a known test event in a non-production part of the Azure environment, such as a sign-in or a resource change made for testing, and look for it in the dashboard. This is illustrative: pick an event type your organization is permitted to create. Check: the test event appears in the dashboard, and the record shows which index it landed in and how long collection took, as observed in your environment.

  7. Document the baseline for operations

    The platform owner writes a short runbook entry that captures the working state: server version, patch level, module source, identifiers, the identity name and its credential rotation owner, and the index where events land. Add the test event used for verification so future staff can repeat the check. Set a review point for the Azure identity so its permissions and secret expiry are looked at on a schedule your team sets. Check: the runbook is stored with the other Wazuh records and an operator who did not perform the setup can follow it to confirm events are still arriving.

How Azure fields and identities map to Wazuh data

This table maps each Azure data type to the collection path that brings it into Wazuh, the decoder or rule group that parses it, and the identifiers used to attribute alerts. Entries are limited to what the azure-logs module documentation describes, and any field not confirmed there is marked for verification in your own environment. Read each row before choosing a collection path, since the same Azure data can arrive through different routes.

Azure data typeCollection sourceDecoder and rule groupIdentifier and identity field
Entra ID sign-in eventsMicrosoft Graph collection pathConfirm names in the azure-logs module documentationUser and source IP fields: verify in your environment
Entra ID directory audit eventsMicrosoft Graph collection pathConfirm names in the azure-logs module documentationInitiating user field: verify in your environment
Azure resource activity logsLog Analytics workspace query pathConfirm names in the azure-logs module documentationResource ID and caller field: verify in your environment
Diagnostic logs from Azure resourcesLog Analytics or Storage export, depending on configurationConfirm the decoder and rule group for each log categoryResource identifier and identity field: verify per category
Exported logs in blob containersAzure Storage container read pathConfirm the decoder and rule group for each container formatBlob path or resource identifier: verify in your environment
Virtual machine OS and security eventsWazuh agent installed on the virtual machineHandled by agent-side decoders and rulesAgent ID and hostname; user field from endpoint logs

When to install Wazuh agents on Azure virtual machines instead

Install Wazuh agents on an Azure virtual machine when you need host-level visibility that the azure-logs module cannot provide. The module collects control-plane and platform logs from Azure services, so it tells you what happened to a resource in your subscription. An agent on the VM tells you what happened inside the operating system: file integrity changes, process activity, local logs and the software inventory that Wazuh uses for vulnerability detection. If a workload on the VM is a regulated system of record, or if an attacker could act from inside the guest, you will usually need the agent even when the module is already running.

The trade-off is operational. Each agent must reach the Wazuh server over the network, so the VM's network security group, route table and any private DNS or firewall path must allow that traffic before the agent is useful. Every host then needs a deployment method, a way to upgrade the agent in step with the server, and an enrollment process that defines how new VMs register and how retired VMs are removed. Scale-set and autoscaling workloads add to this, because instances appear and disappear without manual steps. Ask your team who owns the agent lifecycle, and whether that owner can keep pace with the number of VMs in scope.

Agents and module collection usually complement each other rather than competing for the same data. The module brings in subscription-level events such as configuration changes to Azure resources, while agents bring in what happens on the guest. Plan for both where the workload justifies it, and document which source covers which detection use case so that a gap in one does not go unnoticed. Avoid building the design around one source alone.

Operating system matters because the Wazuh documentation describes agents for Linux, Windows, macOS, Solaris, AIX and HP-UX. Most Azure VM estates are Linux or Windows, and those are the common cases to confirm first. Before committing, check the exact distribution and version you run against the agent compatibility notes for your Wazuh release, and confirm support for any older or specialized images. A VM on an unsupported platform will need a different monitoring approach, such as syslog forwarding from the host or an agentless method, and that choice should be recorded in the design rather than discovered during rollout.

Securing the Azure connection and the Wazuh side

The Azure collection path is only as safe as the identity that reads Azure data and the Wazuh stack that stores it. These cards cover the Azure identity, the secrets that unlock it, the encryption on each hop, and who can see the alerts once they land. The dashboard login is handled separately through Wazuh's SAML single sign-on guides, so it is a distinct control from the Azure credentials.

Least-privilege identity for the Azure source

Create a dedicated identity for the azure-logs module rather than reusing an administrator account or a shared automation principal. Grant only the read roles the chosen collection method needs, such as reading diagnostic logs from a Log Analytics workspace, reading Microsoft Graph audit data, or reading blobs in one storage account. Check the role assignments after every change, because a broad role at subscription scope is the most common way this integration ends up over-privileged.

Scoped access to subscriptions and workspaces

Limit the identity to the specific subscriptions, workspaces or storage containers that hold the logs you have agreed to monitor. If a Log Analytics workspace or a storage container collects logs from several business units, decide whether those units belong in the same Wazuh scope before granting access. Review the scope list with the Azure owners of each subscription, and record which resources are in scope so that later additions go through the same review.

Secret storage and rotation for client credentials

The client secret or certificate used by the module should live in a secrets store with access logging, not in plain-text configuration files copied between servers. Set an expiry date for every credential and document who rotates it, how the Wazuh configuration is updated, and how the service is restarted or validated afterward. Confirm with your Azure team whether certificate-based authentication is available in your tenant before you choose a secret-based design.

TLS on the Wazuh server and dashboard

Encrypt agent-to-server traffic, API calls and dashboard sessions with TLS certificates issued by a CA your team trusts. Check that the certificates cover the names analysts and agents actually use, and plan renewal before expiry so that collection does not fail silently. Confirm the current certificate and port guidance in the Wazuh documentation for your release line, since these settings change between versions.

Role-based access inside Wazuh

Define Wazuh roles and security policies so that analysts see only the agents, alerts and dashboards their duties require. Azure alerts often include subscription names, user identities and resource configuration, so a tier-one analyst may need a narrower view than a platform administrator. Test each role by logging in as a representative user and confirming which agent groups and index patterns appear before you go live.

Protecting Azure data in transit and at rest

Confirm that log data is encrypted between Azure APIs and the Wazuh collector, and between the Wazuh server and the indexer. Then check how the indexer stores alerts and archives on disk, including who can read the data directory and whether volume-level encryption is required by your policy. Ask your security team which retention and access rules apply, because Azure audit data frequently contains personal information.

How to test Azure ingestion and alerting before go-live

The first check before go-live is a known-activity test. In a non-production Azure tenant or subscription, generate a defined set of events, with one event for each log category you plan to collect in the azure-logs module, such as a sign-in, an activity log operation and a resource configuration change. Record the time you generated each event, the actor, the target resource and the operation name. Then confirm in the Wazuh indexer that each event arrived and carries the expected source fields, such as the log category, the tenant identifier and the operation. Field names depend on the decoders shipped with your Wazuh version, so check them against the decoder files in that version rather than against older examples or blog posts.

Next, confirm that the decoders and rules fire. An event can be stored in the index without being parsed, and an unparsed event will not trigger any rule. Check that the decoded fields are populated for each test event. Then trigger a case a rule in your chosen rule set is designed to flag, such as a change to a sensitive resource in the test subscription, and confirm the rule ID, level and description on the resulting alert. If an expected rule stays silent, work through the likely causes in order: whether the event was decoded, whether the decoded values match the rule conditions, and whether the rule is enabled in your deployment. Record any gaps rather than adjusting thresholds during the test.

Then confirm that a sample alert reaches the Wazuh dashboard. Check that the alert appears under the index pattern your analysts use, that it can be filtered by the tenant and log category fields, and that a user with the analyst role can see it. Compare the generation timestamp you recorded with the timestamp shown in the dashboard to confirm that time handling is consistent. Record the observed delay between generation and display for each category. Do not treat this delay as a target. Agree the acceptable value with the security operations owner before go-live, because it depends on how the alerts will be worked.

The final check is failure behavior. In the non-production tenant, revoke or disable the credential that the module uses: the app registration secret or certificate for Microsoft Graph or Log Analytics access, or the storage access for an Azure Storage collection, depending on the method you chose. Generate new activity and observe what happens. Look for the error in the Wazuh server logs, confirm whether collection stops silently, and check whether any health signal or alert tells operations that collection has failed. Restore the credential, confirm that collection resumes, and determine whether the events from the outage window are collected or lost. Document the result, because that window is a monitoring blind spot that the operations team must know about.

Keep the results in a test script or table with one row per log category. Include the generation action, the expected source fields, the expected decoder output, the expected rule IDs, the expected dashboard view, and the observed failure behavior. Store it with the configuration under version control so the same test can be repeated. Rerun the full sequence after any upgrade and after each Wazuh patch release you apply, because decoders and rules can change between releases. Comparing the new results with the recorded baseline shows quickly whether an upgrade broke parsing, detection or alert delivery.

Common Azure integration failures and how to fix them

This table lists the failures teams most often hit when connecting Azure sources to Wazuh, with the likely cause and a check to run for each. Work through the rows in order, since an authentication problem can hide later failures. Confirm the exact field names, permissions and configuration keys against the azure-logs module documentation for your Wazuh version.

FailureLikely causeCheck or fix
Authentication errorsWrong tenant ID or client ID in the module configuration, or a secret copied from the wrong app registration.Compare the tenant and client IDs with the app registration in Entra ID. Review the Wazuh server log for the token request error.
Missing source permissionsThe app registration lacks the read role or API permission for the chosen source, such as Log Analytics or Microsoft Graph.Check the role assignments and API permissions in Azure against the module documentation. Grant admin consent where the source requires it, then restart the module.
Expired or unrotated secretsThe client secret expired or was rotated in Azure but not updated in the Wazuh configuration.Check the secret expiry date in the app registration. Create a new secret, update the configuration, and confirm the next pull succeeds in the logs.
No events from wrong targetThe module points at a different Log Analytics workspace, storage container or tenant than the one holding the logs.Confirm the workspace ID or container name against the resource that receives the diagnostic settings. Run a test query in Azure to confirm the data exists there.
Network or proxy blocksThe Wazuh server cannot reach Microsoft login and Azure API endpoints because of firewall rules or a proxy that is not configured.Test outbound HTTPS from the Wazuh server to the login and API hosts used by the module. Check the proxy settings and the module timeout errors in the server log.
Alerts missing after decodingRules match field names that the decoder does not produce for the Azure log format in use.Run sample events through wazuh-logtest to see the decoded fields. Adjust the custom rule conditions to match those field names.
Agent enrollment failures on VMsThe agent cannot reach the Wazuh manager on the enrollment port, the VM network security group blocks it, or the registration password is wrong.Check the agent log on the VM for connection and authentication errors. Confirm the network security group rules and the manager address, then re-enroll the agent.

Questions teams ask before connecting Azure to Wazuh

Is the Wazuh software itself free to use for Azure monitoring?

Yes, the self-hosted Wazuh software is open source and carries no license fee. It is distributed under the GNU General Public License version 2, with an exception for linking with OpenSSL.

Your spending therefore sits in the infrastructure that runs it, the people who configure it and any support you buy. Plan for hosts for the Wazuh indexer, server and dashboard, storage for alerts and archived events, and the engineering time spent on Azure app registrations, identities and collection settings.

Azure bills separately for the services you enable, such as a Log Analytics workspace or a Storage account. Those charges depend on the log volume and retention you choose, so ask your Azure administrator to model them before the build. Wazuh Cloud is a separate managed service with its own plans, so confirm which model you are pricing. A DeployOpen quote follows from the written scope.

What drives the effort of connecting Azure to Wazuh?

The main drivers are how many Azure sources you connect, which collection method each source needs, and how much of the Wazuh side must change to handle them.

On the Azure side, effort grows with the number of subscriptions and tenants, the identities and permissions you must request, the storage accounts or workspaces that hold the logs, and the diagnostic settings that export them.

On the Wazuh side, effort depends on the azure-logs module configuration, the decoders and rules you need to review, the dashboards your analysts will use, and whether alerts must reach other tools.

Compliance-sensitive environments add evidence collection and review cycles. Ask any partner to list each source, the collection method chosen for it and the assumptions behind each step, so you can compare quotes on the same basis.

How long does an Azure to Wazuh integration take?

The timeline depends on the scope you agree in writing, and DeployOpen gives timing only within that written scope.

A single tenant with one or two log sources and an existing Wazuh deployment is a much smaller job than several subscriptions across multiple tenants, each with its own approval path.

Timing is often held back by things outside the build itself: identity approvals from your Entra ID administrators, firewall change windows, and the time needed to confirm that events arrive and decode correctly.

Before you ask for a timeline, confirm which Azure sources are in scope, whether a Wazuh environment already exists and who approves changes. A fixed-scope document should state the phases, deliverables, your responsibilities and the points where your team must act.

What must our team provide before an Azure integration starts?

Start with Azure access and approvals: an account with enough rights to review and create the required resources, a named owner for each subscription, and written approval for the identities the integration will use.

Expect to provide the app registration or service identity approach your Entra ID administrators accept, along with the permission scopes they sign off.

Next, confirm network paths: outbound connectivity from the collection point to Azure endpoints, and routes between agents, the Wazuh server and the indexer.

You also need a Wazuh environment, either an existing deployment you control or one planned in the same engagement, with capacity for the expected log volume.

Finally, name the people who will review alerts and approve changes, because collection only has value when someone acts on what it finds.

Can an internal team connect Azure to Wazuh without outside help?

Yes, an internal team with Azure, identity and Linux skills can do the work, and the Wazuh documentation covers the module and deployment steps. The questions to answer honestly are capacity and repeatability.

Does someone have time to build, test and document the collection while keeping the existing platform running? Does the team know how Azure diagnostic exports, Entra ID permissions and Wazuh decoders behave when something fails?

A useful test is a short internal pilot on one non-production source. If the team can show events arriving, decoding and triggering the rules they expect, they can continue.

If not, a scoped engagement can cover the gaps, with tested configuration, runbooks and knowledge transfer written into the deliverables.

Will Wazuh upgrades break the Azure integration?

They can, so plan for it. Upgrades to the Wazuh server, indexer, dashboard and agents change how components communicate, and changes to modules, decoders or rules can alter how Azure events are parsed or alerted on.

Changes on the Azure side, such as altered diagnostic settings or updated identity permissions, can also stop collection without any Wazuh change.

Wazuh has shipped several patch releases in the 4.14 line during 2026, so your team should set a routine for reviewing release notes and testing in a non-production copy before applying changes.

Ask for the upgrade order, backup steps and a collection test after each change. Keep the integration configuration, credentials and custom rules in version control so they can be restored and reapplied after an upgrade.

When should we put Wazuh agents on Azure virtual machines?

Put agents on virtual machines when you need host-level telemetry, such as file integrity monitoring, process activity, software inventory for vulnerability detection or configuration assessment from the operating system itself.

The azure-logs module collects control-plane and service logs, which is a different data set. Many environments need both: the module for Azure activity and the agent for the workloads running inside it.

Agent work depends on your operating system mix, the deployment method you choose and how many machines must be covered.

Confirm that each virtual machine can reach the Wazuh server and that your change process allows agent installation. Wazuh documents its supported agent platforms, so check the current list for each operating system before planning.

How DeployOpen scopes and delivers the Azure integration

DeployOpen plans, builds, documents and supports the Wazuh Azure integration inside your own Azure subscriptions and networks, with the collection method chosen before configuration starts. Engagements are fixed-scope, so the written scope sets which sources are collected, which tenants and subscriptions are covered and what the handover includes.

How we scope

  • The written scope names each Azure source to collect, such as Log Analytics, Microsoft Graph or Azure Storage.
  • We confirm which tenants, subscriptions and resource groups are in scope, and which virtual machines need agents.
  • The scope states where Wazuh runs, which Azure identities the collector uses and what permissions each one holds.

How we build

  • We create the Azure app registration or service identity with read-only access for each chosen collection method.
  • We configure the azure-logs module for each source, then confirm decoders and rules parse the events correctly.
  • We test ingestion with sample events and confirm alerts reach the Wazuh dashboard before production use.

How we hand over

  • Documentation covers each collection path, the credentials it uses, their renewal owners and where logs are stored.
  • The runbook explains how to add subscriptions, rotate secrets and troubleshoot a source that stops sending events.
  • Your administrators receive the configuration, rule and dashboard changes in a form they can maintain without us.

How we support

  • Ongoing support, upgrades and reviews for the Azure integration can be covered by a retainer agreed in writing.
  • Upgrade planning checks each Wazuh release note against your Azure collection settings before any rollout begins.
  • Periodic reviews confirm that credentials, permissions and ingestion volume still match the approved written scope.

Sources and further reading

Talk to our team.

Tell us what you're working on, whether it's a deployment, an audit, a security test or a cyber range. You'll speak with an engineer who can help you scope it.

  • 30-minute call: free, with no obligation.
  • NDA on request: we can sign before you share details.
  • Clear next steps: a scope and plan after the call.