Sdílet prostřednictvím


Nastavení šifrovacího certifikátu a šifrování tajných kódů v clusterech s Windows

Tento článek popisuje, jak nastavit šifrovací certifikát a použít ho k šifrování tajných kódů v clusterech s Windows. Informace o clusterech s Linuxem najdete v tématu Nastavení šifrovacího certifikátu a šifrování tajných kódů v clusterech s Linuxem.

Azure Key Vault se zde používá jako bezpečné úložiště pro certifikáty a jako způsob, jak získat certifikáty nainstalované v clusterech Service Fabric v Azure. Pokud nenasazujete do Azure, nemusíte ke správě tajných kódů v aplikacích Service Fabric používat Key Vault. Použití tajných kódů v aplikaci je však nezávislé na cloudové platformě, aby bylo možné aplikace nasadit do clusteru hostovaného kdekoli.

Získání certifikátu pro šifrování dat

Certifikát šifrování dat se používá výhradně k šifrování a dešifrování parametrů v Settings.xml služby a proměnných prostředí v ServiceManifest.xml služby. Nepoužívá se k ověřování nebo podepisování šifrového textu. Certifikát musí splňovat následující požadavky:

  • Certifikát musí obsahovat privátní klíč.

  • Certifikát musí být vytvořen pro výměnu klíčů a musí být exportovatelný do souboru Personal Information Exchange (.pfx).

  • Použití klíče certifikátu musí zahrnovat šifrování dat (10) a nemělo by zahrnovat ověřování serveru nebo ověřování klientů.

    Například při vytváření certifikátu podepsaného svým držitelem pomocí PowerShellu KeyUsage musí být příznak nastavený na DataEnciphermenthodnotu :

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

Instalace certifikátu v clusteru

Tento certifikát musí být nainstalovaný na každém uzlu v clusteru. Pokyny k nastavení najdete v tématu Vytvoření clusteru pomocí Azure Resource Manager.

Šifrování tajných kódů aplikace

K zašifrování tajného kódu se používá následující příkaz PowerShellu. Tento příkaz pouze šifruje hodnotu; nepodepíše šifrový text. K vytvoření šifrovacího textu pro hodnoty tajných kódů musíte použít stejný certifikát šifrování, který je nainstalovaný v clusteru:

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

Výsledný řetězec s kódováním base-64 obsahuje jak tajný šifrovací text, tak informace o certifikátu, který byl použit k jeho zašifrování.

Další kroky

Zjistěte, jak zadat šifrované tajné kódy v aplikaci.