- Introdução
- Requisitos
- Melhores práticas
- Instalação
- Atualizando
- Servidor de Identidade
- Solução de problemas de erros de inicialização
Pré-requisitos para a instalação
Além dos pré-requisitos listados aqui para a instalação do Orchestrator, o Identity Server precisa de certificados válidos.
O Identity Server exige os seguintes certificados válidos:
- Um certificado para o protocolo HTTPS.
-
Um certificado usado para assinar os tokens gerados pelo Identity Server.
Importante:Por razões de segurança, o certificado usado pelo Identity Server precisa:
- ter uma chave pública em 2048 bits
- ter uma chave privada acessível pelo usuário do AppPool,
- estar no seu período de validade (não expirado).
O local do certificado é definido no arquivoappsettings.Production.json
de configuração do Identity Server, na seção Signing Credential.Observação: O certificado é usado para assinar tokens de acesso do OpenID que são usados para a identificação de usuário por meio do navegador e para a comunicação de serviço entre o Orchestrator e o Identity Server. Clique aqui para mais detalhes sobre o OpenID Connect.
Você pode empregar a rotação de certificados para evitar o risco de expiração do certificado e, implicitamente, uma falha do Identity Server. Este método implica manter dois certificados e rotacioná-los periodicamente. Observe, no entanto, que você pode usar apenas uma chave de assinatura por vez.
Para iniciar o processo de rotação de certificado, siga as seguintes etapas:
- Especifique os , e iniciais do certificado
NameType
usando oStoreLocation
parâmetroappsettings.Production.json
na seção SigningCredentialSettings doName
Location
. Observe que esta é a chave de assinatura padrão. - Especifique os
Name
,Location
eNameType
do segundo certificado usando o parâmetroValidationKeys
na mesma seção do arquivoappsettings.Production.json
. Certifique-se de concluir esta etapa antes da data de rotação. - Nesta etapa, o segundo certificado é publicado usando o endpoint
identity/.well-known/openid-configuration/jwks
. Isso garante que todos tenham tempo suficiente para atualizar seu documento de descoberta em cache. - No tempo de rotação, troque os certificados e reinicie o Identity Server. O novo certificado agora pode ser usado para assinar enquanto o anterior continua disponível para fins de validação pelo tempo que você precisar.
- O certificado anterior pode ser removido com segurança da configuração após 48 horas.
SigningCredential
faz referência ao certificado usado atualmente, enquanto ValidationKeys
faz referência à chave de validação recém-publicada.
"SigningCredentialSettings": {
"StoreLocation": {
"Name": "2816a67bc34496ca0acabbe04eb149b88ade0684",
"Location": "LocalMachine",
"NameType" : "Thumbprint",
"ValidationKeys": [
{
"Name": "2cde6c443f0147c6258a6fe2203e71a997bfcd44",
"Location": "LocalMachine",
"NameType" : "Thumbprint"
}
]
}
}
"SigningCredentialSettings": {
"StoreLocation": {
"Name": "2816a67bc34496ca0acabbe04eb149b88ade0684",
"Location": "LocalMachine",
"NameType" : "Thumbprint",
"ValidationKeys": [
{
"Name": "2cde6c443f0147c6258a6fe2203e71a997bfcd44",
"Location": "LocalMachine",
"NameType" : "Thumbprint"
}
]
}
}
AppSettings.Production.json
AppSetting.Production.json
.
Para alternar certificados de assinatura, mantendo a criptografia de configurações segura, faça o seguinte:
- Descriptografe o arquivo
AppSettings.Production.json
. - Atualize o certificado de assinatura no arquivo
AppSettings.Production.json
. - Criptografe o arquivo
AppSettings.Production.json
novamente. - Reinicie o servidor de identidade.