기기 관리 테스트

관리 프로필에 대한 최소한의 지원을 보장하려면 OEM 기기에는 다음 기본 요소가 있어야 합니다.

전체 요구사항 목록은 기기 관리 구현을 참고하세요. 기기 관리 기능을 테스트하기 위해 기기 소유자는 아래에서 설명하는 TestDPC 애플리케이션을 사용할 수 있습니다.

테스트하도록 기기 소유자 설정

다음 지침에 따라 기기 소유자 테스트 환경을 설정합니다.

  1. 공장에서 대상 기기를 초기화합니다.
  2. 기기에 사용자 계정이 없는지 확인합니다(예: 온라인 서비스에 로그인하는 데 사용한 계정). 확인하려면 설정 > 계정을 살펴보세요.
  3. 다음 방법 중 하나를 사용하여 테스트 애플리케이션을 설정합니다.
  4. 다음 명령을 사용하여 TestDPC 앱을 기기 소유자로 설정합니다.
    adb shell dpm set-device-owner "com.afwsamples.testdpc/.DeviceAdminReceiver"
    
  5. 기기에서 기기 소유자 설정을 살펴봅니다(암호화, Wi-Fi 선택 등).

기기 소유자 설정 확인

기기 소유자가 올바르게 설정되었는지 확인하려면 설정 > 보안 > 기기 관리로 이동한 다음 TestDPC가 목록에 있는지 확인합니다. 기기 소유자를 사용 중지할 수 없는지 확인합니다(사용 중지할 수 없으면 기기 소유자임).

버그 신고 및 로그

Android 7.0부터 기기 소유자 DPC(Device Policy Client)가 버그 신고를 받아 관리 기기에서 엔터프라이즈 프로세스에 관한 로그를 확인할 수 있습니다.

버그 신고(즉, dumpsys, dumpstate 및 logcat 데이터가 포함된 adb bugreport에서 수집된 동등한 데이터)를 트리거하려면 DevicePolicyController.requestBugReport를 사용하세요. 버그 신고가 수집되면 사용자에게는 버그 신고 데이터를 전송하는 데 동의할지 묻는 메시지가 표시됩니다. 결과는 DeviceAdminReceiver.onBugreport[Failed|Shared|SharingDeclined]가 수신합니다. 버그 신고 내용에 관한 자세한 내용은 버그 신고 읽기를 참고하세요.

또한 기기 소유자 DPC는 사용자가 관리 기기에 관해 취한 조치와 관련된 로그를 수집할 수도 있습니다. 엔터프라이즈 프로세스 로깅은 device_admin을 보고하는 모든 기기에 필요하고, 시스템 서버만 읽을 수 있는 새로운 로그 보안 버퍼가 활성화합니다(즉 $ adb logcat -b security는 이 버퍼를 읽을 수 없음). ActivityManager 서비스와 Keyguard 구성요소는 보안 버퍼에 관한 다음 이벤트를 로깅합니다.

  • 애플리케이션 프로세스 시작
  • 키가드 작업(예: 잠금 해제 실패 및 성공)
  • 기기에 관해 adb 명령이 실행됨

여러 번 재부팅(콜드 부팅 아님)하는 과정에서 로그를 유지하고, 이러한 로그를 기기 소유자 DPC가 확인할 수 있도록 하려면 기기에는 pstorepmsg가 활성화된 커널과 모든 재부팅 단계에서 지원 및 새로고침된 DRAM이 있어 메모리에서 로그 손상을 피해야 합니다. 지원하려면 frameworks/base/core/res/res/values/config.xml에서 config_supportPreRebootSecurityLogs 설정을 사용하세요.