Harici Doğrulama
Harici Doğrulama, SecTrail MFA'yı HTTP üzerinden herhangi bir harici kimlik doğrulama sistemiyle entegre eden bir kimlik doğrulama yöntemidir. Kullanıcı bir Harici Doğrulama faktörüne ulaştığında SecTrail, yapılandırılmış harici servise (mobil push gateway, IVR sistemi veya özel API) giden bir HTTP isteği gönderir. Harici servis kullanıcıyı bilgilendirir — uygulama push, telefon araması veya başka bir kanal aracılığıyla — ve hemen bir sonuç döndürür ya da SecTrail sonucu yoklar veya harici servis sonucu SecTrail'e iletir.
OTP yöntemlerinden farklı olarak kullanıcı herhangi bir kod girmez. Onay tamamen harici sistemde gerçekleşir.

Harici Doğrulama profil listesi
Nasıl Çalışır
- Kullanıcı faktör 1 ile kimlik doğrular (birincil kimlik bilgisi).
- Harici Doğrulama faktörüne ulaşıldığında SecTrail, kullanıcının özniteliklerini (telefon numarası, e-posta, çalışan ID'si vb.) almak için yapılandırılmış yedek auth profillerinde kullanıcıyı arar.
- SecTrail, kullanıcının çözümlenmiş öznitelikleriyle
{{placeholder}}token'larını doldurarak harici servise giden HTTP isteği gönderir. - Yapılandırılan Bekleme Moduna göre:
- Yok: İlk HTTP yanıtı hemen onay/red için değerlendirilir.
- Sonuç Sorgusu (Polling): SecTrail, onay/red yanıtı alana veya zaman aşımına ulaşana kadar ikincil URL'yi düzenli aralıklarla sorgular.
- Callback: SecTrail, harici servisin SecTrail'ın özel bir endpoint'ine sonucu iletmesini bekler.
- Onay durumunda faktör kimliği doğrulanmış olarak işaretlenir ve kullanıcı devam eder.
- Red veya zaman aşımı durumunda oturum başarısız olur.
Profil Yapılandırması
Temel Ayarlar
| Alan | Açıklama |
|---|---|
| Profil Adı | Bu profil için benzersiz görünen ad |
| İstek Yöntemi | GET, POST veya CUSTOM (PHP betiği) |
| URL | Harici servisin endpoint URL'si (GET/POST modları) |
| Başlıklar | İstekle gönderilecek HTTP başlıkları (her satıra bir tane: Başlık-Adı: değer) |
| Yedek Auth Profilleri | Kimlik doğrulayan kullanıcıyı aramak için kullanılan LDAP ve/veya Yerel profillerin sıralı listesi |
| Zaman Aşımı | İstek zaman aşım süresi saniye cinsinden (5–120, varsayılan: 30) |
GET Modu
| Alan | Açıklama |
|---|---|
| Parametreler | URL sorgu dizesi anahtar-değer çiftleri. Değerler {{placeholder}} token'ları içerebilir. |
POST Modu
| Alan | Açıklama |
|---|---|
| Gövde Şablonu | Ham istek gövdesi (genellikle JSON). {{placeholder}} token'ları içerebilir. |
| Yanıt Türü | json, text veya xml — yanıtın nasıl ayrıştırılacağını belirler |
| Başarı Koşulu Yolu | JSON nokta-notasyon yolu, XPath veya metin eşleşmesi — değerlendirilecek alana işaret eder |
| Başarı Koşulu Değeri | İsteğin onaylandığı kabul edilmesi için o alanın eşitmesi gereken değer |
CUSTOM Modu (PHP Betiği)
| Alan | Açıklama |
|---|---|
| Özel Betik | storage/app/custom/ klasöründe saklanan PHP dosyasının adı. Dosya externalauth($params) fonksiyonu tanımlamalıdır. |
| Parametreler | Betiğin beklediği parametre adları. Test arayüzünde değer girmek için kullanılır. |
Placeholder Token'ları
Hem gövde şablonu hem de GET parametre değerleri, kimlik doğrulama anında çözümlenen {{token}} placeholder'larını destekler:
| Token | Değer |
|---|---|
{{username}} | Kimlik doğrulayan kullanıcı adı |
{{ip}} | İstemci IP adresi |
{{nas}} | NAS tanımlayıcısı |
{{nas_ip}} | NAS IP adresi |
{{uuid}} | Yeni oluşturulan UUID (ilk ve polling isteklerinde aynı değer) |
{{session_id}} | Oturum türevi görünen ID (ST-xxxx formatı) |
{{host}} | Ana URL'den alınan şema + host |
{{herhangi_kullanıcı_özniteliği}} | Yedek auth profillerinden çözümlenen herhangi bir öznitelik (örn: {{mobile}}, {{mail}}, {{employeeid}}) |
Yedek sözdizimi: {{alan1|alan2|alan3}} — boş olmayan ilk değer kullanılır.
Türkçe telefon numarası normalizasyonu: Çözümlenen değer +90 veya 90 önekli Türk cep numarasıysa otomatik olarak yerel 05xxxxxxxxx formatına dönüştürülür.
Bekleme Modu
İlk istek gönderildikten sonra SecTrail'ın kullanıcının yanıtını nasıl beklediğini yapılandırın:
Yok (varsayılan)
İlk isteğe gelen HTTP yanıtı hemen değerlendirilir. Başarı/başarısızlık, yanıt gövdesinin yapılandırılan başarı koşuluyla eşleşip eşleşmediğiyle belirlenir.
Anlık onay/red döndüren senkron API'ler için uygundur.
Sonuç Sorgusu (Polling)
SecTrail, onay/red sinyali alana veya polling zaman aşımına ulaşana kadar ikincil URL'yi düzenli aralıklarla sorgular.
| Alan | Açıklama |
|---|---|
| Polling URL | Sorgulanacak URL. Ana URL'den şema/host almak için {{host}} desteklenir. |
| Polling Yöntemi | GET veya POST |
| Polling Başlıkları | Polling istekleri için isteğe bağlı ayrı başlıklar |
| Polling Parametreleri / Gövdesi | GET için sorgu parametreleri veya POST için gövde şablonu |
| Polling Başarı Yolu | Polling yanıtında incelenecek JSON/XML yolu |
| Polling Başarı Değeri | "Onaylandı" anlamına gelen değer |
| Polling Red Değerleri | "Reddedildi" anlamına gelen virgülle ayrılmış değerler (örn: RET,IPTAL) |
Callback
SecTrail ilk push'u gönderir, ardından harici sistemin SecTrail'ın özel callback endpoint'ini aramasını bekler. SecTrail, callback gelene veya zaman aşımına ulaşana kadar kendi oturum deposunu sorgular.
| Alan | Açıklama |
|---|---|
| Callback GSM Alanı | Gönderilen istek gövdesinde kullanıcının telefon numarasını içeren JSON alan adı |
| Callback Telefon Payload Alanı | Harici servisin callback'te kullanıcıyı tanımlamak için gönderdiği alan adı |
| Callback Kullanıcı Adı | Harici servisin callback endpoint'ini çağırırken kullandığı kullanıcı adı |
| Callback Parolası | Callback endpoint'i için parola (minimum 8 karakter) |
| Polling Başarı Yolu | Callback sonucunun oturum verisinde saklandığı yol |
| Polling Başarı Değeri | "Onaylandı" anlamına gelen değer |
Politika Yapılandırması
Bir politika, Harici Doğrulama profilini profil özniteliğine göre bir kullanıcı alt kümesiyle eşler.
| Alan | Açıklama |
|---|---|
| Harici Doğrulama Profili | Bu politikanın uygulandığı profil |
| Doğrulama Profili | O Harici Doğrulama profiline bağlı LDAP veya Yerel profillerden biri |
| Öznitelik | Eşleştirilecek kullanıcı özniteliği |
| Öznitelik Değeri | Bu politikanın uygulanması için gereken öznitelik değeri |
Test Arayüzü
Test sayfası, yöneticilerin herhangi bir Harici Doğrulama profiline doğrudan admin panelinden canlı istek göndermesine olanak tanır — tam kimlik doğrulama akışı tetiklemeden.
- Bir Harici Doğrulama profili seçin
- Sistem profilde tanımlanan placeholder adlarını yükler
- Her placeholder için test değerleri girin (örn: gerçek telefon numarası, kullanıcı adı)
- Test'e tıklayın — SecTrail gerçek HTTP isteğini gönderir
- Sonuç (HTTP durumu, yanıt gövde özeti, geçti/başarısız) gösterilir
Not: Test yalnızca ilk isteği gönderir. Polling ve callback beklemeleri testte simüle edilmez.
Kullanım Senaryosu
Harici Doğrulama, kullanıcıların SecTrail MFA dışında ayrıca tanımlanmış harici bir uygulama üzerinden doğrulanmasını sağlar. SecTrail, kimlik doğrulama isteğini bu uygulamaya iletir; uygulamanın sonucu nasıl bildireceğine göre üç farklı entegrasyon modu kullanılır:
Anlık Yanıt (Bekleme Modu: Yok)
SecTrail doğrulama isteğini harici uygulamaya gönderir ve uygulamanın HTTP yanıtının kendisi doğrudan sonuç olarak değerlendirilir. Harici uygulama isteği işler işlemez onay veya red sonucunu yanıt gövdesinde döndürür.
Harici Uygulama SecTrail'e Sonucu İletir (Callback Modu)
SecTrail doğrulama isteğini gönderir ve bekler. Harici uygulama kullanıcıya kendi kanalıyla ulaşır (örn: push bildirim, SMS, telefon araması); kullanıcı onayladıktan sonra harici uygulama sonucu SecTrail'in belirlenen bir endpoint'ine HTTP isteğiyle iletir.
SecTrail Sonucu Harici Uygulamadan Sorgular (Polling Modu)
SecTrail doğrulama isteğini gönderir; ardından harici uygulamanın ayrı bir endpoint'ini belirli aralıklarla sorgulayarak sonucun hazır olup olmadığını kontrol eder. Harici uygulama, kullanıcı işlemini tamamladığında sonucu bu endpoint üzerinden döndürür.
Hangi modun kullanılacağı, harici uygulamanın sonucu nasıl bildirdiğine göre belirlenir ve buna göre profil yapılandırılır.
Kurulum Adımları
- Kimlik Doğrulama Yöntemleri → Harici Doğrulama → Profiller bölümüne gidin
- Profil Oluştur'a tıklayın
- İstek yöntemini seçin (GET, POST veya Custom)
- Endpoint URL'ini ve başlıkları yapılandırın
- Kullanıcı özniteliklerini aramak için yedek auth profilleri ekleyin
{{placeholder}}token'larıyla gövde/parametreler yapılandırın- Başarı koşulunu ayarlayın (yanıt yolu ve değeri)
- Bekleme modunu ayarlayın (Yok, Polling veya Callback) ve ilgili alanları doldurun
- Kaydedin
- Kimlik Doğrulama Yöntemleri → Harici Doğrulama → Politikalar bölümünde politika oluşturun
- Yapılandırma → Uygulamalar bölümünde politikayı bir uygulama faktörüne atayın
- Canlıya geçmeden önce entegrasyonu doğrulamak için Test sayfasını kullanın
Önemli Hususlar
- Harici Doğrulama faktörü sırasında kullanıcı SecTrail ile etkileşime girmez — tüm onay akışı harici sistemde gerçekleşir
- Yedek auth profili kullanıcıyı bulamazsa yöntem atlanır (faktörde başka yöntemler varsa) veya hemen başarısız olur
- Polling ve callback zaman aşımları
EXTERNAL_AUTH_POLLING_TIMEOUTortam değişkeniyle kontrol edilir (varsayılan: 60 saniye) - Callback kimlik bilgileri (kullanıcı adı/parola) güçlü ve benzersiz olmalıdır — callback endpoint'i herkese açık erişilebilirdir