securityPosture — это оценка безопасности устройства, определяемая текущим статусом устройства. Текущее состояние устройства определяется такими факторами, как рутирование устройства, использование специального ПЗУ и т. д.
 securityPosture в ответе разбивается на devicePosture и дополнительный список postureDetails , который содержит поле securityRisk .
 Поле securityRisk дает представление о том, почему устройство не считается находящимся в наиболее безопасном состоянии, а список advice может помочь выполнить действия по улучшению состояния безопасности устройства. Например:
{ "devicePosture": "POTENTIALLY_COMPROMISED", "postureDetails": [ { "securityRisk": "UNKNOWN_OS", "advice": [ { "defaultMessage": "The user should lock their device's bootloader." } ] }, { "securityRisk": "HARDWARE_BACKED_EVALUATION_FAILED" } ] }
Оценка состояния безопасности
 По умолчанию securityPosture оценивается с использованием аттестации ключей, в частности аппаратной аттестации ключей (HBKA), если она применима, предоставляя достоверный вердикт безопасности, поскольку он генерирует и подписывает аттестацию на защищенном оборудовании.
 Иногда может случиться так, что HBKA не может быть использован для этой оценки. Чтобы отразить это, securityRisk вернет «HARDWARE_BACKED_EVALUATION_FAILED». Это означает, что securityPosture может быть оценена, но не с помощью HBKA, а это означает, что состояние целостности загрузки устройства может быть скомпрометировано (например, устройство может быть внедрено) и остаться незамеченным программным обнаружением.
Понимание вердиктов по состоянию безопасности
 Различные комбинации devicePosture и securityRisk можно интерпретировать для понимания общей безопасности устройства. Обратите внимание, что приведенный ниже список не является исчерпывающим:
-  Если devicePostureвозвращает «SECURE», аsecurityRiskвозвращает «HARDWARE_BACKED_EVALUATION_FAILED», целостность устройства безопасна, но HBKA не может это подтвердить.
-  Если devicePostureвозвращает «POTENTIALLY_COMPROMISED» и не возвращается результатsecurityRisk, то в оценке используется HBKA, и устройство считается скомпрометированным.
-  Если devicePostureвозвращает «POTENTIALLY_COMPROMISED», аsecurityRiskвозвращает «HARDWARE_BACKED_EVALUATION_FAILED», тогда можно выполнять только программные проверки, однако сигналы угрозы целостности достаточно сильны, чтобы считать устройство скомпрометированным.
-  Если devicePostureвозвращает «POSTURE_UNSPECIFIED», значит, оценку безопасности невозможно завершить. Мы рекомендуем дождаться повторного выпуска HBKA, который происходит при возвращении нового вердикта, чтобы проверить, сможет ли он вернуть определенное значение. Однако ожидается, что «POSTURE_UNSPECIFIED» появится при первоначальной установке в течение короткого периода времени.
API управления Android для сопоставлений Play Integrity API
В следующей таблице представлена эквивалентность сопоставления между вердиктом API AM и ответом вердикта Play Integrity API.
| AM API DevicePosture | AM API Posture.Detail.SecurityRisk | Эквивалент вердикта Play Integrity API | 
|---|---|---|
| SECURE | SECURITY_RISK_UNSPECIFIED | MEETS_STRONG_INTEGRITY | 
| SECURE | содержит: HARDWARE_BACKED_EVALUATION_FAILED | MEETS_DEVICE_INTEGRITY | 
| AT_RISK | содержит: HARDWARE_BACKED_EVALUATION_FAILED | MEETS_DEVICE_INTEGRITY | 
| POTENTIALLY_COMPROMISED | содержит: UNKNOWN_OS | MEETS_BASIC_INTEGRITY | 
| POTENTIALLY_COMPROMISED | содержит: COMPROMISED_OS | <unset> | 
| POSTURE_UNSPECIFIED | <any> | <unset> | 
