Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
DevUI je navržená jako ukázková aplikace pro místní vývoj. Tato stránka se zabývá aspekty zabezpečení a osvědčenými postupy, pokud potřebujete vystavit DevUI mimo localhost.
Výstraha
DevUI není určen pro produkční použití. V případě produkčních nasazení vytvořte vlastní rozhraní pomocí sady SDK pro rozhraní Agent Framework s příslušnými bezpečnostními opatřeními.
Již brzy
Dokumentace k DevUI pro C# bude brzy k dispozici. Zkontrolujte to prosím později nebo se obraťte na dokumentaci k Pythonu pro konceptuální pokyny.
Režimy uživatelského rozhraní
DevUI nabízí dva režimy, které řídí přístup k funkcím:
Vývojářský režim (výchozí)
Úplný přístup ke všem funkcím:
- Panel ladění s trasovacím informacemi
- Opětovné načítání za provozu pro rychlý vývoj (
/v1/entities/{id}/reload) - Nástroje pro nasazení (
/v1/deployments) - Podrobné chybové zprávy pro ladění
devui ./agents # Developer mode is the default
Uživatelský režim
Zjednodušené, omezené rozhraní:
- Rozhraní chatu a správa konverzací
- Výpis entit a základní informace
- Zakázaná rozhraní API pro vývojáře (opětovné načítání za provozu, nasazení)
- Obecné chybové zprávy (podrobnosti protokolované na straně serveru)
devui ./agents --mode user
Autentizace
Povolte ověřování nosným tokenem pomocí příznaku --auth :
devui ./agents --auth
Pokud je povolené ověřování:
- Pro localhost: Token se automaticky vygeneruje a zobrazí v konzole.
- Pro nasazení vystavené síti: Musíte zadat token prostřednictvím
DEVUI_AUTH_TOKENproměnné prostředí nebo--auth-tokenpřepínače.
# Auto-generated token (localhost only)
devui ./agents --auth
# Custom token via CLI
devui ./agents --auth --auth-token "your-secure-token"
# Custom token via environment variable
export DEVUI_AUTH_TOKEN="your-secure-token"
devui ./agents --auth --host 0.0.0.0
Všechny požadavky rozhraní API musí v hlavičce obsahovat platný nosný token Authorization :
curl http://localhost:8080/v1/entities \
-H "Authorization: Bearer your-token-here"
Doporučená konfigurace nasazení
Pokud potřebujete zpřístupnit DevUI koncovým uživatelům (nedoporučuje se pro produkční prostředí):
devui ./agents --mode user --auth --host 0.0.0.0
Tato konfigurace:
- Omezuje rozhraní API určená pro vývojáře.
- Vyžaduje ověření.
- Vazby ke všem síťovým rozhraním
Funkce zabezpečení
DevUI zahrnuje několik bezpečnostních opatření:
| Vlastnost | Description |
|---|---|
| Propojení na localhost | Připojuje se k 127.0.0.1 ve výchozím nastavení |
| Uživatelský režim | Omezení rozhraní API pro vývojáře |
| Autentizace pomocí přenositele | Volitelné ověřování založené na tokenech |
| Načítání místní entity | Načítá pouze entity z místních adresářů nebo z paměti. |
| Žádné vzdálené spuštění | Žádné možnosti vzdáleného spouštění kódu |
Osvědčené postupy
Správa přihlašovacích údajů
- Ukládání klíčů rozhraní API a tajných kódů v
.envsouborech - Nikdy neschovávejte
.envsoubory do správy zdrojového kódu - Použití
.env.examplesouborů k dokumentaci požadovaných proměnných
# .env.example (safe to commit)
OPENAI_API_KEY=your-api-key-here
AZURE_OPENAI_ENDPOINT=https://your-resource.openai.azure.com/
# .env (never commit)
OPENAI_API_KEY=sk-actual-key
AZURE_OPENAI_ENDPOINT=https://my-resource.openai.azure.com/
Zabezpečení sítě
- Udržte DevUI přiřazený k localhostu pro vývoj
- Pokud je potřeba externí přístup, použijte reverzní proxy server (nginx, Caddy).
- Povolení HTTPS prostřednictvím reverzního proxy serveru
- Implementace správného ověřování na úrovni proxy serveru
Zabezpečení entit
- Kontrola veškerého kódu agenta nebo pracovního postupu před spuštěním
- Načítejte pouze entity z důvěryhodných zdrojů
- Buďte opatrní u nástrojů, které mají vedlejší účinky (přístup k souborům, síťová volání)
Vyčištění zdrojů
Registrace čisticích háčků pro správné zavření přihlašovacích údajů a prostředků při vypínání.
from azure.identity.aio import DefaultAzureCredential
from agent_framework import Agent
from agent_framework.azure import AzureOpenAIChatClient
from agent_framework_devui import register_cleanup, serve
credential = DefaultAzureCredential()
client = AzureOpenAIChatClient()
agent = Agent(name="MyAgent", chat_client=client)
# Register cleanup hook - credential will be closed on shutdown
register_cleanup(agent, credential.close)
serve(entities=[agent])
Důležité informace o nástrojích MCP
Při použití nástrojů MCP (Model Context Protocol) s DevUI:
# Correct - DevUI handles cleanup automatically
mcp_tool = MCPStreamableHTTPTool(url="http://localhost:8011/mcp", chat_client=chat_client)
agent = Agent(tools=mcp_tool)
serve(entities=[agent])
Důležité
Při vytváření agentů s nástroji MCP pro DevUI nepoužívejte async with kontextové manažery. Připojení se před provedením zavřou. Nástroje MCP používají opožděnou inicializaci a automaticky se připojují při prvním použití.
Další kroky
- Ukázky – Procházení ukázkových agentů a pracovních postupů
- Referenční informace k rozhraní API – informace o koncových bodech rozhraní API