Saltar para o conteúdo principal
Se o seu agente lida com dados de cliente, os dois lugares onde a PII vaza são os prompts que você envia upstream e os logs que você mantém. Esta receita conecta o logging seguro de PII de ponta a ponta: uma regra de máscara de PII limpa a requisição antes do modelo, o conteúdo bruto correspondente fica fora do seu match feed por padrão, e a retenção de request-log é limitada para que nada permaneça. Tudo abaixo é configuração de workspace no console — sua app continua chamando /v1/chat/completions sem alteração.
Cada etapa de configuração é controlada por papel. Criar um guardrail precisa de Developer+; mudar retenção ou residência de compliance precisa de Admin do workspace. Ler o feed de Matches está aberto a qualquer Member.

1. O pipeline de logging seguro de PII em três movimentos

Um pipeline seguro de PII são três controles independentes, cada um um interruptor que você vira uma vez para o workspace inteiro:

Mascare na borda

Uma regra de guardrail pii redige emails, SSNs, cartões e mais para tags tipadas antes que o modelo upstream sequer veja a requisição.

Não registre conteúdo bruto

O toggle Log raw content do guardrail é desligado por padrão, então o match feed registra que uma regra disparou, nunca a substring correspondente.

Limite a retenção

A retenção de request-log tem padrão de 30 dias e é limitada pelo servidor a um máximo rígido de 180 dias — de vida curta por design.
O resto desta página conecta os três juntos com um exemplo concreto.

2. Mascare PII antes que o modelo a veja

Crie um guardrail com uma única regra pii no stage input e a ação mask. Em uma ação de mask cada correspondência é substituída por uma tag tipada — um email vira [EMAIL], um SSN vira [SSN] — então o modelo upstream recebe uma requisição sanitizada, não a original.
{
  "type": "pii",
  "stage": "input",
  "action": "mask",
  "entities": ["email", "phone", "ssn", "credit_card", "ip"]
}
No console: Guardrails → New guardrail, adicione a regra acima (ou comece a partir do preset PII Shield sob a categoria PII), depois salve. Vincule-o a uma chave de API via o dropdown Guardrail da chave, ou defina-o como o padrão do workspace para que cada chave o herde.
Quer algumas entidades mascaradas mas outras rejeitadas de imediato? Uma regra pode carregar overrides por entidade — mascarar email/phone mas block em ssn/credit_card — via entity_actions. Veja Guardrails para o conjunto completo de entidades de PII, entidades de regex customizadas e a sintaxe de override por entidade.
Envie uma requisição com essa chave e o email é redigido em voo:
curl https://api.orcarouter.ai/v1/chat/completions \
  -H "Authorization: Bearer sk-orca-..." \
  -H "Content-Type: application/json" \
  -d '{
    "model": "openai/gpt-4o-mini",
    "messages": [
      {"role": "user", "content": "Draft a reply to jane@acme.com about her SSN 123-45-6789"}
    ]
  }'
O modelo vê Draft a reply to [EMAIL] about her SSN [SSN]. Os valores originais nunca deixam o gateway.
A máscara no stage input é aquilo em que um pipeline seguro de PII se apoia — ela limpa a requisição antes da chamada upstream. A máscara no stage output funciona tanto em respostas não-streaming quanto streaming (o streaming reescreve cada chunk no lugar), então você também pode redigir PII que o modelo emite.

3. Mantenha conteúdo bruto fora dos seus logs

Toda regra que dispara registra uma match — seu tipo, ação, stage e uma string de detalhe. Se a match também armazena a substring correspondente (o endereço de email real, o SSN real) é controlado pelo toggle Log raw content do guardrail, que é desligado por padrão — a postura conservadora de privacidade.
Com Log raw content desligado, o feed de Matches mostra que uma regra pii mascarou um email no stage input, mas nunca o próprio endereço. É exatamente isso que você quer para um pipeline seguro de PII: auditabilidade completa do que disparou, zero PII retida. Deixe-o desligado em produção; ligue-o por guardrail apenas para triagem de vida curta. O toggle não é retroativo.
Leia o feed em Guardrails → Matches (GET /api/guardrail/match, Member). Agrupe e filtre por guardrail, tipo de regra e ação para ver sua taxa de máscara sem nunca expor um valor real. Marcar uma match como falso positivo é uma ação de Admin (POST /api/guardrail/match/:id/mark-fp).

4. Limite por quanto tempo os request logs vivem

A captura de request-log é um recurso de troubleshooting opt-in, e quando está ligada, a retenção é limitada:
ConfiguraçãoValorComportamento
Retenção padrão30 diasAplicada quando nenhum valor por workspace é definido.
Máximo rígido180 diasQualquer valor maior é limitado pelo servidor.
Você não pode exceder o teto de 180 dias — ele é aplicado no momento da escrita, não uma sugestão. Combinado com a máscara de §2, mesmo logs capturados mantêm texto sanitizado, e eles expiram em um relógio fixo.
Trate os request logs capturados como uma alavanca de debugging, não um repositório de dados. Habilite a captura durante um incidente, mantenha a janela de retenção apertada e confie no feed de Matches (que nunca mantém PII bruta quando Log raw content está desligado) para observabilidade em estado estável.

5. Direito ao apagamento e residência

Mais dois controles arredondam um pipeline em conformidade:
Uma autoexclusão de usuário entra em uma janela de carência de 30 dias, após a qual a PII é limpa e uma purga em cascata remove os request logs, as guardrail matches e os firewall events desse usuário juntos — para que nenhum artefato sobreviva à requisição de apagamento.
Defina a região à qual os artefatos de relatório de compliance são fixados (us, eu, uk, ap, cn, global) via PUT /api/compliance/residency (Admin). Leituras cross-region de um relatório são retidas. Isso fixa a região do artefato de relatório — não é geo-fixação de dados de inferência.

6. Verifique antes de lançar

Prove que a máscara faz o que você espera antes que qualquer tráfego dependa dela:
1

Faça sandbox da regra

Abra a aba Test no editor de guardrail, cole texto de amostra com um email e SSN de aparência real, escolha o stage input e rode. O sandbox retorna o veredito e o texto renderizado ([EMAIL], [SSN]) sem uma chamada upstream ou qualquer gasto de cota.
2

Eval contra um corpus

A aba Eval roda a política sobre corpora JSONL embutidos ou customizados para que você possa medir a taxa de captura e falsos positivos antes de ir ao ar.
3

Confirme que o feed permanece limpo

Envie uma requisição real, depois abra Matches e confirme que a entrada mostra a regra disparando com nenhuma substring correspondente — prova de que Log raw content está desligado.

Relacionado

Referência de Guardrails

O conjunto completo de entidades de PII, entidades customizadas, overrides por entidade e o feed de Matches.

Proteja um pipeline RAG

Controles de grounding e PII para agentes com retrieval-augmented.

Evidência SOC 2

Transforme atividade de guardrail e firewall em relatórios de auditoria assinados.

Exfiltração de dados

O modelo de ameaças por trás de manter PII fora da rede e dos logs.