Her cihaz güvenilir sayılmadan önce 11 doğrulama adımından geçer. Detaylar için herhangi bir adıma tıklayın.
Her istemcinin (iOS uygulaması, Android uygulaması, web) kendi attestation_config JSON'ı vardır — mod, paket adı, eylem başına politikalar, sertifika izin listesi, ortam kontrolleri ve hata politikalarını içerir. wp_enravo_api_clients tablosunda JSON kolonu olarak saklanır.
1{2 "attestation_config": {3 "mobile_app_types": ["android"],4 "android": {5 "mode": "enforce",6 "package_name": "com.enravo.app",7 "skew_tolerance": 15,8
9 "actions": {10 "install": { "enabled": true, "device_level": "device", "freshness": 120 },11 "login": { "enabled": true, "device_level": "device", "freshness": 120 },12 "register": { "enabled": false },13 "token_refresh": { "enabled": false, "freshness": 60 }14 },15
16 "app_integrity": {17 "require_recognized": true,18 "require_cert_match": true,19 "allowed_cert_sha256": ["AA:BB:CC:DD:..."],20 "min_version_code": 100,21 "grace_version_code": 9022 },23
24 "account": { "require_licensed": false },25
26 "environment": {27 "play_protect": { "enabled": true, "min_verdict": "no_issues" },28 "access_risk": {29 "enabled": true,30 "block_known": { "capturing": true, "overlays": false, "controlling": true },31 "block_unknown": { "capturing": false, "overlays": false, "controlling": false }32 }33 },34
35 "recent_activity": { "enabled": false, "max_level": 2 },36
37 "error_policy": {38 "on_invalid": "deny",39 "on_timeout": "soft_fail",40 "on_unevaluated": "allow"41 }42 }43 }44}Attestation'ın hepsi-ya-hiç-biri olması gerekmez. Cihaz yelpazenizi anlamak için telemetri ile başlayın, sınırlı erişim için soft-fail'a geçin, hazır olduğunuzda zorunlu kılın. Her modun kendi hata politikası vardır — hata türü başına yapılandırılabilir.
Her kontrol istemci ve eylem başına bağımsız olarak yapılandırılabilir.
Üç seviye: MEETS_BASIC (CTS geçer), MEETS_DEVICE (donanıma bağlı keystore), MEETS_STRONG (donanım güvenlik modülü). Eylem başına yapılandırılabilir — install 'device', login 'strong' isteyebilir.
PLAY_RECOGNIZED verdict uygulamanın Google Play'den kurulduğunu doğrular. İmzalama sertifikası SHA-256 kayıtlı parmak izinize göre doğrulanır. Yeniden paketlenmiş veya sideload edilmiş uygulamalar reddedilir.
Minimum sürüm kodu, yayınlama için grace penceresi ile uygulanır. min_version=100 ve grace=90 ise, 90-99 arası sürümler kısıtlı erişim alır.
Ekran yakalama, overlay ve uzaktan kontrol uygulamalarını algıla — bilinen ve bilinmeyen. Risk türü başına yapılandırılabilir: block_known.capturing, block_unknown.overlays vb.
Google'ın cihaz aktivite seviyesi (0-3). Yüksek aktivite = şüpheli. İstemci başına yapılandırılabilir maksimum eşik. Varsayılan devre dışı — yüksek güvenlik akışları için açın.
Minimum verdict uygulaması: no_issues, possible_risk, medium_risk, high_risk. Bilinen zararlı yazılıma sahip cihazlar diğer kontrollerden önce engellenir.
B2B uygulamalar için: uygulamanın geçerli Google Play lisansına sahip olmasını gerektir. Lisanssız cihazlar bütünlük durumundan bağımsız reddedilir.
Her eylemin kendi tazelik penceresi vardır. Install: 120s. Login: 120s. Token yenileme: 60s. Eski attestation tokenlarının farklı işlemlerde tekrar kullanılmasını önler.