Nasazení tajných kódů aplikací do Service Fabric spravovaného clusteru
Tajné kódy mohou být jakékoli citlivé informace, jako jsou připojovací řetězce úložiště, hesla nebo jiné hodnoty, které by se neměly zpracovat v prostém textu. Ke správě klíčů a Azure Key Vault spravovaných clusterů doporučujeme použít Service Fabric a využít je pro tento článek. Použití tajných kódů v aplikaci je ale na cloudové platformě a umožňuje nasazení aplikací do clusteru hostovaného kdekoli.
Doporučený způsob správy nastavení konfigurace služby je prostřednictvím balíčků konfigurace služby. Balíčky konfigurace se spravují a aktualizují prostřednictvím spravovaných postupných upgradů s ověřováním stavu a automatickým vrácením zpět. Upřednostňuje se to před globální konfigurací, protože snižuje pravděpodobnost výpadku globální služby. Šifrované tajné kódy nejsou výjimkou. Service Fabric obsahuje integrované funkce pro šifrování a dešifrování hodnot v konfiguračním balíčku Settings.xml pomocí šifrování certifikátu.
Následující diagram znázorňuje základní tok pro správu tajných kódu v Service Fabric aplikaci:

V tomto toku jsou čtyři hlavní kroky:
- Získejte certifikát pro šifrování dat.
- Nainstalujte certifikát do clusteru.
- Při nasazování aplikace certifikátem zašifrujte hodnoty tajných Settings.xml do konfiguračního souboru služby.
- Číst zašifrované hodnoty Settings.xml pomocí dešifrování pomocí stejného certifikátu šifrování.
Azure Key Vault se zde používá jako bezpečné umístění úložiště pro certifikáty a jako způsob, jak získat certifikáty nainstalované na Service Fabric spravovaných uzlech clusteru v Azure.
Příklad implementace tajných kódů aplikací najdete v tématu Správa tajných kódů aplikací.
Alternativně podporujeme také KeyVaultReference. Service Fabric Podpora KeyVaultReference usnadňuje nasazování tajných kódů do aplikací jednoduše tak, že odkazuje na adresu URL tajného klíče uloženého v Key Vault
Vytvoření certifikátu pro šifrování dat
Pokud chcete vytvořit vlastní trezor klíčů a nastavit certifikáty, postupujte podle pokynů v Azure Key Vault pomocí Azure CLI, PowerShellu,portálu a dalších.
Poznámka
Trezor klíčů musí být povolený pro nasazení šablony, aby poskytovatel výpočetních prostředků z něj měl certifikáty a instaluje ho na uzly clusteru.
Instalace certifikátu do clusteru
Tento certifikát musí být nainstalovaný na každém uzlu v clusteru a Service Fabric to usnadňuje. Spravovaná clusterová služba může do uzlů předá tajné kódy specifické pro verzi, které pomáhají instalovat tajné kódy, které se často nemění, jako je instalace privátní kořenové certifikační autority na uzly. Pro většinu produkčních úloh doporučujeme použít rozšíření KeyVault. Rozšíření Key Vault virtuálního počítače poskytuje automatickou aktualizaci certifikátů uložených ve službě Azure Key Vault vs. statickou verzi.
Pro spravované clustery budete potřebovat tři hodnoty, dvě z Azure Key Vault a jednu pro název místního úložiště na uzlech.
Parametry:
Source Vault: Toto je- např.: /subscriptions/{id_předplatného}/resourceGroups/myrg1/providers/Microsoft.KeyVault/vaults/mykeyvault1
Certificate URL: Toto je úplný identifikátor objektu, který rozlišuje malá a velká písmena a je neměnný.Certificate Store: Toto je místní úložiště certifikátů na uzlech, kam se certifikát umístí.- název úložiště certifikátů na uzlech, např.: "MY"
Service Fabric clustery podporují dvě metody přidávání tajných kódů specifických pro verzi do uzlů.
- Portál během počátečního vytváření clusteru do této oblasti vložte pouze výše uvedené hodnoty:

- Azure Resource Manager během vytváření nebo kdykoli
{
"apiVersion": "2021-05-01",
"type": "Microsoft.ServiceFabric/managedclusters/nodetypes",
"properties": {
"vmSecrets": [
{
"sourceVault": {
"id": "/subscriptions/{subscriptionid}/resourceGroups/myrg1/providers/Microsoft.KeyVault/vaults/mykeyvault1"
},
"vaultCertificates": [
{
"certificateStore": "MY",
"certificateUrl": "https://mykeyvault1.vault.azure.net/certificates/{certificatename}/{secret-version}"
}
]
}
]
}
}