Share via


Criar um Aplicativo Gerenciado para Armazenar Resumos de Blob

Pré-requisitos

Visão geral

O Aplicativo Gerenciado Resumo do Armazenamento de Blobs Apoiado pelo Razão Confidencial pode ser usado para garantir que os blobs em um contêiner de blob sejam confiáveis e não adulterados. O aplicativo, uma vez conectado a uma conta de armazenamento, rastreia todos os blobs que estão sendo adicionados a cada contêiner na conta de armazenamento em tempo real, além de calcular e armazenar os resumos no Razão Confidencial do Azure. As auditorias podem ser executadas a qualquer momento para verificar a validade dos blobs e garantir que o contêiner de blob não seja adulterado.

Implantando o aplicativo gerenciado

O Aplicativo Gerenciado pode ser encontrado no Azure Marketplace aqui: Resumos de Armazenamento de Blobs apoiados pelo Razão Confidencial (versão prévia).

Recursos a serem criados

Depois que os campos necessários são preenchidos e o aplicativo é implantado, os seguintes recursos são criados em um Grupo de Recursos Gerenciados:

Conectando uma conta de armazenamento ao aplicativo gerenciado

Depois que um aplicativo gerenciado for criado, você poderá conectar o Aplicativo Gerenciado à sua Conta de Armazenamento para iniciar o processamento e gravar resumos do Contêiner de Blobs no Razão Confidencial do Azure.

Criar um tópico e uma assinatura de evento para a conta de armazenamento

O Aplicativo Gerenciado usa uma Fila do Barramento de Serviço do Azure para acompanhar e registrar todos os eventos Criar Blob. Você usará a Fila criada no Grupo de Recursos Gerenciados pelo Aplicativo Gerenciado e a adicionará como Assinante de Eventos para qualquer conta de armazenamento para a qual esteja criando blobs.

Screenshot of the Azure portal in a web browser, showing how to set up a storage event subscription.

No portal do Azure, você pode navegar até a conta de armazenamento para a qual deseja começar a criar resumos de blob e ir para a folha Events. Lá, você pode criar uma Assinatura de Evento e conectá-la ao ponto de extremidade da fila do Barramento de Serviço do Azure.

Screenshot of the Azure portal in a web browser, showing how to set up a storage event subscription session ID.

A fila usa sessões para manter a ordenação em várias contas de armazenamento, portanto, você também precisará navegar até a guia Delivery Properties e inserir uma ID de sessão exclusiva para esta assinatura de evento.

Adicionar a função necessária à conta de armazenamento

O Aplicativo Gerenciado requer que a função Storage Blob Data Owner leia e crie hashes para cada blob e essa função deve ser adicionada para que o resumo seja calculado corretamente.

Screenshot of the Azure portal in a web browser, showing how to set up a managed identity for the managed app.

Observação

Várias contas de armazenamento podem ser conectadas a uma única instância de Aplicativo Gerenciado. Atualmente, recomendamos um máximo de 10 contas de armazenamento que contenham contêineres de blob de alto uso.

Adicionando blobs e criação de resumo

Depois que a conta de armazenamento estiver conectada corretamente ao Aplicativo Gerenciado, os blobs poderão começar a ser adicionados a contêineres dentro da conta de armazenamento. Os blobs são acompanhados em tempo real e os resumos são calculados e armazenados no Razão Confidencial do Azure.

Tabelas de transação e bloco

Todos os eventos de criação de blob são acompanhados em tabelas internas armazenadas no Aplicativo Gerenciado.

Screenshot of the Azure portal in a web browser, showing the transaction table where blob hashes are stored.

A tabela de transações contém informações sobre cada blob e um hash exclusivo que é gerado usando uma combinação de metadados e conteúdo do blob.

Screenshot of the Azure portal in a web browser, showing the block table where digest information is stored.

A tabela de blocos contém informações relacionadas a cada resumo criada para o contêiner de blob e a ID de transação associada para o resumo é armazenada no Razão Confidencial do Azure.

Observação

Cada evento de criação de blob não resultará na criação de um resumo. Os resumos são criados depois que um determinado tamanho de bloco é atingido. Atualmente, um resumo será criado para cada 4 eventos de criação de blob.

Exibindo resumo no Razão Confidencial do Azure

Você pode exibir os resumos armazenados diretamente no Razão Confidencial do Azure navegando até a folha Ledger Explorer.

Screenshot of the Azure portal in a web browser, showing the Azure Confidential Ledger explorer with digest transactions.

Executando uma auditoria

Se você quiser verificar a validade dos blobs adicionados a um contêiner para garantir que eles não sejam adulterados, uma auditoria poderá ser executada a qualquer momento. A auditoria reproduz cada evento de criação de blobs e recalcula os resumos com os blobs armazenados no contêiner durante a auditoria. Em seguida, ele compara os resumos recalculados com os resumos armazenados no Azure Confidential e fornece um relatório que exibe todas as comparações de resumo e se o contêiner de blob está ou não adulterado.

Disparando uma auditoria

Uma auditoria pode ser disparada incluindo a seguinte mensagem para a Fila do Barramento de Serviço associada ao aplicativo gerenciado:

{
    "eventType": "PerformAudit",
    "storageAccount": "<storage_account_name>",
    "blobContainer": "<blob_container_name>"
}

Screenshot of the Azure portal in a web browser, how to trigger an audit by adding a message to the queue.

Certifique-se de incluir um Session ID, pois a fila tem sessões habilitadas.

Exibindo os resultados da auditoria

Depois que uma auditoria for executada com êxito, os resultados da auditoria poderão ser encontrados em um contêiner nomeado <managed-application-name>-audit-records dentro da respectiva conta de armazenamento. Os resultados contêm o resumo recalculado, o resumo recuperado do Razão Confidencial do Azure e se os blobs são adulterados ou não.

Screenshot of the Azure portal in a web browser, showing a sample audit record with matching digests.

Log e erros

Os logs de erro podem ser encontrados em um contêiner nomeado <managed-application-name>-error-logs na respectiva conta de armazenamento. Se um evento de criação de blob ou um processo de auditoria falhar, a causa da falha será registrada e armazenada neste contêiner. Se houver dúvidas sobre os logs de erros ou a funcionalidade do aplicativo, entre em contato com a equipe de Suporte do Razão Confidencial do Azure fornecida nos detalhes do Aplicativo Gerenciado.

Limpar aplicativo gerenciado

Você pode excluir o Aplicativo Gerenciado para limpar e remover todos os recursos associados. A exclusão do Aplicativo Gerenciado impede que todas as transações de blob sejam controladas e impede que todos os resumos sejam criados. Os relatórios de auditoria permanecem válidos para os blobs que foram adicionados antes da exclusão.

Mais recursos

Para obter mais informações sobre aplicativos gerenciados e os recursos implantados, consulte os seguintes links:

Próximas etapas