Gerir dados encriptados em Windows Azure Pack

 

Aplica-se a: Windows Azure Pack

Windows Azure Pack for Windows Server utiliza algoritmos de encriptação, chaves de encriptação e palavras-passe para garantir comunicações entre as bases de dados e os utilizadores no portal de gestão. Estes dados são armazenados em dois ou três locais.

Para proteger a segurança dos seus dados, é necessário alterar ou rodar os dados regularmente. Quando altera dados num local, tem de alterá-lo em todos os locais.

Fornecemos uma folha de cálculo que lista todos os algoritmos de encriptação, chaves e senhas e os seus locais armazenados. Esta folha de cálculo também contém informações sobre como alterar cada ponto de dados. Pode aceder à folha de cálculo no pacote de documentação técnica Windows Azure Pack (https://go.microsoft.com/fwlink/?LinkId=329811) disponível no Microsoft Download Center. Clique em Baixar, selecione o ficheiro WAPv1_encryption.xsl e, em seguida, clique em Seguinte para começar a descarregar o ficheiro.

Também pode utilizar o Analisador de Boas Práticas para Windows Azure Pack para verificar a segurança dos seus dados. Para obter informações sobre o Analisador de Boas Práticas, consulte os componentes de Windows Azure Pack.

Utilize as seguintes informações para gerir os seus dados encriptados:

  • Alterar uma senha de base de dados

  • Rotação de dados encriptados relacionados com a chave da máquina

  • Algoritmos e chaves de encriptação rotativa

  • Alterar a senha de API de Administração de utilização

  • Alteração de palavras-passe relacionadas com fornecedores de recursos

  • Alterar a palavra-passe relacionada com o Relatório de Serviço

Alterar uma senha de base de dados

Existem várias bases de dados em Windows Azure Pack, cada uma das quais tem uma senha de base de dados. Utilize os seguintes passos para rodar as palavras-passe da base de dados:

Para rodar uma senha de base de dados

  1. Obtenha uma nova senha. Execute o seguinte cmdlet:

    $password = New-MgmtSvcPassword –Length 64
    
  2. Utilize os dados na folha de cálculo para encontrar e rodar a palavra-passe da base de dados no primeiro local. Por exemplo, se estiver a rodar a palavra-passe da base de dados para a API Administração, a primeira localização é a loja Secret config (verifique a coluna C para a localização 1).

    Executar o seguinte cmdlet para alterar a palavra-passe:

    Set-MgmtSvcDatabaseSetting <Service>  <Secret>  $password -Server <Server> -Passphrase <Passphrase> -Database “Microsoft.MgmtSvc.Config” -Force
    
  3. Em seguida, localize a terceira localização para a palavra-passe da base de dados e rode a palavra-passe da base de dados. Utilizando o exemplo acima, para a palavra-passe de base de dados API Administração, este é o login de segurança SQL Server (verificar coluna G para localização 3).

    Execute o seguinte cmdlet:

    Set-MgmtSvcDatabaseUser -Server <Server> -Database <Database> -Schema <Schema> -User <User> -UserPassword $password
    
  4. Finalmente, localize a segunda localização para a senha da base de dados e rode a palavra-passe. Novamente para a palavra-passe da base de dados API Administração, esta é a cadeia de ligação web.config (ver coluna E para a localização 2).

    Executar os seguintes cmdlets:

    $setting = Get-MgmtSvcDatabaseSetting <Service> <Secret> -Server <Server> -Passphrase <Passphrase>
    $connectionString = Get-MgmtSvcSetting $namespace <ConnectionString>
    $builder = New-Object System.Data.SqlClient.SqlConnectionStringBuilder($connectionString.Value)
    $builder.Password = $setting.Value
    Set-MgmtSvcSetting <Service> <ConnectionString> $builder.ConnectionString
    

As definições e chaves de desencriptação e validação para a API Administração, portal de gestão para administradores (AdminSite), site de autenticação (AuthSite), portal de gestão para inquilinos (TenantSite) e Windows site de autenticação (WindowsAuthSite) são armazenados com a chave da máquina. Utilize os seguintes passos para rodar estes dados.

  1. Obtenha uma nova chave de máquina. O exemplo a seguir obtém uma nova chave de máquina para machineKey.decrytpion para o serviço API Administração. Pode utilizar estes passos para alterar outros valores da chave da máquina.

    Executar os seguintes cmdlets para obter uma nova chave de máquina:

    $machineKey = New-MgmtSvcMachineKey
    $decryption = $machineKey.Attribute('decryption').Value
    
  2. Utilize os dados na folha de cálculo para encontrar o primeiro local para machineKey.desencriptação. Para o serviço Administração API, esta é a Loja Secreta Config.

    Executar o seguinte cmdlet para alterar a definição de desencriptação da máquina:

    Set-MgmtSvcDatabaseSetting <Service> "machineKey.decryption" $decryption -Server <Server> -Passphrase <Passphrase> -Force
    
  3. Localize a segunda localização para a máquinaKey.desencriptação. Para o serviço API Administração, esta é a secção web.config machineKey.

    Executar os seguintes cmdlets para alterar a definição de desencriptação da máquinaKey.desencriptação:

    $decryption = Get-MgmtSvcDatabaseSetting <Service> “machineKey.decryption” –Server <Server> -Passphrase <Passphrase>
    Set-MgmtSvcSetting <Service> "machineKey.decryption" $decryption.Value
    

Algoritmos e chaves de encriptação rotativa

Use os seguintes passos para rodar algoritmos de encriptação e chaves de encriptação.

Para rodar algoritmos de encriptação e chaves de encriptação

  1. Obtenha uma nova chave de máquina. O exemplo a seguir obtém uma nova chave de máquina para o algoritmo de encriptação de notificação e chave para o site Administração. Pode usar estes passos para alterar outros algoritmos e chaves de encriptação.

    Nota

    As mesmas teclas são usadas tanto para encriptar como para desencriptar. Assim, podem ser consideradas chaves de encriptação ou desencriptação, dependendo da operação realizada. Por isso, usamos o valor de desencriptação abaixo, embora a chave que está a rodar seja a chave de encriptação .

    Executar os seguintes cmdlets para obter uma nova chave de máquina:

    $machineKey = New-MgmtSvcMachineKey
    $encryption = $machineKey.Attribute('decryption').Value
    $encryptionKey = $machineKey.Attribute('decryptionKey').Value
    
  2. Utilize os dados na folha de cálculo para encontrar a primeira localização para o algoritmo de encriptação ou chave. Para o algoritmo de encriptação de notificação e chave para o site Administração, esta é a Loja Secreta Config.

    Executar os seguintes cmdlets para alterar o algoritmo de encriptação e a chave:

    Set-MgmtSvcDatabaseSetting <Service> "NotificationEncryptionAlgorithm " $encryption -Server <Server> -Passphrase <Passphrase> -Force
    Set-MgmtSvcDatabaseSetting <Service> "EncryptionKey " $encryptionKey -Server <Server> -Passphrase <Passphrase> -Force
    
  3. Localize a segunda localização para o algoritmo de encriptação ou chave. Para o algoritmo de encriptação de notificação e chave para o site Administração, esta é a secção de definições de aplicações web.config.

    Executar os seguintes cmdlets para alterar o algoritmo de encriptação e a chave:

    $encryption = Get-MgmtSvcDatabaseSetting <Service> “NotificationEncryptionAlgorithm” –Server <Server> -Passphrase <Passphrase>
    Set-MgmtSvcSetting <Service> "NotificationEncryptionAlgorithm" $encryption.Value
    $encryptionKey = Get-MgmtSvcDatabaseSetting <Service> “EncryptionKey” –Server <Server> -Passphrase <Passphrase>
    Set-MgmtSvcSetting <Service> "EncryptionKey" $encryptionKey.Value
    

Alterar a senha de API de Administração de utilização

Ao contrário das palavras-passe utilizadas pelos fornecedores de recursos (que são descritas na secção seguinte), a palavra-passe para a API de utilização Administração é armazenada na loja Secret Config e na secção de definições de aplicações web.config. Utilize os seguintes passos para alterar a palavra-passe API de Utilização Administração.

Para rodar a palavra-passe API do Usage Administração

  1. Obtenha uma nova senha. Execute o seguinte cmdlet:

    $password = New-MgmtSvcPassword
    
  2. Mude a palavra-passe no primeiro local, a loja Secret Config. Execute o seguinte cmdlet:

    Set-MgmtSvcDatabaseSetting <Service>  <Secret>  $password -Server <Server> -Passphrase <Passphrase> -Force
    
  3. Altere a palavra-passe no segundo local, a secção de definições de aplicações web.config. Executar os seguintes cmdlets:

    $setting = Get-MgmtSvcDatabaseSetting <Service> <Secret> -Server <Server> -Passphrase <Passphrase>
    Set-MgmtSvcSetting <Service> <Secret> $setting.Value
    

Utilize as seguintes informações para rodar as palavras-passe para os fornecedores de recursos de monitorização, MySQL, SQL Server e utilização.

Para rodar palavras-passe do fornecedor de recursos

  1. Obtenha uma nova senha para o fornecedor de recursos. Execute o seguinte cmdlet:

    $password = New-MgmtSvcPassword
    
  2. Altere a palavra-passe no primeiro local. Execute o seguinte cmdlet:

    Set-MgmtSvcDatabaseSetting <Service> “Password” $pw -Server <Server> -Passphrase <Passphrase> -Force
    
  3. Altere a palavra-passe no terceiro local.

    Nota

    Para o serviço de monitorização, a palavra-passe chama-se "MonitoringRestBasicAuthKnownPassword". Para os outros fornecedores de recursos, a palavra-passe chama-se "Password".

    Execute o seguinte cmdlet:

    Set-MgmtSvcSetting <Service>  “Password” $pw -Encode
    
  4. Altere a palavra-passe no segundo local.

    Nota

    Os cmdlets seguintes alteram a palavra-passe para os quatro pontos finais, mas nem todos os fornecedores de recursos têm todos estes pontos finais. Veja os resultados de $rp identificar os pontos finais de cada fornecedor de recursos e, em seguida, ajuste os valores authenticationPassword adequadamente.

    Executar os seguintes cmdlets:

    $rp = Get-MgmtSvcResourceProviderConfiguration <Resource Provider Name> -DecryptPassword
    $rp.AdminEndpoint.AuthenticationPassword = $pw
    $rp.TenantEndpoint.AuthenticationPassword = $pw
    $rp.UsageEndpoint.AuthenticationPassword = $pw
    $rp.NotificationEndpoint.AuthenticationPassword = $pw
    Add-MgmtSvcResourceProviderConfiguration $rp -Force
    

Se estiver a utilizar o Relatório de Serviço com Windows Azure Pack, então tem de atualizar a palavra-passe no SQL VMs para Relatório de Serviço quando alterar a palavra-passe para o serviço de utilização.

Utilize os seguintes passos para redefinir a palavra-passe.

Para alterar as SQL palavras-passe VM para Relatório de Serviço

  1. No VM onde instalou a base de dados SQL que suporta o Relatório de Serviços, certifique-se de que o trabalho de agente SQL de relatório de serviço não está em funcionamento. Utilize os seguintes passos para visualizar o estado do trabalho:

    1. Ligação à instância de <base de dados prefixo-DW-SQL>\CPSDW.

    2. No Object Explorer, expandir SQL Server Agent.

    3. Clique em Jobs.

    4. No separador Ver, clique em Object Explorer Detalhes.

      Verifique a coluna 'Estado' para ver se o trabalho do agente está a funcionar.

  2. O Relatório de Serviço inclui um script que pode executar para alterar a palavra-passe. Executar o seguinte cmdlet a partir de um pedido de comando PowerShell para executar este script.

    \\<Service reporting host>\ServiceReporting\Maintenance\PostDeploymentConfig.ps1 -User UsageClient –Password $newPassword