Executar um serviço como um usuário ou grupo do Ative Directory

Em um cluster autônomo do Windows Server, você pode executar um serviço como um usuário ou grupo do Ative Directory usando uma política RunAs. Por padrão, os aplicativos do Service Fabric são executados na conta na qual o processo .exe malha é executado. A execução de aplicativos em contas diferentes, mesmo em um ambiente hospedado compartilhado, os torna mais seguros uns dos outros. Observe que isso usa o Ative Directory local dentro do seu domínio e não o Microsoft Entra ID. Você também pode executar um serviço como uma Conta de Serviço Gerenciado (gMSA) de grupo.

Usando um usuário ou grupo de domínio, você pode acessar outros recursos no domínio (por exemplo, compartilhamentos de arquivos) que receberam permissões.

O exemplo a seguir mostra um usuário do Ative Directory chamado TestUser com sua senha de domínio criptografada usando um certificado chamado MyCert. Você pode usar o comando PowerShell para criar o Invoke-ServiceFabricEncryptText texto de codificação secreto. Consulte Gerenciando segredos em aplicativos do Service Fabric para obter detalhes.

Você deve implantar a chave privada do certificado para descriptografar a senha na máquina local usando um método fora de banda (no Azure, isso é por meio do Gerenciador de Recursos do Azure). Em seguida, quando o Service Fabric implanta o pacote de serviço na máquina, ele é capaz de descriptografar o segredo e (junto com o nome de usuário) autenticar com o Ative Directory para ser executado com essas credenciais.

<Principals>
  <Users>
    <User Name="TestUser" AccountType="DomainUser" AccountName="Domain\User" Password="[Put encrypted password here using MyCert certificate]" PasswordEncrypted="true" />
  </Users>
</Principals>
<Policies>
  <DefaultRunAsPolicy UserRef="TestUser" />
  <SecurityAccessPolicies>
    <SecurityAccessPolicy ResourceRef="MyCert" PrincipalRef="TestUser" GrantRights="Full" ResourceType="Certificate" />
  </SecurityAccessPolicies>
</Policies>
<Certificates>

Nota

Se você aplicar uma política RunAs a um serviço e o manifesto do serviço declarar recursos de ponto de extremidade com o protocolo HTTP, você também deverá especificar uma SecurityAccessPolicy. Para obter mais informações, consulte Atribuir uma política de acesso de segurança para pontos de extremidade HTTP e HTTPS.

Como próximo passo, leia os seguintes artigos: