DocsSegurança e implantação
Middleware e segurança
Nexy é executado em FastAPI e Starlette, portanto seu middleware se aplica. Os comuns são uma linha em nexyconfig.py.
from nexy.core.models import NexyConfigModel class NexyConfig(NexyConfigModel): useCORS = { "allow_origins": ["https://app.example.com"], "allow_methods": ["GET", "POST"], "allow_credentials": True, } useGZip = {"minimum_size": 1000} useTrustedHost = {"allowed_hosts": ["example.com", "*.example.com"]} useHTTPSRedirect = True useSession = {"secret_key": "change-me"}Cada dicionário use* é passado como argumentos de palavra-chave para o middleware Starlette correspondente: CORSMiddleware, GZipMiddleware, TrustedHostMiddleware, SessionMiddleware.
Seu próprio middleware
from my_app.middleware import RequestIdMiddleware class NexyConfig(NexyConfigModel): useMiddlewares = [RequestIdMiddleware]useMiddlewares faz aulas de middleware ASGI.
HTTPS
Sirva HTTPS diretamente com useSslKeyfile e useSslCertfile ou encerre o TLS em um proxy reverso e defina useHTTPSRedirect. No desenvolvimento, o Vite servidor de desenvolvimento permanece em loopback HTTP atrás da origem Nexy, então o TLS nunca o alcança.
Lista de verificação de produção
useDocs = Falsese o esquema OpenAPI não deve ser público.useTrustedHostdefinido para seus domínios, para bloquear ataques de cabeçalho de host.useCORScom origens explícitas, nunca["*"]junto com credenciais.- Um verdadeiro
secret_keypara sessões, lido no ambiente. - Os acessórios passados para os componentes do cliente são escapados por HTML pelo Nexy. Não marque a entrada do usuário
| safenos modelos.
Guardas e dependências
A proteção por rota usa FastAPI dependências. Um dependencies.py em um diretório de rotas se aplica a tudo abaixo dele: veja Dependências. No roteador modular use @UseGuard.
Próximas etapas
- Configuração: todos os campos de middleware
- Implantar
- Desempenho