Back-ups maken van Certificate Services

Hier volgt een scenario waarin wordt getoond hoe u de back-upfuncties van Certificate Services kunt gebruiken om een back-up te maken van een Certificate Services-database en de bijbehorende bestanden.

  1. Laad de Certadm.dll-bibliotheek in het geheugen (door LoadLibrary-aan te roepen).
  2. Haal het adres op van elk van de benodigde functies in Certadm.dll (door middel van GetProcAddress). Gebruik deze adressen bij het aanroepen van de functies in de resterende stappen.
  3. Roep CertSrvIsServerOnline aan om te bepalen of Certificate Services online is. Certificate Services moet online zijn om de back-upbewerkingen te laten slagen.
  4. Roep CertSrvBackupPrepare aan om een back-upsessie te starten. De resulterende back-upcontexthandle voor Certificate Services wordt door veel van de andere back-upfuncties gebruikt.
  5. Roep CertSrvRestoreGetDatabaseLocations aan om de hersteltoewijzing te bepalen. De herstelkaart bevat de paden die moeten worden gebruikt bij het herstellen van de back-up. Sla de gegevens op die zijn opgehaald door CertSrvRestoreGetDatabaseLocations op een toepassingsspecifieke locatie.
  6. Roep CertSrvBackupGetDatabaseNames aan om de namen van de databasebestanden te bepalen waarvan een back-up moet worden gemaakt. Voer voor elk van deze bestanden stap 7 tot en met 9 uit.
  7. Roep CertSrvBackupOpenFile aan om het bestand te openen voor back-up.
  8. Roep CertSrvBackupRead- aan om een deel van bytes uit het bestand te lezen en roep vervolgens een toepassingsspecifieke routine aan om de bytes op een back-upmedium op te slaan. Herhaal deze stap totdat een back-up van alle bytes in het bestand wordt gemaakt.
  9. Roep CertSrvBackupClose- aan om het bestand te sluiten.
  10. Roep CertSrvBackupGetBackupLogs aan om de namen van de logboekbestanden te bepalen waarvan een back-up moet worden gemaakt. Voer voor elk van deze bestanden stap 7 tot en met 9 uit.
  11. Roep CertSrvBackupTruncateLogs aan om de logboekbestanden te afkappen waarvan een back-up is gemaakt in stap 6 en 10. Deze stap is optioneel; roep echter alleen CertSrvBackupTruncateLogs aan als van alle bestanden die zijn geretourneerd door CertSrvBackupGetDatabaseNames en CertSrvBackupGetBackupLogs, een back-up is gemaakt (anders mislukt de herstelbewerking). Raadpleeg de referentiepagina CertSrvBackupTruncateLogs voor meer informatie.
  12. Roep CertSrvBackupGetDynamicFileList aan om de namen van de niet-databasebestanden te bepalen waarvan een back-up moet worden gemaakt. Deze bestanden worden alleen door de functie geïdentificeerd en moeten op een andere wijze worden geback-upt.
  13. Maak een back-up van de dynamische bestanden die in stap 12 zijn geïdentificeerd, met behulp van routines gescheiden van Certadm.dll.
  14. Roep CertSrvBackupEnd- aan om de back-upsessie te beëindigen.
  15. Roep CertSrvBackupFree indien nodig aan om buffers vrij te geven die zijn toegewezen door bepaalde Certificate Services-back-upfuncties. Aanroepen naar CertSrvBackupGetBackupLogs, CertSrvBackupGetDatabaseNamesen CertSrvBackupGetDynamicFileList wijzen buffers toe die kunnen worden vrijgemaakt door een aanroep naar CertSrvBackupFree.
  16. Laat de Certadm.dll resources los door FreeLibrary-aan te roepen.

Zie De bevoegdheden voor back-up en herstelrechten instellenvoor meer informatie over de bevoegdheden die nodig zijn om een back-up te maken van de Certificate Services-database en bijbehorende bestanden.