Freigeben über


SecurityCredentials.LoadFrom Methode

Definition

Instanziieren SecurityCredentials eines Objekts aus der Dienstkonfigurationseinstellungsdatei

public static System.Fabric.SecurityCredentials LoadFrom (System.Fabric.CodePackageActivationContext codePackageActivationContext, string configPackageName, string sectionName);
static member LoadFrom : System.Fabric.CodePackageActivationContext * string * string -> System.Fabric.SecurityCredentials
Public Shared Function LoadFrom (codePackageActivationContext As CodePackageActivationContext, configPackageName As String, sectionName As String) As SecurityCredentials

Parameter

codePackageActivationContext
CodePackageActivationContext

Der aktuelle Codepaketaktivierungskontext CodePackageActivationContext.

configPackageName
String

Der name des aktuellen Konfigurationspakets.

sectionName
String

Der Abschnitt in der Konfigurationsdatei, der alle Sicherheitseinstellungen definiert.

Gibt zurück

Die Sicherheitsanmeldeinformationen.

Hinweise

Die Konfigurationseinstellungsdatei (settings.xml) im Dienstkonfigurationsordner sollte alle Sicherheitseinstellungen enthalten, die zum Erstellen SecurityCredentials eines Objekts und zum Übergeben an die CreateReplicator(IStateProvider, ReplicatorSettings) -Methode erforderlich sind. In der Regel ist der Dienstautor, um die settings.xml-Datei zu lesen, die Werte zu analysieren und das SecurityCredentials Objekt entsprechend zu erstellen.

Mit der aktuellen Hilfsmethode kann der Dienstautor den oben genannten Prozess umgehen.

Im Folgenden sind die Parameternamen aufgeführt, die in der Dienstkonfiguration "settings.xml" angegeben werden sollten, um von Windows Fabric erkennbar zu sein, um die obige Analyse automatisch durchzuführen:

  1. CredentialType – Typ der Anmeldeinformationen zum Schützen des Kommunikationskanals: X509 (X509-Zertifikatanmeldeinformationen) oder Windows (Windows-Anmeldeinformationen, erfordert Active Directory)

CredentialType=X509

  1. StoreLocation-Store Speicherort zum Suchen des Zertifikats: CurrentUser oder LocalMachine

  2. StoreName-name des Zertifikatspeichers, in dem das Zertifikat durchsucht werden soll

  3. FindType-Identifies den Werttyp, der im FindValue-Parameter bereitgestellt wird: FindBySubjectName oder FindByThumbPrint

  4. FindValue-Search Ziel für die Suche nach dem Zertifikat

  5. AllowedCommonNames: Eine kommagetrennte Liste allgemeiner Zertifikatnamen/DNS-Namen. Diese Liste sollte alle Zertifikate enthalten, die von Replikatoren verwendet werden. Sie wird verwendet, um eingehende Zertifikate zu überprüfen.

  6. IssuerThumbprints-Eine durch Kommas getrennte Liste der Ausstellerzertifikatfingerabdrücke. Bei Angabe wird das eingehende Zertifikat überprüft, wenn es zusätzlich zur Kettenüberprüfung von einem der Einträge in der Liste ausgestellt wird.

  7. ApplicationIssuerStore/[IssuerCommonName]-Eine durch Kommas getrennte Liste von Speichernamen, in der das Ausstellerzertifikat für IssuerCommonName gefunden werden kann. Bei Angabe wird das eingehende Zertifikat überprüft, wenn es zusätzlich zur Kettenüberprüfung von einem der Einträge in der Liste ausgestellt wird.

  8. RemoteCertThumbprints-Eine durch Kommas getrennte Liste von Zertifikatfingerabdrücken. Diese Liste sollte alle Zertifikate enthalten, die von Replikatoren verwendet werden. Sie wird verwendet, um eingehende Zertifikate zu überprüfen.

  9. ProtectionLevel-Indicates, wie die Daten geschützt werden: Sign, EncryptAndSign oder None.

CredentialType=Windows

  1. ServicePrincipalName-Service für den Dienst registrierten Prinzipalnamen. Kann leer sein, wenn der Dienst-/Akteur-Hostprozess als Computerkonto ausgeführt wird (z. B. NetworkService, LocalSystem usw.).

  2. WindowsIdentities- Eine durch Trennzeichen getrennte Liste der Windows-Identitäten aller Dienst-/Actor-Hostprozesse.

  3. ProtectionLevel-Indicates, wie die Daten geschützt werden: Sign, EncryptAndSign oder None.

Beispiel für den X509-Konfigurationsausschnitt

<Section Name="SecurityConfig">
<Parameter Name="CredentialType" Value="X509" />
<Parameter Name="FindType" Value="FindByThumbprint" />
<Parameter Name="FindValue" Value="FB 9E A6 D4 AD D0 4B 08 BC 29 E1 EE 9C 91 E5 4E 8F 1E 08 96" />
<Parameter Name="StoreLocation" Value="LocalMachine" />
<Parameter Name="StoreName" Value="My" />
<Parameter Name="ProtectionLevel" Value="EncryptAndSign" />
<Parameter Name="AllowedCommonNames" Value="My-Test-SAN1-Alice,My-Test-SAN1-Bob" />
<Parameter Name="ApplicationIssuerStore/WinFabric-Test-TA-CA" Value="Root" />
</Section>

Beispiel 1 der Windows-Konfiguration: Alle Dienst-/Akteurhostprozesse werden als NetworkService oder LocalSystem ausgeführt.

<Section Name="SecurityConfig">
<Parameter Name="CredentialType" Value="Windows" />
<Parameter Name="ServicePrincipalName" Value="" />
<!--This machine group contains all machines in a cluster-->
<Parameter Name="WindowsIdentities" Value="redmond\ClusterMachineGroup" />
<Parameter Name="ProtectionLevel" Value="EncryptAndSign" />
</Section>

Beispiel 1 der Windows-Konfiguration: Alle Dienst-/Akteurhostprozesse werden als gruppenverwaltetes Dienstkonto ausgeführt.

<Section Name="SecurityConfig">
<Parameter Name="CredentialType" Value="Windows" />
<Parameter Name="ServicePrincipalName" Value="servicefabric/cluster.microsoft.com" />
<--All actor/service host processes run as redmond\GroupManagedServiceAccount-->
<Parameter Name="WindowsIdentities" Value="redmond\GroupManagedServiceAccount" />
<Parameter Name="ProtectionLevel" Value="EncryptAndSign" />
</Section>

Gilt für: