Giriş
Yapay zeka (AI) ajanları, kullanıcı adına işlem yapabilen ve otomatik kararlar alabilen sistemlerdir. Ancak, bu ajanların güvenli ve etkili bir şekilde çalışabilmesi için kimlik doğrulama (authentication) ve yetkilendirme (authorization) gibi kritik güvenlik bileşenlerinin doğru şekilde yönetilmesi gerekmektedir. Microsoft Foundry, bu süreci basitleştirmek ve geliştiricilerin odak noktasını AI mantığına kaydırmak için özel olarak tasarlanmış araç setleri sunmaktadır.
Sorun: AI Ajanlarında Kimlik Doğrulamanın Karmaşıklığı
AI ajanlarının geliştirilmesinde karşılaşılan en büyük zorluklardan biri, kullanıcı adına hareket eden ajanların güvenli bir şekilde kimlik doğrulamasını sağlamaktır. Geleneksel yaklaşımlarda, geliştiriciler aşağıdaki karmaşık görevleri kendi kodlarına entegre etmek zorundaydı:
- Kullanıcı Yetkilendirmesi (User Delegation): Ajanın hangi kullanıcı adına hangi kaynaklara erişeceğini belirlemek.
- Token Yönetimi (Token Isolation): Kullanıcı token'larının ajanlar arasında izole edilmesi ve yetkisiz erişimlerin önlenmesi.
- Onay Yönetimi (Consent Management): Kullanıcının hangi verilerinin ajan tarafından erişilebilir olduğuna dair izinlerin yönetilmesi.
Bu süreçler, geliştiriciler için zaman alıcı ve hata yapılmaya müsait bir hale gelmekteydi. Ayrıca, hassas kimlik doğrulama mantığının ajan koduna gömülmesi, sistemin güvenlik açıklarına karşı daha savunmasız hale gelmesine neden olmaktaydı.
Tipik Bir Senaryo
Bir şirket, kullanıcıların e-postalarını otomatik olarak özetleyen bir AI ajanı geliştirmek istiyor. Bu ajan, kullanıcı adına Microsoft 365 API'lerine erişerek e-postaları okuyup özetleyecektir. Geleneksel yaklaşımda, geliştirici aşağıdakileri elle kodlamak zorundaydı:
- Kullanıcıdan OAuth2 akışıyla izin almak.
- Elde edilen token'ı güvenli bir şekilde saklamak ve ajanlar arasında paylaşmamak.
- Token'ın süresinin dolması durumunda yeniden yetkilendirme sürecini yönetmek.
- Token'ların yetkisiz kullanımını engellemek için ek güvenlik kontrolleri uygulamak.
Bu yaklaşım, hem geliştirme sürecini yavaşlatmakta hem de sistemin karmaşıklığını artırmaktaydı.
Çözüm: Microsoft Foundry'nin Araç Setleri
Microsoft Foundry, AI ajanlarının geliştirilmesini ve yönetimini kolaylaştırmak için tasarlanmış bir platformdur. Foundry'nin sunduğu araç setleri, kimlik doğrulama ve araç yönetimini merkezi bir şekilde ele alarak, geliştiricilerin karmaşık güvenlik mantığını kodlamasına gerek bırakmaz. Foundry, bu süreçleri sunucu tarafında yöneterek, ajanların güvenlik mantığı içermemesini ve bakımının daha kolay hale gelmesini sağlar.
Araç Setlerinin Temel Bileşenleri
Foundry'nin araç setleri aşağıdaki bileşenleri içerir:
- Merkezi Kimlik Doğrulama Yönetimi: Tüm ajanların kimlik doğrulamasını tek bir yerden yönetmek.
- Araç Yönetimi: Ajanların kullanabileceği araçları ve yetkilerini merkezi olarak tanımlamak.
- Token İzolasyonu: Kullanıcı token'larının ajanlar arasında izole edilmesini sağlamak.
- Onay Yönetimi: Kullanıcı izinlerinin ve onaylarının yönetilmesi.
Adım Adım Uygulama
Microsoft Foundry ile AI ajanlarının kimlik doğrulamasını uygulamak için aşağıdaki adımları izleyebilirsiniz:
1. Foundry Ortamının Kurulumu
Foundry ortamını kurmak için aşağıdaki adımları takip edin:
- Azure Portal'a giriş yapın: https://portal.azure.com adresine gidin ve Azure hesabınızla oturum açın.
- Foundry hizmetini oluşturun:
az group create --name FoundryRG --location eastus az deployment group create --resource-group FoundryRG --template-file foundry-template.json - Foundry CLI'yi yükleyin: Foundry komut satırı araçlarını yükleyin.
npm install -g @microsoft/foundry-cli
2. Ajanın Tanımlanması
Ajanınızın kimlik doğrulamasını ve yetkilerini tanımlamak için Foundry CLI'yi kullanabilirsiniz:
- Ajan tanım dosyasını oluşturun: Aşağıdaki örnekteki gibi bir JSON dosyası oluşturun.
{ "agentName": "EmailSummarizerAgent", "description": "Bu ajan, kullanıcı adına e-postaları özetler.", "authentication": { "type": "OAuth2", "scopes": ["https://graph.microsoft.com/Mail.Read"] }, "tools": [ { "name": "summarizeEmail", "description": "E-postaları özetler.", "parameters": { "type": "object", "properties": { "emailId": {"type": "string"} } } } ] } - Ajanı Foundry'ye kaydedin:
foundry agents create --file agent-definition.json
3. Kullanıcı Onayının Alınması
Ajanın kullanıcı adına hareket edebilmesi için kullanıcıdan onay almanız gerekmektedir. Foundry, bu süreci otomatik olarak yönetir:
- Onay URL'sini oluşturun:
foundry auth generate-consent-url --agent EmailSummarizerAgent --user user@domain.com - Kullanıcıdan onay alın: Oluşturulan URL'yi kullanıcıya gönderin. Kullanıcı, bu URL üzerinden ajan için gerekli izinleri onaylayacaktır.
- Token'ı saklayın: Onay işleminden sonra, Foundry token'ı güvenli bir şekilde saklayacaktır.
foundry auth store-token --agent EmailSummarizerAgent --user user@domain.com --token <token>
4. Ajanın Çağrılması
Ajanınızı kullanıcı adına çağırmak için Foundry'nin sunduğu API'leri kullanabilirsiniz:
- Ajanı çağırmak için HTTP isteği gönderin:
curl -X POST \ https://foundry.example.com/agents/EmailSummarizerAgent/invoke \ -H "Authorization: Bearer " \ -H "Content-Type: application/json" \ -d '{ "user": "user@domain.com", "action": "summarizeEmail", "parameters": { "emailId": "AAMkAD..." } }' - Cevabı işleyin: Ajanın yanıtını alın ve gerekli işlemleri gerçekleştirin.
Avantajlar ve Faydalar
Microsoft Foundry'nin araç setlerini kullanmanın birçok avantajı bulunmaktadır:
- Güvenlik: Hassas kimlik doğrulama mantığı ajan koduna gömülmediği için güvenlik açıklarının önüne geçilir.
- Kolaylık: Geliştiriciler, karmaşık kimlik doğrulama süreçlerine odaklanmak yerine AI mantığına odaklanabilirler.
- Bakım Kolaylığı: Merkezi yönetim sayesinde, token yönetimi ve onay süreçleri daha kolay güncellenebilir ve bakımı yapılabilir.
- Esneklik: Farklı ajanlar ve kullanıcılar için aynı altyapı kullanılabilir, bu da sistemin genişletilmesini kolaylaştırır.
Sık Karşılaşılan Sorunlar ve Çözümleri
Microsoft Foundry kullanırken karşılaşabileceğiniz bazı yaygın sorunlar ve çözümleri aşağıda listelenmiştir:
Token'ın Süresinin Dolması
Sorun: Token'ın süresi dolduğunda ajan çalışmayı durdurur.
Çözüm: Foundry, otomatik olarak token yenileme işlemlerini yönetir. Ancak, yenileme işleminin başarısız olması durumunda, aşağıdaki komutla manuel olarak yenileyebilirsiniz:
foundry auth refresh-token --agent EmailSummarizerAgent --user user@domain.com
Ajanın Yetkisiz Kullanımı
Sorun: Ajanın yetkisi olmayan kullanıcılar tarafından kullanılması.
Çözüm: Foundry, ajanların kullanıcıya özel olarak tanımlanmasını sağlar. Yetkisiz kullanımları engellemek için, ajan tanımlarında kullanıcıya özel izinleri doğru şekilde ayarlayın.
Performans Sorunları
Sorun: Ajanların yavaş çalışması.
Çözüm: Foundry'nin performansını artırmak için, ajan tanımlarında gereksiz araçları kaldırın ve token yönetimini optimize edin. Ayrıca, Foundry ortamınızın kaynaklarını (CPU, bellek) yeterli miktarda ayırdığınızdan emin olun.
İpuçları ve En İyi Uygulamalar
Microsoft Foundry ile çalışırken aşağıdaki ipuçlarını ve en iyi uygulamaları dikkate almanız faydalı olacaktır:
- Token Yönetimi: Token'ları güvenli bir şekilde saklamak için Foundry'nin sunduğu yerleşik güvenlik özelliklerini kullanın. Token'ları asla kod içinde saklamayın.
- Ajan Tanımları: Ajan tanımlarınızı mümkün olduğunca detaylı ve açık bir şekilde yapılandırın. Bu, sisteminizin daha anlaşılır ve yönetilebilir olmasını sağlar.
- Güncellemeler: Foundry'nin güncellemelerini düzenli olarak takip edin ve yeni özelliklerden faydalanın.
- Test: Ajanlarınızı test ortamında iyice test edin ve üretim ortamına almadan önce tüm güvenlik kontrollerini gerçekleştirin.
Sonuç
Microsoft Foundry, AI ajanlarının geliştirilmesini ve yönetimini büyük ölçüde basitleştiren güçlü bir platformdur. Geliştiriciler, karmaşık kimlik doğrulama süreçlerine odaklanmak yerine, AI mantığına ve işlevselliğine odaklanabilirler. Foundry'nin sunduğu araç setleri sayesinde, ajanlarınız güvenli, kolay bakımı yapılabilir ve ölçeklenebilir bir şekilde çalışabilir. Bu makalede, Foundry'nin temel bileşenlerini, uygulama adımlarını ve karşılaşabileceğiniz yaygın sorunları inceledik. Microsoft Foundry'yi kullanarak AI ajanlarınızın güvenlik ve performansını artırabilirsiniz.



