SecurityCredentials.LoadFrom Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Criar uma instância SecurityCredentials do objeto do arquivo de configuração de serviço
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
Parâmetros
- codePackageActivationContext
- CodePackageActivationContext
O contexto CodePackageActivationContextde ativação do pacote de código atual.
- configPackageName
- String
O nome do pacote de configuração atual.
- sectionName
- String
A seção dentro do arquivo de configuração que define todas as configurações de segurança.
Retornos
As credenciais de segurança.
Comentários
O arquivo de configuração de configuração (settings.xml) dentro da pasta de configuração de serviço deve conter todas as configurações de segurança necessárias para criar SecurityCredentials o objeto e passar para o CreateReplicator(IStateProvider, ReplicatorSettings) método . Normalmente, o ônus está no autor do serviço para ler o arquivo settings.xml, analisar os valores e construir adequadamente o SecurityCredentials objeto.
Com o método auxiliar atual, o autor do serviço pode ignorar o processo acima.
Veja a seguir os nomes de parâmetro que devem ser fornecidos na configuração de serviço "settings.xml", para serem reconhecíveis pela malha do Windows para executar a análise acima automaticamente:
CredentialType– tipo de credenciais a serem usadas para proteger o canal de comunicação: X509 (credenciais de certificado X509) ou Windows (credenciais do Windows exigem o active directory)
CredentialType=X509
StoreLocation-Store local para localizar o certificado: CurrentUser ou LocalMachine
StoreName-name do repositório de certificados em que o certificado deve ser pesquisado
FindType-Identifies o tipo de valor fornecido por no parâmetro FindValue: FindBySubjectName ou FindByThumbPrint
FindValue-Search destino para localizar o certificado
AllowedCommonNames-A lista separada por vírgulas de nomes comuns de certificado/nomes dns. Essa lista deve incluir todos os certificados usados pelos replicadores, ela é usada para validar o certificado de entrada.
IssuerThumbprints-Uma lista separada por vírgulas de impressões digitais do certificado do emissor. Quando especificado, o certificado de entrada é validado se ele é emitido por uma das entradas na lista, além da validação de cadeia.
ApplicationIssuerStore/[IssuerCommonName]-Uma lista separada por vírgulas de nomes de repositório em que o certificado do emissor correspondente a IssuerCommonName pode ser encontrado. Quando especificado, o certificado de entrada é validado se ele é emitido por uma das entradas na lista, além da validação de cadeia.
RemoteCertThumbprints-Uma lista separada por vírgulas de impressões digitais do certificado. Essa lista deve incluir todos os certificados usados pelos replicadores, ela é usada para validar o certificado de entrada.
ProtectionLevel-Indicates como os dados são protegidos: Sign ou EncryptAndSign ou None.
CredentialType=Windows
ServicePrincipalName-Service nome principal registrado para o serviço. Pode estar vazio se os processos de host de serviço/ator forem executados como uma conta de computador (por exemplo: NetworkService, LocalSystem etc.)
WindowsIdentities-Uma lista separada por vírgulas de identidades do Windows de todos os processos de host de serviço/ator.
ProtectionLevel-Indicates como os dados são protegidos: Sign ou EncryptAndSign ou None.
Exemplo de snippet de configuração 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>
Exemplo de snippet de configuração do Windows 1: todos os processos de host de serviço/ator são executados como 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>
Exemplo de snippet de configuração do Windows 1: todos os processos de host de serviço/ator são executados como uma conta de serviço gerenciado de grupo.
<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>
Aplica-se a
Azure SDK for .NET