Partager via


SecurityCredentials.LoadFrom Méthode

Définition

Instancier un SecurityCredentials objet à partir du fichier de paramètres de configuration du service

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

Paramètres

codePackageActivationContext
CodePackageActivationContext

Contexte d’activation du package de CodePackageActivationContextcode actuel .

configPackageName
String

Nom du package de configuration actuel.

sectionName
String

Section du fichier de configuration qui définit tous les paramètres de sécurité.

Retours

Informations d’identification de sécurité.

Remarques

Le fichier de paramètres de configuration (settings.xml) dans le dossier de configuration du service doit contenir tous les paramètres de sécurité nécessaires pour créer SecurityCredentials l’objet et passer à la CreateReplicator(IStateProvider, ReplicatorSettings) méthode. En règle générale, il incombe à l’auteur du service de lire le fichier settings.xml, d’analyser les valeurs et de construire l’objet SecurityCredentials de manière appropriée.

Avec la méthode d’assistance actuelle, l’auteur du service peut contourner le processus ci-dessus.

Voici les noms de paramètres qui doivent être fournis dans la configuration du service « settings.xml », afin d’être reconnaissables par Windows Fabric pour effectuer automatiquement l’analyse ci-dessus :

  1. CredentialType : type d’informations d’identification à utiliser pour sécuriser le canal de communication : X509 (informations d’identification de certificat X509) ou Windows (informations d’identification Windows, nécessite Active Directory)

CredentialType=X509

  1. StoreLocation-Store'emplacement pour rechercher le certificat : CurrentUser ou LocalMachine

  2. StoreName-name du magasin de certificats dans lequel le certificat doit être recherché

  3. FindType-Identifies le type de valeur fourni par dans le paramètre FindValue : FindBySubjectName ou FindByThumbPrint

  4. FindValue-Search cible pour la recherche du certificat

  5. AllowedCommonNames-Liste séparée par des virgules de noms communs de certificat/noms dns. Cette liste doit inclure tous les certificats utilisés par les réplicateurs. Elle est utilisée pour valider le certificat entrant.

  6. IssuerThumbprints -Liste séparée par des virgules d’empreintes de certificat d’émetteur. Lorsqu’il est spécifié, le certificat entrant est validé s’il est émis par l’une des entrées de la liste, en plus de la validation de chaîne.

  7. ApplicationIssuerStore/[IssuerCommonName]-Liste séparée par des virgules de noms de magasins où se trouve le certificat d’émetteur correspondant à IssuerCommonName. Lorsqu’il est spécifié, le certificat entrant est validé s’il est émis par l’une des entrées de la liste, en plus de la validation de chaîne.

  8. RemoteCertThumbprints -Liste séparée par des virgules d’empreintes de certificat. Cette liste doit inclure tous les certificats utilisés par les réplicateurs. Elle est utilisée pour valider le certificat entrant.

  9. ProtectionLevel-Indicates la façon dont les données sont protégées : Sign, EncryptAndSign ou None.

CredentialType=Windows

  1. ServicePrincipalName-Service nom principal inscrit pour le service. Peut être vide si les processus hôtes de service/d’acteur s’exécutent en tant que compte d’ordinateur (par exemple, NetworkService, LocalSystem, etc.)

  2. WindowsIdentities - Liste séparée par des virgules des identités Windows de tous les processus hôtes de service/acteur.

  3. ProtectionLevel-Indicates la façon dont les données sont protégées : Sign, EncryptAndSign ou None.

Exemple d’extrait de code de configuration X509

<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>

Exemple d’extrait de code de configuration Windows 1 : tous les processus hôtes service/acteur s’exécutent en tant que NetworkService ou LocalSystem.

<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>

Exemple d’extrait de code de configuration Windows 1 : tous les processus hôtes de service/d’acteur s’exécutent en tant que compte de service managé de groupe.

<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>

S’applique à