Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
DevUI, yerel geliştirme için örnek bir uygulama olarak tasarlanmıştır. Bu sayfada, DevUI'yi localhost'un ötesinde kullanıma sunmanız gerekiyorsa güvenlikle ilgili önemli noktalar ve en iyi yöntemler ele alınıyor.
Warning
DevUI, üretim kullanımı için tasarlanmamıştır. Üretim dağıtımları için uygun güvenlik önlemleriyle Agent Framework SDK'sını kullanarak kendi özel arabiriminizi oluşturun.
Çok Yakında
C# için DevUI belgeleri yakında kullanıma sunulacaktır. Kavramsal yönergeler için lütfen daha sonra tekrar kontrol edin veya Python belgelerine bakın.
UI Modları
DevUI, özelliklere erişimi denetleen iki mod sunar:
Geliştirici Modu (Varsayılan)
Tüm özelliklere tam erişim:
- İzleme bilgileriyle hata ayıklama paneli
- Hızlı geliştirme için anında yeniden yükleme (
/v1/entities/{id}/reload) - Dağıtım araçları (
/v1/deployments) - Hata ayıklama için ayrıntılı hata iletileri
devui ./agents # Developer mode is the default
Kullanıcı Modu
Basitleştirilmiş, kısıtlanmış arabirim:
- Sohbet arabirimi ve konuşma yönetimi
- Varlık listesi ve temel bilgiler
- Geliştirici API'leri devre dışı bırakıldı (hızlı yeniden yükleme, dağıtım)
- Genel hata iletileri (sunucu tarafında günlüğe kaydedilen ayrıntılar)
devui ./agents --mode user
Authentication
Bearer token kimlik doğrulaması varsayılan olarak etkindir. Geri döngü bağlaması için DevUI bir belirteç oluşturur ve bunu konsolunda görüntüler:
devui ./agents
Yinelenebilir bir belirteç için DEVUI_AUTH_TOKEN ayarlayın veya --auth-token kullanın. Geri döngü olmayan bir bağlama, açık bir belirteç gerektirir ve biri olmadan kapalı durumda başarısız olur:
# Custom token via CLI
devui ./agents --auth-token "your-secure-token"
# Custom token via environment variable
export DEVUI_AUTH_TOKEN="your-secure-token"
devui ./agents --host 0.0.0.0
Tüm API istekleri belirteci Authorization üst bilgisinde içermelidir:
curl http://localhost:8080/v1/entities \
-H "Authorization: Bearer your-secure-token"
Yalnızca yalıtılmış geri döngü geliştirme için kullanın --no-auth . DevUI kimliği doğrulanmamış geri döngü olmayan bağlamaları reddeder ve hatta geri döngü kimlik doğrulamasız mod, saldırgan web siteleri tarafından gönderilen isteklere karşı korumayı kaldırır.
Önerilen Dağıtım Yapılandırması
DevUI'yi son kullanıcılara sunmanız gerekiyorsa (üretim için önerilmez):
DEVUI_AUTH_TOKEN="<secure-dev-token>" devui ./agents --mode user --host 0.0.0.0
Bu yapılandırma:
- Geliştiriciye yönelik API'leri kısıtlar
- kimlik doğrulaması gereklidir
- Tüm ağ arabirimlerine bağlanır
Güvenlik Özellikleri
DevUI çeşitli güvenlik önlemleri içerir:
| Özellik | Açıklama |
|---|---|
| Localhost bağlantısı | Varsayılan olarak 127.0.0.1'e bağlanır |
| Kullanıcı modu | Geliştirici API'lerini kısıtlar |
| Authentication | Bearer belirteci kimlik doğrulaması varsayılan olarak etkindir |
| Kimlik doğrulamasız mod | Yalnızca localhost veya 127.0.0.1 üzerinde izin verilir |
| Ağ bağları |
DEVUI_AUTH_TOKEN veya --auth-token gerekir |
| Yerel varlık yükleme | Yalnızca yerel dizinlerden veya bellek içindeki varlıkları yükler |
| Uzaktan yürütme yok | Uzaktan kod yürütme özelliği yok |
En İyi Uygulamalar
Kimlik Bilgileri Yönetimi
- API anahtarlarını ve gizli dizilerini dosyalarda depolama
.env - Dosyaları hiçbir zaman
.envkaynak denetimine yüklemeyin. - Gerekli değişkenleri belge etmek için dosyaları kullanma
.env.example
# .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/
Ağ Güvenliği
- Geliştirme için DevUI'yi localhost'a bağlı tutun
- Dış erişim gerekiyorsa ters ara sunucu (nginx, Caddy) kullanın
- Ters ara sunucu aracılığıyla HTTPS'yi etkinleştirme
- Proxy düzeyinde doğru kimlik doğrulamasını uygulama
Varlık Güvenliği
- Çalıştırmadan önce tüm aracı/iş akışı kodunu gözden geçirin
- Yalnızca güvenilen kaynaklardan varlıkları yükleme
- Yan etkileri olan araçlarla (dosya erişimi, ağ çağrıları) dikkatli olun
Kaynak Temizleme
Sistem kapanışında kimlik bilgilerini ve kaynakları doğru bir şekilde kapatmak için temizleme kancalarını kaydedin.
import os
from azure.identity.aio import DefaultAzureCredential
from agent_framework import Agent
from agent_framework.openai import OpenAIChatCompletionClient
from agent_framework_devui import register_cleanup, serve
credential = DefaultAzureCredential()
client = OpenAIChatCompletionClient(
model=os.environ["AZURE_OPENAI_CHAT_COMPLETION_MODEL"],
azure_endpoint=os.environ["AZURE_OPENAI_ENDPOINT"],
api_version=os.getenv("AZURE_OPENAI_API_VERSION"),
credential=credential,
)
agent = Agent(name="MyAgent", client=client)
# Register cleanup hook - credential will be closed on shutdown
register_cleanup(agent, credential.close)
serve(entities=[agent])
MCP Araçlarıyla İlgili Dikkat Edilmesi Gerekenler
DevUI ile MCP (Model Bağlam Protokolü) araçlarını kullanırken:
# Correct - DevUI handles cleanup automatically
mcp_tool = MCPStreamableHTTPTool(url="http://localhost:8011/mcp", client=chat_client)
agent = Agent(tools=mcp_tool)
serve(entities=[agent])
Önemli
DevUI için MCP araçlarıyla aracı oluştururken bağlam yöneticilerini kullanmayın async with . Bağlantılar çalıştırılmadan önce kapatılır. MCP araçları yavaş başlatma kullanır ve ilk kullanımda otomatik olarak bağlanır.
Uyarı
Bu özellik için Go desteği yakında sunulacaktır. En son durum için bkz. Agent Framework Go deposu .
Sonraki Adımlar
- Örnekler - Örnek aracılara ve iş akışlarına göz atma
- API Başvurusu - API uç noktaları hakkında bilgi edinin