# Segurança de chave

> Guia de whitelist/blacklist de IP para chaves da API LMU AI: restrinja quais IPs podem chamar sua chave para impedir que uma chave vazada seja abusada; suporta IPs únicos e faixas CIDR.

URL: https://docs.lmuai.com/pt/docs/guide/key-security



Se uma chave vaza, outras pessoas podem usá-la para consumir sua cota. Uma **whitelist de IP** é a proteção mais direta — apenas os IPs em que você confia têm permissão para usar a chave.

## Onde configurar [#onde-configurar]

Vá para &#x2A;*console → API Keys → Editar (ou Criar)** e encontre os dois campos, **whitelist de IP** e **blacklist de IP**.

Uma regra por linha, em um dos dois formatos:

| Formato    | Exemplo          | Descrição                                             |
| ---------- | ---------------- | ----------------------------------------------------- |
| IP único   | `203.0.113.10`   | Corresponde a exatamente um IP                        |
| Faixa CIDR | `203.0.113.0/24` | Corresponde a toda uma faixa de IPs (`/24` = 256 IPs) |

Tanto IPv4 quanto IPv6 são suportados (exemplo de IPv6: `2001:db8::/32`).

## Como isso tem efeito [#como-isso-tem-efeito]

* **Whitelist vazia** → sem restrição de origem; qualquer IP pode usar a chave
* **Whitelist não vazia** → apenas os IPs da lista podem usá-la; todos os outros são rejeitados
* **Blacklist** → IPs correspondentes são rejeitados, **tendo prioridade sobre a whitelist**
* Você pode usar ambas ao mesmo tempo (a blacklist é verificada primeiro, depois a whitelist)

Quando rejeitada, a API retorna `403 ACCESS_DENIED`.

## Descubra seu IP de saída real (importante!) [#descubra-seu-ip-de-saída-real-importante]

**Este é o erro mais fácil de cometer**: o IP que você configura na chave deve ser o **IP de saída público** que os servidores da LMU AI veem, não o endereço privado mostrado por `ipconfig` / `ifconfig` no seu computador.

```bash
# Command line
curl https://ifconfig.me
# or
curl https://ip.sb
```

Ou abra [ip.sb](https://ip.sb) / [ifconfig.me](https://ifconfig.me) no seu navegador.

<Callout type="warn">
  Seu IP de saída muda quando você ativa uma VPN ou um proxy corporativo, ou quando seu dispositivo móvel troca de rede Wi-Fi. Confirme-o com o comando acima antes de configurar a whitelist.
</Callout>

## Cenários comuns [#cenários-comuns]

**Cenário 1: Um IP fixo de escritório**

```
Whitelist:
203.0.113.10
```

**Cenário 2: Trabalhando de casa e do escritório**

```
Whitelist:
203.0.113.10      # Company egress
198.51.100.20     # Home broadband
```

**Cenário 3: Rodando no seu próprio servidor na nuvem**

```
Whitelist:
<your cloud server's public IP>
```

Permita apenas que seu servidor chame a API e use uma chave separada (sem whitelist) para desenvolvimento local.

**Cenário 4: Você só quer bloquear temporariamente um IP suspeito**

```
Blacklist:
1.2.3.4
```

Todo o resto funciona normalmente, sem impacto no uso comum.

## Solução de problemas [#solução-de-problemas]

**P: Minha chamada retorna 403 ACCESS\_DENIED — é uma restrição de IP?**

Muito provavelmente. Verifique nesta ordem:

1. Use `curl https://ifconfig.me` para confirmar seu IP de saída real atual
2. Compare-o com a whitelist da chave para ver se ele corresponde
3. Se não corresponder, adicione o IP atual à whitelist ou limpe temporariamente a whitelist para testar
4. Se ainda for rejeitado, verifique se ele está na blacklist, se a chave está desativada e se a cota está esgotada

**P: Coloquei um IP na whitelist, mas ainda sou rejeitado?**

* Você inseriu um **IP privado** (`192.168.x.x` / `10.x.x.x` / `172.16-31.x.x`)? Substitua-o pelo seu IP de saída público.
* Você inseriu um endereço IPv6, mas acessa a internet por IPv4 (ou vice-versa)? Insira ambos.
* Você inseriu um CIDR com formato inválido (como `1.2.3.4/33`)? Regras inválidas são silenciosamente ignoradas.

## Práticas recomendadas [#práticas-recomendadas]

* Para **chaves de produção**, recomendamos fortemente configurar uma whitelist de IP para minimizar a superfície de ataque
* Para **chaves de desenvolvimento / depuração**, você pode dispensar a whitelist, mas deve definir um **limite de cota total** como rede de proteção
* Se você está especialmente preocupado com vazamentos, combine-a com [**limitação de taxa**, **cota total** e **whitelist de modelos**](/pt/docs/guide/how-to-use-token) para uma defesa em camadas
* No momento em que suspeitar que uma chave vazou, **redefina ou exclua** ela no console imediatamente
