Delen via


Een versleutelingscertificaat instellen en geheimen versleutelen in Windows-clusters

In dit artikel wordt beschreven hoe u een versleutelingscertificaat instelt en gebruikt om geheimen op Windows-clusters te versleutelen. Zie Voor Linux-clusters een versleutelingscertificaat instellen en geheimen versleutelen op Linux-clusters.

Azure Key Vault wordt hier gebruikt als een veilige opslaglocatie voor certificaten en als een manier om certificaten te installeren op Service Fabric-clusters in Azure. Als u niet implementeert in Azure, hoeft u Key Vault niet te gebruiken om geheimen in Service Fabric-toepassingen te beheren. Het gebruik van geheimen in een toepassing is echter platformneutraal in de cloud, zodat toepassingen overal kunnen worden geïmplementeerd in een cluster dat wordt gehost.

Een certificaat voor gegevenscodering verkrijgen

Een certificaat voor gegevenscodering wordt strikt gebruikt voor versleuteling en ontsleuteling van parameters in de Settings.xml- en omgevingsvariabelen van een service in de ServiceManifest.xml van een service. Het wordt niet gebruikt voor verificatie of ondertekening van coderingstekst. Het certificaat moet voldoen aan de volgende vereisten:

  • Het certificaat moet een persoonlijke sleutel bevatten.

  • Het certificaat moet worden gemaakt voor sleuteluitwisseling, exporteerbaar naar een PFX-bestand (Personal Information Exchange).

  • Het gebruik van de certificaatsleutel moet gegevenscodering (10) bevatten en mag geen serververificatie of clientverificatie bevatten.

    Wanneer u bijvoorbeeld een zelfondertekend certificaat maakt met powerShell, moet de KeyUsage vlag zijn ingesteld op DataEncipherment:

    New-SelfSignedCertificate -Type DocumentEncryptionCert -KeyUsage DataEncipherment -Subject mydataenciphermentcert -Provider 'Microsoft Enhanced Cryptographic Provider v1.0'
    

Het certificaat installeren in uw cluster

Dit certificaat moet op elk knooppunt in het cluster worden geïnstalleerd. Zie hoe u een cluster maakt met Behulp van Azure Resource Manager voor installatie-instructies.

Toepassingsgeheimen versleutelen

De volgende PowerShell-opdracht wordt gebruikt om een geheim te versleutelen. Met deze opdracht wordt alleen de waarde versleuteld; de coderingstekst wordt niet ondertekend. U moet hetzelfde coderingscertificaat gebruiken dat in uw cluster is geïnstalleerd om coderingstekst voor geheime waarden te produceren:

Invoke-ServiceFabricEncryptText -CertStore -CertThumbprint "<thumbprint>" -Text "mysecret" -StoreLocation CurrentUser -StoreName My

De resulterende base-64 gecodeerde tekenreeks bevat zowel de geheime coderingstekst als informatie over het certificaat dat is gebruikt om het te versleutelen.

Volgende stappen

Meer informatie over het opgeven van versleutelde geheimen in een toepassing.