Solucionado (ver solução)
Solucionado
(ver solução)
5
respostas

Noções de Segurança para o Médico ao Inserir Código em Publicações Científicas sobre IA

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Noções de Segurança para o Médico ao Inserir Código em Publicações Científicas sobre IA

Ricardo Costa Val do Rosário, PhD
Médico Angiologista e Cirurgião Cardiovascular
Especialização em Carreira de Inteligência Artificial (IA) – Alura/SP
Cursando Especialização em Carreira de Cloud Security – Alura/SP
Belo Horizonte – 2026

Declaração de Legitimidade de Autoria e Conformidade com a LGPD

Este documento foi redigido pelo autor com apoio instrumental do ChatGPT (OpenAI) e 
do Microsoft Copilot 365 para organização, revisão linguística e refinamento estrutural. 
O conteúdo final foi criticamente revisado pelo autor, que assume integral responsabilidade 
por sua precisão, originalidade, integridade e por eventuais omissões. Nenhum dado
identificável de paciente foi inserido nas ferramentas utilizadas.

Contextualização

À medida que a Inteligência Artificial (IA) avança na medicina, cresce também a exposição 
do médico a conteúdos técnico-científicos que incluem trechos de código, pseudocódigo, 
configurações de nuvem, consultas a bancos de dados e exemplos de automação. 

Em muitos casos, esses trechos são usados para aumentar a reprodutibilidade e o poder 
didático do texto; em outros, aparecem como “receitas” prontas que o leitor pode copiar e 
executar.

Em saúde, no entanto, um exemplo mal formulado pode induzir a práticas inseguras (ex.: 
exposição de dados, permissões excessivas, segredos embutidos, logs indevidos) e gerar 
riscos legais, éticos e reputacionais. 

Objetivo

Este artigo aborda noções de segurança para o médico autor de publicações técnicas – científicas 
relacionadas ao tema Medicina e IA. 
Descreve-se um conjunto de regras práticas com ênfase em “o que sempre fazer” e “o que não fazer”, 
apresentando exemplos detalhados de códigos de computação, do “modo errado” e do “modo correto”,
chamando a atenção para que estes, ao serem publicados, estejam:
1. objetivos,

2. auditáveis,

3. tecnicamente corretos,

4. em conformidade com a legislação,

5. em conformidade com o Código de Ética Médica,

