# Configuration Compliance Tenable Nessus avec Microsoft Azure
## Objectif
Cette documentation explique comment configurer **Tenable Nessus** pour réaliser des **audits de conformité Azure** via l’API Microsoft Graph / Azure Resource Manager.
Elle couvre :
- Création de l’application Azure dédiée à Nessus
- Attribution des permissions requises
- Création du secret d’authentification
- Récupération des identifiants Azure
- Configuration dans Nessus
- Ajout du rôle **SharePoint Administrator** (si requis)
---
# Prérequis
## Côté Azure
- Compte administrateur Azure
- Accès à **Microsoft Entra ID** (ancien Azure AD)
- Accès au tenant Azure
- Droits pour créer une App Registration
- Possibilité d’accorder le consentement admin
## Côté Nessus
- Nessus Professional / Expert avec support Compliance
- Plugin feed à jour
- Accès sortant HTTPS vers Microsoft Azure APIs
---
# Architecture
Nessus se connecte à Azure via :
- Microsoft Graph API
- Azure Resource Manager API
Authentification via :
- Tenant ID
- Client ID
- Client Secret
---
# Étape 1 — Créer l’application Azure pour Nessus
## Aller dans :
```text
Azure Portal > Microsoft Entra ID > App registrations
````
## Cliquer :
```text
New registration
```
## Nom recommandé :
```text
APP-TENABLE-NESSUS-COMPLIANCE
```
## Supported account types :
```text
Accounts in this organizational directory only
```
## Redirect URI :
Laisser vide.
## Valider :
```text
Register
```
---
# Étape 2 — Récupérer les identifiants
Après création, noter :
## Application (client) ID
```text
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
```
## Directory (tenant) ID
```text
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
```
---
# Étape 3 — Créer le secret
## Aller dans :
```text
Certificates & secrets
```
## Ajouter :
```text
New client secret
```
### Nom :
```text
NessusSecret
```
### Expiration :
Recommandé :
```text
24 months
```
## Copier immédiatement :
```text
Value
```
⚠️ Le secret ne sera plus visible après fermeture.
---
# Étape 4 — Ajouter les permissions API
## Aller dans :
```text
API Permissions
```
## Ajouter permissions :
```text
Add permission
```
## Sélectionner :
```text
Microsoft Graph
```
## Type :
```text
Application permissions
```
## Ajouter minimum :
```text
Directory.Read.All
Policy.Read.All
User.Read.All
Group.Read.All
RoleManagement.Read.Directory
AuditLog.Read.All
Reports.Read.All
Organization.Read.All
```
---
# Étape 5 — Ajouter permissions Azure Resource Manager
Ajouter également :
```text
Azure Service Management
```
Puis :
```text
user_impersonation
```
(si demandé selon version Nessus)
---
# Étape 6 — Grant Admin Consent
Cliquer :
```text
Grant admin consent for <Tenant>
```
Valider.
Le statut doit devenir :
```text
Granted for <TenantName>
```
---
# Étape 7 — Donner accès lecture Azure Subscription
## Aller dans :
```text
Subscriptions > <Votre Subscription>
```
## IAM :
```text
Access control (IAM)
```
## Ajouter rôle :
```text
Reader
```
## Assigner à :
```text
APP-TENABLE-NESSUS-COMPLIANCE
```
---
# Étape 8 — Ajouter rôle SharePoint Administrator (important)
Certaines vérifications Microsoft 365 / SharePoint nécessitent ce rôle.
## Aller dans :
```text
Microsoft Entra ID > Roles and administrators
```
## Chercher :
```text
SharePoint Administrator
```
## Cliquer :
```text
Add assignments
```
## Sélectionner :
```text
APP-TENABLE-NESSUS-COMPLIANCE
```
## Valider.
---
# Étape 9 — Configuration dans Nessus
Créer un scan :
```text
New Scan > Compliance
```
## Choisir audit :
```text
Microsoft Azure
```
ou fichier :
```text
azure.audit
```
(selon version)
---
# Credentials à saisir
## Azure Tenant ID
```text
<tenant-id>
```
## Client ID
```text
<application-id>
```
## Client Secret
```text
<secret>
```
## Subscription ID (si demandé)
```text
<subscription-id>
```
---
# Étape 10 — Lancer le scan
Exécuter le scan.
Nessus interrogera Azure et retournera :
* MFA policies
* Roles excessifs
* Comptes admins
* Storage non conforme
* Security Center settings
* SharePoint / M365 settings (si rôle ajouté)
---
# Vérifications si erreur
## Unauthorized / 403
Vérifier :
* Admin consent accordé
* Permissions Graph
* Role Reader
* SharePoint Administrator
## Invalid client secret
Regénérer secret.
## No subscription found
Vérifier Reader sur subscription.
---
# Bonnes pratiques
## Secret dédié
Créer un secret réservé Nessus.
## Expiration
Mettre reminder avant expiration.
## Least Privilege
Utiliser uniquement Reader + rôles requis.
## Monitoring
Tracer les connexions de l’application dans :
```text
Entra ID > Sign-in logs
```
---
# Permissions recommandées récapitulatif
```text
Directory.Read.All
Policy.Read.All
User.Read.All
Group.Read.All
RoleManagement.Read.Directory
AuditLog.Read.All
Reports.Read.All
Organization.Read.All
```
---
# Nommage recommandé
```text
APP-TENABLE-NESSUS-COMPLIANCE
SEC-NESSUS-AZURE
```
---
# Résultat final attendu
Nessus doit pouvoir :
✅ Lire Azure Tenant
✅ Lire Security Policies
✅ Lire RBAC
✅ Lire SharePoint Config
✅ Lancer audit compliance complet
---
# Sources officielles Tenable
Documentation basée sur :
* Tenable Azure Nessus Audit
* Configure Azure Compliance Audit
* Azure IO Audit
* Microsoft Graph Permissions
---