Criando um certificado

Criando um certificado para usar no data protection

Para habilitar o funcionamento é necessário criar um certificado seja pelo Windows / Linux / Mac e compartilhar entre todas as réplicas do microsserviço. Esse compartilhamento vai garantir que um request que está sendo processamento por meio de uma instância consiga continuar na outra.

Criando o certificado no windows

Para a criação do certificado utilizaremos a pasta local (c:\temp\ssl) e a ferramenta Windows Terminal / PowerShell que deve ser inicializada em modo administrador antes de executar os comandos abaixo.

  1. Execute o comando powershell para criar um novo certificado
New-SelfSignedCertificate -Type Custom -Subject "CN=TokenSigningForDataProtection" -TextExtension @("2.5.29.37={text}1.3.6.1.5.5.7.3.3") -KeyUsage DigitalSignature -KeyAlgorithm RSA  -KeyLength 2048 -CertStoreLocation "Cert:\LocalMachine\My"

Você terá como resultado algo parecido:

1
2
3
Thumbprint                                Subject
----------                                -------
5C9A0067427FEE4E66D33761D04BC7F36064DA87  CN=TokenSigningForDataProtection
  1. Copie o valor do Thumbprint e utilize no campo Thumbprint e depois defina uma nova senha para utilização no campo Password.

$cert = (Get-ChildItem -Path cert:\LocalMachine\My<Thumbprint>)
$mypwd = ConvertTo-SecureString -String “” -Force -AsPlainText

A senha informada acima será utilizada na configuração do certificado no Cluster.

Exemplo:

$cert = (Get-ChildItem -Path cert:\LocalMachine\My\5C9A0067427FEE4E66D33761D04BC7F36064DA87)
$mypwd = ConvertTo-SecureString -String "@mypaswrodk76" -Force -AsPlainText
  1. Execute o comando abaixo utilizando o mesmo Thumbprint anterior
    Get-ChildItem -Path cert:\localMachine\my<Thumbprint> | Export-PfxCertificate -FilePath C:\temp\ssl\certificate.pfx -Password $mypwd

Exemplo:

Get-ChildItem -Path cert:\localMachine\my\5C9A0067427FEE4E66D33761D04BC7F36064DA87 | Export-PfxCertificate -FilePath C:\temp\ssl\certificate.pfx -Password $mypwd

Após executar esse comando você terá um novo arquivo SSL na pasta C:\temp\ssl e já pode ser copiado
para um storage compartilhado no Cluster do Kubernetes.

  1. Vericicando a validade do certificado criado anteriormente
    a) Instale o gerenciador de pacotes https://chocolatey.org
    b) Abra um prompt como administrador e instale o OpenSSL
    choco install openssl
    c) Feche o windows terminal e depois abra novamente
    d) Entre na pasta onde gerou o certificado (C:\temp\ssl)
    openssl pkcs12 -clcerts -nodes -in .\certificate.pfx | openssl x509 -noout -enddate
    e) Digite a senha do certificado e verá a validade do mesmo

Próximos passos:
a) Criar uma Storage no Cluster
b) Modificar o deployment do POD montando o volume
c) Copiar o certificado para o Storage
d) Modificar a configuração Security do Devprime para informar o path do certificado no cluster.

Para saber mais:

Última modificação August 31, 2023 (bc414ee2)