6. seguros (não seja capaz de causar malefícios.

Escopo

1. Trechos de código executável, pseudocódigo e configurações (ex.: JSON/YAML) incluídos 
em artigos técnicos, relatórios, posts acadêmicos, preprints e materiais educacionais.

2. Boas práticas mínimas para evitar vazamento de dados, exposição de segredos, permissões
indevidas e ambiguidade perigosa ao compartilhar exemplos.

3. Orientações compatíveis com o princípio de minimização de dados (LGPD) e com o uso 
responsável de IA em saúde (sem inserir dados identificáveis de pacientes em ferramentas 
externas).

Fora de escopo

1. Instruções para exploração ofensiva, 

2. Técnicas de invasão, 

3. Bypass de controles de segurança,

4. Quaisquer exemplos que deliberadamente facilitem dano. 

5. Quando necessário, exemplos são mantidos em nível conceitual 
e com dados fictícios.

Noções básicas de segurança ao inserir código em artigos técnicos

Inserir trechos de código em artigos de tecnologia, ciência de dados ou segurança pode elevar
muito a clareza e o poder didático do texto. Em temas sensíveis (como segurança, saúde), 
porém, o autor  assume uma responsabilidade adicional: 

1.	um exemplo incorreto pode confundir o leitor,

2.	um exemplo excessivamente prescritivo pode ser aplicado fora de contexto. 

Por isso, mesmo quando o código é meramente ilustrativo, vale adotar boas práticas mínimas 
de revisão.
1.	Rotule o trecho: 
•	deixe explícito se é executável, pseudocódigo ou exemplo ilustrativo
•	declare, se aplicável, o que foi omitido.

2.	Valide sintaxe e formatação: 
•	JSON deve ser válido,
•	Python deve, ao menos, importar sem erro,
•	Pseudocódigo deve manter consistência lógica.

3.	Padronize termos e siglas:
•	use os mesmos nomes do texto (ex.: MFA, sessão, dispositivo homologado, RBAC), evitando
variações que pareçam contradições.

4.	Revise segurança conceitual: 
•	evite incentivar práticas perigosas (senhas hardcoded, logs expostos, segredos no código, 
permissões amplas por padrão),
•	se algo for simplificado, declare a simplificação.

5.	Inclua uma “frase de produção”: 
•	uma linha curta lembrando que, em produção, devem-se usar bibliotecas consolidadas, revisão 
por pares e parâmetros definidos por política de segurança.
5 respostas

Sugestão de Fluxo de Trabalho

1. escrever o trecho;

2. testar em um ambiente local ou em um “arquivo mínimo” (quando o objetivo for
 executabilidade);

3. reler procurando ambiguidades;

4. registrar o que o código pretende demonstrar em uma única frase. 

5. lembrar que o objetivo do código  é tornar o raciocínio verificável e com o menor grau de
ruídos interpretativos.

Reforçando o que sempre fazer na publicação de códigos

1.	Rotular claramente:
•	se o trecho é executável, 
•	se é um pseudocódigo,
•	se é exemplo ilustrativo
•	se houve omissões por medidas de segurança.

2.	Garantir validade mínima do tipo: 
•	sintaxe correta (JSON/YAML), 
•	imports básicos (Python),
•	consistência lógica (pseudocódigo).

3.	Usar dados fictícios ou simulados e não identificáveis em:
•	nomes,
•	IDs, 
•	datas, 
•	endpoints,
•	chaves.

4.	Aplicar política do menor privilégio” quando for exemplificar: 
•	permissões,
•	demonstração de conceitos. 

5.	Não inserir segredos ou credenciais na demonstração de: 
•	variáveis de ambiente, 
•	cofres de segredos,
•	placeholders.

6.	Inserir uma “frase de produção”, do tipo: 
•	bibliotecas consolidadas, 
•	revisão por pares, 
•	observabilidade adequada,
•	parâmetros definidos por política.

7.	Explicitar o objetivo do trecho em frases curtas, tais como: 
•	este código demonstra X,
•	 não deve ser usado como Y.

Erros clássicos e o que nunca fazer

1.	Publicar segredos - mesmo “de teste”:
•	tokens, 
•	senhas, 
•	chaves, 
•	connection strings.

2.	Usar exemplos com permissão ampla por padrão (ex.: admin, wildcard *):
•	sem justificar,
•	sem alertar

3.	Expor logs, prints e screenshots com informações críticas, do tipo:
•	e-mails, 
•	IDs, 
•	URLs internas, 
•	nomes de buckets, 
•	nomes de serviços, 
•	IPs,
•	caminhos de rede verdadeiros.

4.	Copiar/colar trechos “funcionou pra mim” sem informar:
•	versão, 
•	pré-requisitos,
•	limitações do ambiente.

5.	Incluir exemplos que, no contexto de saúde, facilitem reidentificação (mesmo que o dado 
pareça “anônimo”): 
•	doença condicionada à uma condição específica (gênero, idade, herança genética),
•	imagens ou resultados de exames demonstrando a evolução da doença (ex. melhorando 
após tratamento instituído), 
•	fotografias que ocultam partes da face mas identificam outras características do corpo (sexo, 
cicatrizes, ausência de segmentos anatômicos). 

Checklist final antes de publicar

1.	O trecho está rotulado (executável/pseudocódigo/ilustrativo) e tem objetivo descrito em uma frase,

2.	Não há segredos, tokens, senhas, chaves, connection strings ou cookies no texto,

3.	Todos os dados são fictícios e não identificáveis; não há risco de reidentificação,

4.	Permissões, escopos e papéis seguem menor privilégio (sem wildcards desnecessários),

5.	Qualquer simplificação perigosa foi explicitamente declarada como simplificação,

6.	O trecho foi validado (rodou/compilou/importou) ou, se não, isso está declarado,

7.	Versões e pré-requisitos relevantes foram indicados (quando isso afeta segurança ou 
comportamento),

8.	Há uma “frase de produção” lembrando controles, revisão por pares e bibliotecas consolidadas.

Exemplo 1 (Medicina + IA) — Token embutido ao chamar um modelo clínico.

# Problema: além de vazar um segredo, o padrão incentiva o leitor a “colar credenciais” no script de 
inferência (risco alto em contextos assistenciais). 

# Correção: usar variáveis de ambiente/placeholders e, em produção, cofre de segredos e rotação.

# Frase de produção: em ambientes reais, segredos devem ser armazenados em cofre de 
segredos e rotacionados, com auditoria e menor privilégio.

Modo errado (não publicar segredos):

Python
import requests

# Ex.: serviço interno de inferência (dados fictícios) API_TOKEN = "eyJhbGciOi..." # NUNCA INCLUIR EM ARTIGO

payload = {"idade": 58, "sexo": "F", "pressao_sistolica": 145}

resp = requests.post( "https://ml.exemplo-saude.test/predizer-risco-tvp", headers={"Authorization": f"Bearer {API_TOKEN}"}, json=payload, timeout=10 )
print(resp.json())

Modo correto (placeholder + variável de ambiente):

Python
import os
import requests

# Defina antes de executar (não coloque no artigo):
# export ML_API_TOKEN="<seu_token_aqui>"
token = os.getenv("ML_API_TOKEN")

payload = {"idade": 58, "sexo": "F", "pressao_sistolica": 145}

resp = requests.post( "https://ml.exemplo-saude.test/predizer-risco-tvp", headers={"Authorization": f"Bearer {token}"}, json=payload, timeout=10 )
print(resp.status_code)

Exemplo 2 (Medicina + IA) — Logs de predição com texto clínico e identificadores.

# Problema: pipelines de IA frequentemente registram entradas/saídas para depuração; se isso
incluir dados identificáveis ou conteúdo clínico (que é dado sensível), cria risco de vazamento
e não conformidade. 

# Correção: registrar apenas metadados mínimos, usar pseudonimização e evitar logar payloads
completos.

# Frase de produção: em sistemas reais, use biblioteca de logging, classificação de dados, mascaramento 
padronizado e política de retenção, evitando logs com dados sensíveis.

Modo errado (não logar texto clínico/identificável):

Python
def predizer_readmissao(entrada):
# entrada pode conter: nome, documento, hipótese diagnóstica, evolução, etc.
print("entrada=", entrada) # NÃO FAZER
prob = modelo.predict_proba(entrada)[0][1]
print("prob_readmissao=", prob) # ainda pior se junto do payload
return prob

Modo correto (minimização + pseudonimização):

Python
import hashlib

def _pseudonimo(valor: str) -> str:
return hashlib.sha256(valor.encode("utf-8")).hexdigest()[:10]

def predizer_readmissao(entrada):
# Logue somente o mínimo necessário (sem texto clínico e sem identificadores diretos) atendimento_id = str(entrada.get("atendimento_id", ""))
versao_modelo = str(entrada.get("versao_modelo", "v1"))
print(f"predicao_readmissao atendimento={_pseudonimo(atendimento_id)} modelo={versao_modelo}")

prob = modelo.predict_proba(entrada)[0][1]
# Se precisar registrar a saída, registre de forma agregada e com política de retenção
return prob

Exemplo 3 — Permissões excessivas por conveniência (política de acesso).

# Problema: exemplos com wildcard tendem a ser copiados para produção. 

# Correção: restringir ações e recursos ao mínimo e declarar que é apenas ilustrativo.

# Frase de produção: em ambientes reais, políticas devem ser revisadas, testadas e aprovadas; 
evite curingas e restrinja recursos, ações e condições.

Modo errado (permissão ampla por padrão):

JSON
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "*",
"Resource": "*"
}
]
}

