O problema
Tenho um serviço de app e quero que pessoas com certificados específicos possam me ligar e depois enviar também a impressão digital do Certificado para o serviço. Como devo fazer isso no Azure?
Mais explicação
Digamos que existam 10 sistemas diferentes que possam chamar meu serviço usando seu próprio certificado (assinado por). Eu gostaria de verificá-los com os do meu armazenamento de certificados e, se fosse um deles, colocar a impressão digital no cabeçalho HTTP e enviá-la para o meu serviço de aplicativo.
O que descobri até agora:
Parece um trabalho de firewall para mim, então verifiquei se o "Application Gateway" parece ser a solução. Mas não consegui encontrar onde configurá-lo para adicionar a impressão digital aos cabeçalhos HTTP.
Alguma ideia?
Responder1
O Azure Application Gateway está limitado ao tratamento do certificado no seu caso. No seu caso, uma das soluções muito comuns é usar o certificado Azure Key Vault para armazenar seu certificado. Sempre que alguém enviar uma solicitação para seu aplicativo Web, seu aplicativo precisará ligar para o identificador de certificado do Azure Key Vault para recuperar e verificar a impressão digital.
Este artigo pode ser um bom começohttps://docs.microsoft.com/en-us/rest/api/keyvault/certificates-and-policies
Se você usar a API REST, poderá recuperar a impressão digital do seu certificado usando a operação Obter certificado (https://docs.microsoft.com/en-us/rest/api/keyvault/getcertificate/getcertificate). O valor x5t na resposta é a informação da impressão digital.
Por que sugiro o Azure Key Vault? Porque foi projetado para gerenciamento de certificados e criptografia. Não vou dizer que o Azure Key Vault é o melhor ou o mais seguro, mas pelo menos foi projetado para resolver o seu problema com certeza.