Zabezpečení samostatného clusteru ve Windows pomocí zabezpečení Windows

Pokud chcete zabránit neoprávněnému přístupu ke clusteru Service Fabric, musíte cluster zabezpečit. Zabezpečení je obzvláště důležité, když cluster spouští produkční úlohy. Tento článek popisuje, jak nakonfigurovat zabezpečení typu uzel-uzel a klient-uzel pomocí zabezpečení Windows v souboru ClusterConfig.JSON . Tento proces odpovídá kroku konfigurace zabezpečení v části Vytvoření samostatného clusteru spuštěného ve Windows. Další informace o tom, jak Service Fabric používá zabezpečení Windows, najdete v tématu Scénáře zabezpečení clusteru.

Poznámka

Výběr zabezpečení mezi uzly byste měli pečlivě zvážit, protože neexistuje žádný upgrade clusteru z jedné volby zabezpečení na jinou. Pokud chcete změnit výběr zabezpečení, musíte znovu sestavit celý cluster.

Konfigurace zabezpečení Windows pomocí gMSA

Upřednostňovaným modelem zabezpečení je gMSA. Ukázkový konfigurační soubor ClusterConfig.gMSA.Windows.MultiMachine.JSON stažený pomocí souboru Microsoft.Azure.ServiceFabric.WindowsServer.< verze>.zip samostatný balíček clusteru obsahuje šablonu pro konfiguraci zabezpečení Windows pomocí skupinového účtu spravované služby (gMSA):

"security": {
    "ClusterCredentialType": "Windows",
    "ServerCredentialType": "Windows",
    "WindowsIdentities": {  
        "ClustergMSAIdentity": "[gMSA Identity]",
        "ClusterSPN": "[Registered SPN for the gMSA account]",
        "ClientIdentities": [
            {
                "Identity": "domain\\username",
                "IsAdmin": true
            }
        ]
    }
}
Nastavení konfigurace Popis
ClusterCredentialType Nastavte na Windows , pokud chcete povolit zabezpečení Windows pro komunikaci uzel-uzel. 
Typ přihlašovacích údajů serveru Nastavte na Windows , pokud chcete povolit zabezpečení Windows pro komunikaci klient-uzel.
WindowsIdentity Obsahuje identity clusteru a klienta.
ClustergMSAIdentity Konfiguruje zabezpečení mezi uzly. Skupinový účet spravované služby. Musí být ve formátu "mysfgmsa@mydomain".
Název CLUSTERSPN Zaregistrovaný hlavní název služby pro účet gMSA
Klientské identity Konfiguruje zabezpečení klient-uzel. Pole klientských uživatelských účtů.
Identita Přidejte uživatele domény domain\username pro identitu klienta.
IsAdmin Nastavte na hodnotu true, pokud chcete určit, že má uživatel domény přístup ke klientovi správce nebo false pro klientský přístup uživatele.

Zabezpečení mezi uzly se konfiguruje nastavením ClustergMSAIdentity , když service Fabric musí běžet v rámci gMSA. Aby bylo možné vytvořit vztahy důvěryhodnosti mezi uzly, musí být o sobě navzájem informovány. Můžete to provést dvěma různými způsoby: Zadejte skupinový účet spravované služby, který zahrnuje všechny uzly v clusteru, nebo Zadejte skupinu počítačů domény, která zahrnuje všechny uzly v clusteru. Důrazně doporučujeme použít skupinový účet spravované služby (gMSA), zejména pro větší clustery (více než 10 uzlů) nebo clustery, u které se pravděpodobně zvětší nebo zmenší.
Tento přístup nevyžaduje vytvoření skupiny domény, pro kterou mají správci clusteru udělená přístupová práva k přidávání a odebírání členů. Tyto účty jsou také užitečné pro automatickou správu hesel. Další informace najdete v tématu Začínáme se skupinovými účty spravované služby.

Zabezpečení klienta na uzel se konfiguruje pomocí clientIdentities. Pokud chcete navázat vztah důvěryhodnosti mezi klientem a clusterem, musíte cluster nakonfigurovat tak, aby věděl, kterým klientským identitám může důvěřovat. To lze provést dvěma různými způsoby: Zadejte uživatele skupiny domény, kteří se mohou připojit, nebo určete uživatele uzlu domény, kteří se mohou připojit. Service Fabric podporuje dva různé typy řízení přístupu pro klienty připojené ke clusteru Service Fabric: správce a uživatel. Řízení přístupu umožňuje správci clusteru omezit přístup k určitým typům operací clusteru pro různé skupiny uživatelů, aby byl cluster lépe zabezpečený. Správci mají úplný přístup k možnostem správy (včetně funkcí pro čtení a zápis). Uživatelé mají ve výchozím nastavení jenom přístup pro čtení k možnostem správy (například k možnostem dotazů) a k řešení problémů s aplikacemi a službami. Další informace o řízení přístupu najdete v tématu Řízení přístupu na základě role pro klienty Service Fabric.