Modo correto (menor privilégio + recurso específico):

JSON
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": ["s3:GetObject"],
"Resource": "arn:aws:s3:::bucket-exemplo/artigos/*"
}
]
}

Exemplo 4 (Cloud Security) — Link público/assinatura (SAS) exposta em artigo.

# Problema: publicar um link público ou uma assinatura temporária em texto (mesmo com “prazo curto”) 
pode dar acesso indevido a dados e incentivar compartilhamento inseguro. 

# Correção: usar placeholders, explicar o padrão correto (identidade gerenciada, RBAC, acesso 
privado) e declarar que o link real nunca deve ser publicado.

# Frase de produção: trate URLs assinadas como segredos; aplique expiração curta, escopo mínimo,
auditoria, e evite que o artigo ensine padrões copiáveis para exposição pública.

Modo errado (não publicar link real/assinado):

# Exemplo ilustrativo (NÃO publicar URL real) url = "https://storageexemplo.blob.core.windows.net/exames/paciente123.pdf?sv=...&sig=..."
print("Baixe aqui:", url)

Modo correto (placeholder + padrão de acesso):

# No artigo, use placeholders: # https://<storage_account>.blob.core.windows.net/<container>/<objeto>

# Em produção, prefira: # - acesso privado + RBAC (sem link público) # - identidade gerenciada / workload identity # - geração de links temporários apenas em runtime e com menor privilégio

