Anotações do Pod Suportadas pelo Sidecar da Wallarm¶
A solução Sidecar da Wallarm pode ser configurada via anotações em uma base per-pod. A lista de anotações suportadas nesta solução está descrita neste documento.
Prioridades das configurações globais e per-pod
As anotações per-pod têm precedência sobre os valores do gráfico Helm.
Lista de anotações¶
Anotação e valor de gráfico correspondente | Descrição |
---|---|
Anotação: sidecar.wallarm.io/sidecar-injection-schema config.injectionStrategy.schema | Padrão de implantação do container Wallarm: single (padrão) ou split . |
Anotação: sidecar.wallarm.io/sidecar-injection-iptables-enable config.injectionStrategy.iptablesEnable | Se deseja iniciar o contêiner iptables init: true (padrão) ou false . |
Anotação: sidecar.wallarm.io/wallarm-application Sem valor de gráfico | ID de aplicação da Wallarm. |
Anotação: sidecar.wallarm.io/wallarm-block-page Sem valor de gráfico | Página de bloqueio e código de erro para retornar a solicitações bloqueadas. |
Anotação: sidecar.wallarm.io/wallarm-enable-libdetection config.wallarm.enableLibDetection | Se deseja validar adicionalmente os ataques de Injeção de SQL usando a biblioteca libdetection: on (padrão) ou off . |
Anotação: sidecar.wallarm.io/wallarm-fallback config.wallarm.fallback | Modo fallback da Wallarm: on (padrão) ou off . |
Anotação: sidecar.wallarm.io/wallarm-mode config.wallarm.mode | Modo de filtragem de tráfego: monitoring (padrão), safe_blocking , block ou off . |
Anotação: sidecar.wallarm.io/wallarm-mode-allow-override config.wallarm.modeAllowOverride | Gerencia a capacidade de substituir os valores wallarm_mode por meio de configurações na Nuvem: on (padrão), off ou strict . |
Anotação: sidecar.wallarm.io/wallarm-node-group config.wallarm.api.nodeGroup | Especifica o nome do grupo de nós de filtragem que você deseja adicionar aos nós recém-implantados. Agrupamento de nós desta maneira está disponível somente quando você cria e conecta nós à Nuvem usando um token de API com a função Deploy (seu valor é passado no parâmetro config.wallarm.api.token ).Este valor não surte efeito nos pods Tarantool, nós para eles são sempre vinculados ao grupo de nós especificado no valor do gráfico Helm config.wallarm.api.nodeGroup . |
Anotação: sidecar.wallarm.io/wallarm-parser-disable Sem valor de gráfico | Permite desativar os analisadores. Os valores da diretiva correspondem ao nome do analisador a ser desativado, por exemplo, json . Múltiplos analisador podem ser especificados, dividindo-os por ponto e vírgula, por exemplo, json;base64 . |
Anotação: sidecar.wallarm.io/wallarm-parse-response config.wallarm.parseResponse | Se deseja analisar as respostas do aplicativo para ataques: on (padrão) ou off . A análise da resposta é necessária para a detecção de vulnerabilidades durante a detecção passiva e a verificação de ameaça ativa. |
Anotação: sidecar.wallarm.io/wallarm-acl-export-enable config.wallarm.aclExportEnable | Habilita on / desabilita off o envio de estatísticas sobre as solicitações de IPs na lista de negação do nó para a Nuvem.
|
Anotação: sidecar.wallarm.io/wallarm-parse-websocket config.wallarm.parseWebsocket | Wallarm tem suporte total para WebSockets. Por padrão, as mensagens de WebSockets não são analisadas quanto a ataques. Para forçar o recurso, ative o plano de assinatura de Segurança da API subscription plan e use esta anotação: on ou off (padrão). |
Anotação: sidecar.wallarm.io/wallarm-unpack-response config.wallarm.unpackResponse | Se deseja decomprimir dados comprimidos retornados na resposta do aplicativo: on (padrão) ou off . |
Anotação: sidecar.wallarm.io/wallarm-upstream-connect-attempts config.wallarm.upstream.connectAttempts | Define o número de reconexões imediatas para Tarantool ou API Wallarm. |
Anotação: sidecar.wallarm.io/wallarm-upstream-reconnect-interval config.wallarm.upstream.reconnectInterval | Define o intervalo entre tentativas de reconectar ao Tarantool ou Wallarm API depois que o número de tentativas sem sucesso excedeu o limite para o número de reconexões imediatas. |
Anotação: sidecar.wallarm.io/application-port config.nginx.applicationPort | O contêiner Wallarm espera que as solicitações de entrada sejam direcionadas para esta porta, caso não sejam encontradas portas de aplicativo de pod expostas. |
Anotação: sidecar.wallarm.io/nginx-listen-port config.nginx.listenPort | Porta escutada pelo contêiner Wallarm. Esta porta está reservada para uso pela solução sidecar Wallarm, ela não pode ser a mesmo que a application-port . |
Anotação: sidecar.wallarm.io/nginx-http-include Sem valor de gráfico | Matriz de caminhos para os arquivos de configuração NGINX que devem ser incluídos no nível http da configuração NGINX. O arquivo deve ser montado no contêiner e este caminho deve apontar para o arquivo no contêiner. |
Anotação: sidecar.wallarm.io/nginx-http-snippet Sem valor de gráfico | Configuração adicional inline que deve ser incluída no nível http da configuração NGINX. |
Anotação: sidecar.wallarm.io/nginx-server-include Sem valor de gráfico | Matriz de caminhos para os arquivos de configuração NGINX que devem ser incluídos no nível server da configuração NGINX. O arquivo deve ser montado no contêiner e este caminho deve apontar para o arquivo no contêiner. |
Anotação: sidecar.wallarm.io/nginx-server-snippet Sem valor de gráfico | Configuração adicional inline que deve ser incluída no nível server da configuração NGINX. |
Anotação: sidecar.wallarm.io/nginx-location-include Sem valor de gráfico | Matriz de caminhos para os arquivos de configuração NGINX que devem ser incluídos no nível location da configuração NGINX. O arquivo deve ser montado no contêiner e este caminho deve apontar para o arquivo no contêiner. |
Anotação: sidecar.wallarm.io/nginx-location-snippet Sem valor de gráfico | Configuração adicional inline que deve ser incluída no nível location da configuração NGINX. |
Anotação: sidecar.wallarm.io/nginx-extra-modules Sem valor de gráfico | Matriz de módulos NGINX adicionais que devem ser habilitados. |
Anotação: sidecar.wallarm.io/proxy-extra-volumes Sem valor de gráfico | Volumes personalizados a serem adicionados ao Pod (matriz). O valor da anotação deve ser envolvido em aspas simples '' . |
Anotação: sidecar.wallarm.io/proxy-extra-volume-mounts Sem valor de gráfico | Montagens de volume personalizadas a serem adicionadas ao contêiner sidecar-proxy (objeto JSON). O valor da anotação deve ser envolvido em aspas simples '' . |
Anotação: sidecar.wallarm.io/proxy-cpu config.sidecar.containers.proxy.resources.requests.cpu | CPU solicitada para o contêiner sidecar-proxy . |
Anotação: sidecar.wallarm.io/proxy-memory config.sidecar.containers.proxy.resources.requests.memory | Memória solicitada para o contêiner sidecar-proxy . |
Anotação: sidecar.wallarm.io/proxy-cpu-limit config.sidecar.containers.proxy.resources.limits.cpu | Limite de CPU para o contêiner sidecar-proxy . |
Anotação: sidecar.wallarm.io/proxy-memory-limit config.sidecar.containers.proxy.resources.limits.memory | Limite de memória para o contêiner sidecar-proxy . |
Anotação: sidecar.wallarm.io/helper-cpu config.sidecar.containers.helper.resources.requests.cpu | CPU solicitada para o contêiner sidecar-helper . |
Anotação: sidecar.wallarm.io/helper-memory config.sidecar.containers.helper.resources.requests.memory | Memória solicitada para o contêiner sidecar-helper . |
Anotação: sidecar.wallarm.io/helper-cpu-limit config.sidecar.containers.helper.resources.limits.cpu | Limite de CPU para o contêiner sidecar-helper . |
Anotação: sidecar.wallarm.io/helper-memory-limit config.sidecar.containers.helper.resources.limits.memory | Limite de memória para o contêiner sidecar-helper . |
Anotação: sidecar.wallarm.io/init-iptables-cpu config.sidecar.initContainers.iptables.resources.requests.cpu | CPU solicitada para o contêiner sidecar-init-iptables . |
Anotação: sidecar.wallarm.io/init-iptables-memory config.sidecar.initContainers.iptables.resources.requests.memory | Memória solicitada para o contêiner sidecar-init-iptables . |
Anotação: sidecar.wallarm.io/init-iptables-cpu-limit config.sidecar.initContainers.iptables.resources.limits.cpu | Limite de CPU para o contêiner sidecar-init-iptables . |
Anotação: sidecar.wallarm.io/init-iptables-memory-limit config.sidecar.initContainers.iptables.resources.limits.memory | Limite de memória para o contêiner sidecar-init-iptables . |
Anotação: sidecar.wallarm.io/init-helper-cpu config.sidecar.initContainers.helper.resources.requests.cpu | CPU solicitada para o contêiner sidecar-init-helper . |
Anotação: sidecar.wallarm.io/init-helper-memory config.sidecar.initContainers.helper.resources.requests.memory | Memória solicitada para o contêiner sidecar-init-helper . |
Anotação: sidecar.wallarm.io/init-helper-cpu-limit config.sidecar.initContainers.helper.resources.limits.cpu | Limite de CPU para o contêiner sidecar-init-helper . |
Anotação: sidecar.wallarm.io/init-helper-memory-limit config.sidecar.initContainers.helper.resources.limits.memory | Limite de memória para o contêiner sidecar-init-helper . |
Anotação: sidecar.wallarm.io/profile Sem valor de gráfico | A anotação é usada para atribuir um perfil TLS específico a um pod da aplicação para Encerramento de TLS/SSL. Esta anotação e o encerramento de TLS/SSL são suportados a partir do gráfico Helm 4.6.1. |
Existem mais diretivas NGINX suportadas pela Wallarm que não são abrangidas por anotações diretas. No entanto, você também pode configurá-las usando as anotações nginx-*-snippet
e nginx-*-include
.
Como usar anotações¶
Para aplicar uma anotação a um pod, especifique-a nas configurações do objeto Deployment
da aplicação apropriada, por exemplo:
apiVersion: apps/v1
kind: Deployment
metadata:
name: myapp
namespace: default
spec:
replicas: 1
selector:
matchLabels:
app: myapp
template:
metadata:
labels:
app: myapp
wallarm-sidecar: enabled
annotations:
sidecar.wallarm.io/wallarm-mode: block
spec:
containers:
- name: application
image: kennethreitz/httpbin
ports:
- name: http
containerPort: 80