Následující příklad zabezpečení nakonfiguruje zabezpečení Windows pomocí gMSA a určuje, že počítače v ServiceFabric.clusterA.contoso.com gMSA jsou součástí clusteru a že CONTOSO\usera má přístup ke klientovi správce:

"security": {
    "ClusterCredentialType": "Windows",
    "ServerCredentialType": "Windows",
    "WindowsIdentities": {
        "ClustergMSAIdentity" : "ServiceFabric.clusterA.contoso.com",
        "ClusterSPN" : "http/servicefabric/clusterA.contoso.com",
        "ClientIdentities": [{
            "Identity": "CONTOSO\\usera",
            "IsAdmin": true
        }]
    }
}

Konfigurace zabezpečení Windows pomocí skupiny počítačů

Jak je podrobně popsáno výše, preferuje se gMSA, ale podporuje se také použití tohoto modelu zabezpečení. Ukázkový konfigurační soubor ClusterConfig.Windows.MultiMachine.JSON stažený pomocí microsoft.Azure.ServiceFabric.WindowsServer.< verze>.zip samostatný balíček clusteru obsahuje šablonu pro konfiguraci zabezpečení Windows. Zabezpečení Windows se konfiguruje v části Vlastnosti :

"security": {
    "ClusterCredentialType": "Windows",
    "ServerCredentialType": "Windows",
    "WindowsIdentities": {
        "ClusterIdentity" : "[domain\machinegroup]",
        "ClientIdentities": [{
            "Identity": "[domain\username]",
            "IsAdmin": true
        }]
    }
}
Nastavení konfigurace Popis
ClusterCredentialType Nastavte na Windows , pokud chcete povolit zabezpečení Windows pro komunikaci uzel-uzel. 
Typ přihlašovacích údajů serveru Nastavte na Windows , pokud chcete povolit zabezpečení Windows pro komunikaci klient-uzel.
WindowsIdentity Obsahuje identity clusteru a klienta.
ClusterIdentity Ke konfiguraci zabezpečení mezi uzly použijte název skupiny počítačů doména\skupina počítačů.
Klientské identity Konfiguruje zabezpečení klient-uzel. Pole klientských uživatelských účtů.
Identita Přidejte uživatele domény domain\username pro identitu klienta.
IsAdmin Nastavte na hodnotu true, pokud chcete určit, že má uživatel domény přístup ke klientovi správce nebo false pro klientský přístup uživatele.

Pokud chcete použít skupinu počítačů v rámci Doména služby Active Directory, nakonfiguruje se zabezpečení uzlů nastavením pomocí ClusterIdentity. Další informace najdete v tématu Vytvoření skupiny počítačů ve službě Active Directory.

Zabezpečení mezi klientem a uzlem se konfiguruje pomocí identity klienta. Pokud chcete navázat vztah důvěryhodnosti mezi klientem a clusterem, musíte cluster nakonfigurovat tak, aby znal identity klientů, kterým může cluster důvěřovat. Vztah důvěryhodnosti můžete vytvořit dvěma různými způsoby:

  • Zadejte uživatele skupiny domény, kteří se můžou připojit.
  • Zadejte uživatele uzlu domény, kteří se mohou připojit.

Service Fabric podporuje dva různé typy řízení přístupu pro klienty připojené ke clusteru Service Fabric: správce a uživatel. Řízení přístupu umožňuje správci clusteru omezit přístup k určitým typům operací clusteru pro různé skupiny uživatelů, což zajišťuje lepší zabezpečení clusteru. Správci mají úplný přístup k možnostem správy (včetně funkcí pro čtení a zápis). Uživatelé mají ve výchozím nastavení jenom přístup pro čtení k možnostem správy (například k možnostem dotazů) a k řešení problémů s aplikacemi a službami.

Následující příklad části zabezpečení konfiguruje zabezpečení Windows, určuje, že počítače v ServiceFabric/clusterA.contoso.com jsou součástí clusteru, a určuje, že CONTOSO\usera má klientský přístup správce:

"security": {
    "ClusterCredentialType": "Windows",
    "ServerCredentialType": "Windows",
    "WindowsIdentities": {
        "ClusterIdentity" : "ServiceFabric/clusterA.contoso.com",
        "ClientIdentities": [{
            "Identity": "CONTOSO\\usera",
            "IsAdmin": true
        }]
    }
},

Poznámka

Service Fabric by se neměl nasazovat na řadič domény. Ujistěte se, že clusterConfig.json neobsahuje IP adresu řadiče domény při použití skupiny počítačů nebo skupiny účet spravované služby (gMSA).

Další kroky

Po nakonfigurování zabezpečení Windows v souboru ClusterConfig.JSON pokračujte v procesu vytváření clusteru v tématu Vytvoření samostatného clusteru spuštěného ve Windows.

Další informace o zabezpečení mezi uzly, zabezpečení klient-uzel a řízení přístupu na základě role najdete v tématu Scénáře zabezpečení clusteru.

Příklady připojení pomocí PowerShellu nebo FabricClient najdete v tématu Připojení k zabezpečenému clusteru .