Snapshot'ı Fraud'a Taşıma
Fraud, identity kanıtını analizinin üzerine bindirebilmek için önce, karşısındaki oturuma ait o kanıtı almak zorundadır. Bunu bir iç resolver ile yapar — resolveDecisionArtifacts — IdentityDecisionSnapshot'ı ve imzalı assertion'ını bulur, onlara ne kadar güveneceğine karar verir ve fraud analizine teslim eder. Bunların hepsi platform-içinde, kimlik-doğrulamalı gRPC üzerinden olur; kendinizin çağıracağı bir snapshot endpoint'i yoktur.
Bu sayfadaki her şey platform-içidir. Bir merchant olarak resolver'ı asla çağırmazsınız — identity'nin SDK bağlamını ve ödeme yüzeyinde checkout live-analyze bootstrap'ını gönderirsiniz. Çözümlemeyi Fraud sizin adınıza yapar.
Çözümleme yolu
Resolver önce en hızlı kaynağı dener ve yalnızca bir miss'te taze bir çekime düşer.
Korelasyon id'leri girer
Fraud değerlendirmesi, oturumu identity kanıtına sabitleyen tanımlayıcıları taşır: merchantId ve snapshotId, traceId, paymentId veya checkoutSessionId'den herhangi biri. Bunlar isteğin korelasyon anahtarlarıdır — resolver'ın bayat veya alakasız bir snapshot yerine tam olarak doğru snapshot'ı bulmasını sağlarlar.
Redis cache araması
Resolver, bu korelasyon id'lerine göre anahtarlanmış bir dizi cache anahtarını kontrol eder:
identity:snapshot:*
identity:trace:*
identity:payment:*
identity:checkout:*
identity:session:*Sıcak bir oturum — identity'nin aynı istek yolunda az önce analiz ettiği bir oturum — doğrudan cache'ten servis edilir. Servisler-arası çağrı yok.
Cache miss → iç gRPC çözümleme
Bir miss'te, resolver bir iç gRPC köprüsü üzerinden identity'ye erişir; bir internalAuthToken üzerindeki identity:read kapsamıyla yetkilendirilir. İstek aynı korelasyon id'lerini taşır. Identity artifact'ları döndürür ve bir sonraki okuyucu için cache'lenirler.
Ne döner
Resolver, oturuma ait karar artifact'larını döndürür:
| Artifact | Nedir |
|---|---|
identitySnapshot | Tam IdentityDecisionSnapshot — skorlar, aile-bazlı sinyaller, identityRiskLevel, findings |
identityAssertion | Snapshot üzerindeki imzalı, non-repudiable assertion (identity bir tane ürettiğinde) |
expiresAt | Tazelik sınırı — bundan sonra artifact'lar bayattır ve taze olarak güvenilmemelidir |
Assertion güven çıpasıdır. Asimetrik olarak imzalanmıştır; böylece Fraud onun identity'den geldiğini ve aktarımda değiştirilmediğini doğrulayabilir — /.well-known/jwks.json'a karşı doğrulayacağınız aynı assertion.
Üç kaynak, üç güven seviyesi
Bir identity snapshot'ı fraud analizine üç farklı yoldan ulaşabilir ve her biri farklı miktarda güven taşır. Bu ayrım önemlidir, çünkü yalnızca trusted bir snapshot'ın en güçlü türetmeleri etkilemesine izin verilir (bkz. Additive Evidence & Trusted-Device).
| # | Kaynak | Nasıl ulaşır | Güven |
|---|---|---|---|
| 1 | İmzalı assertion | assertion mevcut → imza doğrulandı | trusted |
| 2 | İmzasız inline snapshot | snapshot inline verildi, geçerli imza yok | untrusted (varsayılan) |
| 3 | Server-side çözümleme | resolver platform-içinde çekti (cache veya gRPC) | trusted |
İmzasız inline snapshot varsayılan olarak untrusted'tır. Yalnızca eksik boşlukları doldurabilir (örn. eksik bir fingerprintId veya ipAddress) — trusted türetmeleri sürükleyemez. FRAUD_TRUST_UNSIGNED_SNAPSHOT bayrağı (varsayılan false) onu trusted'a yükseltebilir, ama kapalı bırakmak güvenli duruştur. Server-side çözülmüş veya doğrulanmış imza taşıyan bir snapshot, bayrak olmadan trusted'tır.
Notlar
- Resolver'ın kimliği her zaman platform-içidir. İç token üzerindeki
identity:readkapsamı okumayı yetkilendiren şeydir — bunun için public bir kimlik bilgisi yoktur. traceIdile korelasyon, bir identity analizini, bir ödeme intent'ini ve bir fraud kararını tek bir oturuma bağlayan ipliktir. Identity'nin döndürdüğütraceId'yi ileri taşıdığınızda, tüm zinciri uçtan uca denetlenebilir kılarsınız.expiresAt'ini geçmiş bir snapshot bayattır. Tazelik, bir fraud flow'u içindeidentitySnapshotGuardnode'unun uyguladığı kontrollerden biridir.
Sonraki adımlar
- Additive Evidence & Trusted-Device — çözülmüş bir snapshot kararı ne yapar
- Fraud Flow Node'ları —
identitySnapshotGuardtazelik/bağlama kontrolleri - Assertion'lar & JWKS — imzalı assertion'ı kendiniz doğrulama