> ## Documentation Index
> Fetch the complete documentation index at: https://ajuda.medemerge.com.br/llms.txt
> Use this file to discover all available pages before exploring further.

# Requisitos

> O que a TI e o DBA do hospital preparam antes da instalação: máquina, regras de firewall e usuário de leitura.

## Máquina

* Linux com **Docker** e **Docker Compose**, em `amd64` ou `arm64`.
* Cerca de 500 MB de disco para a imagem, mais espaço para o buffer de reenvio. O buffer cresce quando a internet fica fora por muito tempo, justamente quando ele mais importa.
* Rede até o banco de dados, **a partir desta máquina**.
* Relógio sincronizado por NTP.

A máquina fica ligada o tempo todo: o coletor roda continuamente e se reinicia sozinho depois de um reboot.

## Firewall

| Direção | Destino | Porta | Quando |
| - | - | - | - |
| Saída | `api.medemerge.com.br` | 443 (HTTPS) | Sempre |
| Saída | O servidor do banco | A porta do banco (ex.: 1521 no Oracle) | Sempre |
| Saída | `github.com` e `ghcr.io` | 443 (HTTPS) | Só na instalação e nas atualizações |

**Nenhuma porta de entrada.** A plataforma nunca inicia conexão com o coletor.

## Banco de dados

Hoje o coletor lê bancos **Oracle**.

<Info>Usa outro banco? Fale com a MedEmerge antes de preparar a máquina.</Info>

## Usuário de leitura

A proteção do dado sensível acontece **na origem**, pelas permissões do banco. O coletor envia exatamente o que as consultas devolvem, sem filtrar nem transformar nada. Por isso o usuário que ele usa deve enxergar só o necessário.

A recomendação é um usuário exclusivo, **somente leitura**, com acesso apenas a views preparadas para BI:

```sql Oracle theme={null}
CREATE USER bi_medemerge IDENTIFIED BY "uma-senha-forte";
GRANT CREATE SESSION TO bi_medemerge;

-- Apenas as views de BI
GRANT SELECT ON his.vw_atendimentos_bi TO bi_medemerge;
GRANT SELECT ON his.vw_leitos_ocupacao TO bi_medemerge;

-- Tabelas de pacientes e prontuários: nenhum grant
```

As views são o lugar para mascarar ou omitir o que identifica pessoas: por exemplo, entregar só as iniciais em vez do nome completo.

<Warning>
  Dado mascarado ainda pode ser dado pessoal. Um número de atendimento, por exemplo, não tem nome,
  mas leva ao prontuário dentro do hospital. Ao desenhar as views, pergunte o que ali permite
  reidentificar alguém, e não apenas se há um nome.
</Warning>

O usuário e a senha **não** vão para a máquina do coletor. Envie-os à MedEmerge por um canal seguro combinado com o suporte, e eles são cadastrados, cifrados, na plataforma.

## O que a MedEmerge envia ao hospital

Dois valores que identificam o agente: o `public_id` e o `agent_secret`. O `agent_secret` é exibido uma única vez quando é gerado. Se ele se perder, a MedEmerge gera outro.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.