Considerações Éticas (prudência acima do “tecnicamente correto”)

Além do cumprimento da lei e das boas práticas técnicas, vale um critério simples para 
orientar exemplos e “receitas” em textos sobre IA e saúde: se algo for permitido e até 
funcionar, mas não for eticamente defensável, não deve ser ensinado como padrão. 

Em contextos assistenciais, detalhes aparentemente neutros (um log “inofensivo”, um
identificador persistente, um link temporário, uma permissão ampla “só para testar”)
podem se tornar atalhos copiáveis e produzir dano real — ao paciente, à equipe e à instituição. 

Por isso, a pergunta final antes de publicar não é apenas “está certo?”; é também: 
“
•	isso preserva a confidencialidade, 
•	segue a minimização de dados,
•	respeita o princípio da não-maleficência?
”
Quando houver dúvida, prefira exemplos mais conservadores, explicite as limitações e recomende 
revisão por pares: em saúde, prudência não é excesso — é cuidado.

Considerações finais

Não há a obrigatoriedade de se inserir código e nem tampouco a de transformar o médico em programador, 
mas sim a de garantir que, quando trechos técnicos forem incluídos (código, pseudocódigo, configurações, 
consultas, scripts), eles estejam: 

•	tecnicamente corretos,
•	bem contextualizados
•	em conformidade com a legislação aplicável, especialmente os princípios de minimização e proteção de dados.

Em saúde, exemplos “copiáveis” podem ser executados fora de contexto e gerar efeitos indesejados.
O mesmo princípio do Ato Médico — não causar danos (no harm) — deve orientar a escrita técnico-científica: 
priorize clareza, verificabilidade e segurança, acima de qualquer exibicionismo técnico.
solução!

Oi, Ricardo! Tudo bem com você?

Agradeço por compartilhar suas reflexões e aprendizados com a comunidade Alura.

Gostei bastante de como você estruturou o fluxo de trabalho e reforçou práticas como menor privilégio, uso de dados fictícios e a preocupação com a LGPD. Isso mostra um cuidado técnico e ético, algo essencial quando falamos de IA aplicada à saúde. Seu material está bem alinhado com o que o curso propõe sobre responsabilidade no uso de identidades e acessos.

Continue nesse caminho, aprofundando esse olhar crítico sobre segurança e boas práticas. Dica: sempre que for publicar exemplos, revise pensando no “efeito cópia” , ou seja, pergunte-se como alguém aplicaria aquele código em produção. Para fazer isso, tente adicionar uma linha simples explicando limites e riscos do exemplo. Isso ajuda a guiar quem está aprendendo e evita usos indevidos.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!

Oi Rafaela
Agradeço a diga.
Vou passar a adota-la como sugeriu.
Att,
Ricardo