Backup di un server Active Directory
Un backup del server Active Directory richiede di eseguire il backup del database e dei log delle transazioni. Questo argomento illustra come un'applicazione di backup esegue il backup del servizio Active Directory.
Il chiamante di queste funzioni di backup deve avere il privilegio edizione Standard_BACKUP_NAME. È possibile usare la funzione DsSetAuthIdentity per impostare il contesto di sicurezza in cui vengono chiamate le funzioni di backup/ripristino della directory.
Per eseguire il backup di un server Active Directory, seguire questa procedura
- Chiamare la funzione DsIsNTDSOnline per determinare se Dominio di Active Directory Servizi sono in esecuzione.
- Se Dominio di Active Directory Services è in esecuzione, chiamare la funzione DsBackupPrepare per inizializzare un handle di contesto di backup. Se Dominio di Active Directory Servizi non è in esecuzione, non è possibile eseguirne il backup e l'applicazione di backup deve non riuscire l'operazione di backup.
- Chiamare la funzione DsBackupGetDatabaseNames per ottenere un elenco di file di cui eseguire il backup. Per rilasciare la memoria restituita da questa funzione, chiamare la funzione DsBackupFree.
- Per ogni nome nell'elenco di file restituito, chiamare la funzione DsBackupOpenFile seguita da chiamate ripetute alla funzione DsBackupRead fino a quando l'intero file non è stato letto. Al termine della lettura del file, chiamare la funzione DsBackupClose per chiuderla.
- Dopo il backup di tutti i file di database, chiamare la funzione DsBackupGetBackupLogs per ottenere un elenco di log delle transazioni. Questo elenco viene gestito esattamente come l'elenco dei file di database.
- Al termine del backup del log delle transazioni, chiamare la funzione DsBackupTruncateLogs per eliminare tutti i log delle transazioni di cui è stato eseguito il backup.
- Salvare il contenuto del token di scadenza fornito dalla funzione DsBackupPrepare. Questa operazione può essere salvata in un file o in un'altra memoria persistente. Questo token deve essere passato alla funzione DsRestorePrepare per avviare un'operazione di ripristino.
- Liberare la memoria per il token di scadenza passando il puntatore del token alla funzione DsBackupFree.
- Chiamare infine la funzione DsBackupEnd per rilasciare tutte le risorse associate all'handle del contesto di backup.