Güvenlik Duruşunu Anlama

securityPosture, mevcut cihaz durumuna göre belirlenen bir cihazın güvenlik değerlendirmesidir. Cihazın mevcut durumu, cihazın rootlanıp rootlanmadığı, özel ROM kullanıp kullanmadığı gibi faktörlere göre belirlenir.

securityPosture, yanıtta devicePosture ve securityRisk alanını içeren ek bir postureDetails listesine ayrılır.

securityRisk alanı, cihazın neden en güvenli durumda olmadığı hakkında fikir verir. advice listesi ise cihazın güvenlik durumunu iyileştirmeye yönelik işlemler gerçekleştirmenize yardımcı olabilir. Örneğin:

 {
  "devicePosture": "POTENTIALLY_COMPROMISED",
  "postureDetails": [
    {
      "securityRisk": "UNKNOWN_OS",
      "advice": [
        {
          "defaultMessage": "The user should lock their device's bootloader."
        }
      ]
    },
    {
      "securityRisk": "HARDWARE_BACKED_EVALUATION_FAILED"
    }
  ]
}

Güvenlik Durumunu Değerlendirme

Varsayılan olarak securityPosture, anahtar onayı kullanılarak değerlendirilir. Varsa özellikle donanım destekli anahtar onayı (HBKA) kullanılır. Bu onayı güvenli donanımda oluşturup imzaladığı için güvenilir bir güvenlik kararı sağlar.

Bazen bu değerlendirme için HBKA kullanılamayabilir. Bu durumu yansıtmak için securityRisk, "HARDWARE_BACKED_EVALUATION_FAILED" değerini döndürür. Bu, securityPosture değerinin HBKA ile değil, başka bir yöntemle değerlendirilebileceği anlamına gelir.Bu durumda, cihazın önyükleme bütünlüğü durumu tehlikeye atılmış (ör. cihaz rootlanmış olabilir) ve yazılım tabanlı algılama tarafından algılanamamış olabilir.

Güvenlik Durumu Kararlarını Anlama

Cihazın genel güvenliğini anlamak için devicePosture ve securityRisk'nin farklı kombinasyonları yorumlanabilir. Aşağıdaki listede tüm örneklere yer verilmemiştir:

  • devicePosture "SECURE" ve securityRisk "HARDWARE_BACKED_EVALUATION_FAILED" döndürürse cihazın bütünlüğü güvenlidir ancak HBKA tarafından doğrulanamaz.
  • devicePosture "POTENTIALLY_COMPROMISED" döndürür ve securityRisk sonucu döndürülmezse değerlendirmede HBKA kullanılır ve cihazın güvenliği ihlal edilmiş olarak kabul edilir.
  • devicePosture "POTENTIALLY_COMPROMISED" ve securityRisk "HARDWARE_BACKED_EVALUATION_FAILED" döndürürse yalnızca yazılım tabanlı kontroller yapılabilir ancak bütünlük tehdidi sinyalleri, cihazın güvenliğinin ihlal edildiğini düşünmek için yeterince güçlüdür.
  • devicePosture "POSTURE_UNSPECIFIED" döndürüyorsa güvenlik değerlendirmesi tamamlanamamıştır. HBKA'nın belirli bir değer döndürüp döndürmeyeceğini görmek için yeni bir karar döndürüldüğünde HBKA'nın yeniden yayınlanmasını beklemenizi öneririz. Ancak ilk yükleme sırasında kısa bir süre için "POSTURE_UNSPECIFIED" değerinin oluşması beklenir.

Android Management API ile Play Integrity API eşlemeleri

Aşağıdaki tabloda, AM API kararı ile Play Integrity API karar yanıtı arasındaki eşleme eşdeğeri gösterilmektedir.

AM API DevicePosture AM API Posture.Detail.SecurityRisk Play Integrity API karar eşdeğeri
SECURE SECURITY_RISK_UNSPECIFIED MEETS_STRONG_INTEGRITY
SECURE Şunları içerir: HARDWARE_BACKED_EVALUATION_FAILED MEETS_DEVICE_INTEGRITY
POTENTIALLY_COMPROMISED Şunları içerir: UNKNOWN_OS MEETS_BASIC_INTEGRITY
POTENTIALLY_COMPROMISED Şunları içerir: COMPROMISED_OS <unset>
POSTURE_UNSPECIFIED <any> <unset>