Share via


Alkalmazáskulcsok üzembe helyezése felügyelt Service Fabric-fürtön

A titkos kulcsok lehetnek bizalmas információk, például tárolási kapcsolati sztring, jelszavak vagy más értékek, amelyeket nem szabad egyszerű szövegben kezelni. Javasoljuk, hogy az Azure Key Vault használatával kezelje a Service Fabric által felügyelt fürtök kulcsait és titkos kulcsait, és használja ezt a cikket. A titkos kódok alkalmazásbeli használata azonban felhőalapú platformfüggetlen, így lehetővé teszi az alkalmazások üzembe helyezését egy bárhol üzemeltetett fürtön.

A szolgáltatáskonfigurációs beállítások kezelésének ajánlott módja a szolgáltatáskonfigurációs csomagokon keresztül történik. A konfigurációs csomagok verziószámozottak és frissíthetők felügyelt gördülő frissítésekkel, állapot-ellenőrzéssel és automatikus visszaállítással. Ez előnyben részesíti a globális konfigurációt, mivel csökkenti a globális szolgáltatáskimaradás esélyét. A titkosított titkos kódok nem kivételek. A Service Fabric beépített funkciókkal rendelkezik egy konfigurációs csomag értékeinek titkosításához és visszafejtéséhez Gépház.xml fájlban tanúsítványtitkosítással.

Az alábbi ábra egy Service Fabric-alkalmazás titkos kulcskezelésének alapfolyamatát mutatja be:

titkos kódok kezelése – áttekintés

A folyamat négy fő lépésből áll:

  1. Szerezze be az adatfelfedési tanúsítványt.
  2. Telepítse a tanúsítványt a fürtben.
  3. Titkos kódértékek titkosítása egy alkalmazás tanúsítványsal való üzembe helyezésekor, majd a szolgáltatás Gépház.xml konfigurációs fájljába való injektálásakor.
  4. A titkosított értékeket az Gépház.xml kiolvashatja ugyanazzal a titkosítási tanúsítvánnyal való visszafejtéssel.

Az Azure Key Vault a tanúsítványok biztonságos tárolási helyeként és a tanúsítványok Azure-beli Service Fabric által felügyelt fürtcsomópontjaira való telepítésének módjaként szolgál.

Az alkalmazás titkos kulcsainak implementálására vonatkozó példát az alkalmazás titkos kulcsainak kezelése című témakörben talál.

Másik lehetőségként a KeyVaultReference-t is támogatjuk. A Service Fabric KeyVaultReference támogatása egyszerűvé teszi a titkos kulcsok alkalmazásokba való üzembe helyezését egyszerűen a Key Vaultban tárolt titkos kulcs URL-címére való hivatkozással

Adatfelfedési tanúsítvány létrehozása

Saját kulcstartó létrehozásához és a tanúsítványok beállításához kövesse az Azure Key Vault utasításait az Azure CLI, a PowerShell, a Portál és egyebek használatával.

Feljegyzés

A kulcstartót engedélyezni kell a sablon üzembe helyezéséhez , hogy a számítási erőforrás-szolgáltató tanúsítványokat kapjon tőle, és a fürtcsomópontokra telepítse.

A tanúsítvány telepítése a fürtben

Ezt a tanúsítványt telepíteni kell a fürt minden csomópontjára, és a Service Fabric által felügyelt fürtök megkönnyítik ezt. A felügyelt fürtszolgáltatás a verzióspecifikus titkos kulcsokat leküldheti a csomópontokra, így olyan titkos kulcsokat telepíthet, amelyek gyakran nem változnak, például privát legfelső szintű hitelesítésszolgáltatót telepít a csomópontokra. A legtöbb éles számítási feladat esetében a KeyVault bővítmény használatát javasoljuk. A Key Vault virtuálisgép-bővítmény az Azure Key Vaultban tárolt tanúsítványok automatikus frissítését biztosítja a statikus verzióval szemben.

Felügyelt fürtök esetén három értékre lesz szüksége, kettőre az Azure Key Vaultból, egyet pedig a csomópontok helyi tárolójának nevére.

Paraméterek:

  • Source Vault: Ez a
    • Például: /subscriptions/{subscriptionid}/resourceGroups/myrg1/providers/Microsoft.KeyVault/vaults/mykeyvault1
  • Certificate URL: Ez a Key Vault titkos kulcsazonosítója, amely nem érzéketlen és nem módosítható
  • Certificate Store: Ez a helyi tanúsítványtároló azon csomópontokon, ahol a tanúsítvány lesz elhelyezve
    • tanúsítványtároló neve a csomópontokon, például: "MY"

A Service Fabric által felügyelt fürtök két módszert támogatnak a verzióspecifikus titkos kódok csomópontokhoz való hozzáadásához.

  1. A portál a kezdeti fürtlétrehozás során csak felülről ide szúrja be az értékeket:

portál titkos kulcsok bemenete

  1. Azure Resource Manager létrehozáskor vagy bármikor
{
  "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}"
          }
        ]
      }
    ]
  }
}