ทดสอบการจัดการอุปกรณ์

อุปกรณ์ 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) ของเจ้าของอุปกรณ์จะดูรายงานข้อบกพร่องและดูบันทึกสำหรับกระบวนการขององค์กรในอุปกรณ์ที่มีการจัดการได้

หากต้องการเรียกให้แสดงรายงานข้อบกพร่อง (นั่นคือข้อมูลที่เทียบเท่าซึ่งรวบรวมโดย adb bugreport ที่มีข้อมูล dumpsys, dumpstate และ logcat) ให้ใช้ DevicePolicyController.requestBugReport หลังจากรวบรวมรายงานข้อบกพร่องแล้ว ระบบจะแจ้งให้ผู้ใช้ให้ความยินยอมในการส่งข้อมูลรายงานข้อบกพร่อง DeviceAdminReceiver.onBugreport[Failed|Shared|SharingDeclined] ได้รับผลลัพธ์แล้ว ดูรายละเอียดเกี่ยวกับเนื้อหาของรายงานข้อบกพร่องได้ที่การอ่านรายงานข้อบกพร่อง

นอกจากนี้ DPC ของเจ้าของอุปกรณ์ยังรวบรวมบันทึกที่เกี่ยวข้องกับการดำเนินการที่ผู้ใช้ทำในอุปกรณ์ที่มีการจัดการได้ด้วย จำเป็นต้องใช้การบันทึกกระบวนการขององค์กรสำหรับอุปกรณ์ทั้งหมดที่รายงาน device_admin และเปิดใช้โดยบัฟเฟอร์ความปลอดภัยของบันทึกใหม่ซึ่งอ่านได้โดยเซิร์ฟเวอร์ระบบเท่านั้น (นั่นคือ $ adb logcat -b securityอ่านบัฟเฟอร์ไม่ได้) บริการ ActivityManager และคอมโพเนนต์ Keyguard จะบันทึกเหตุการณ์ต่อไปนี้ลงในบัฟเฟอร์ความปลอดภัย

  • กระบวนการสมัครกำลังเริ่มต้น
  • การดำเนินการของ Keyguard (เช่น ปลดล็อกไม่สำเร็จและสำเร็จ)
  • adb คำสั่งที่ส่งไปยังอุปกรณ์

หากต้องการเก็บบันทึกไว้เมื่อรีบูต (ไม่ใช่การบูตจากเครื่องเย็น) และทำให้ DPC ของเจ้าของอุปกรณ์เข้าถึงบันทึกเหล่านี้ได้ อุปกรณ์จะต้องมีเคอร์เนลที่เปิดใช้ pstore และ pmsg รวมถึง DRAM ที่เปิดเครื่องและรีเฟรชตลอดทุกระยะของการรีบูตเพื่อหลีกเลี่ยงการทำให้บันทึกที่เก็บไว้ในหน่วยความจำเสียหาย หากต้องการเปิดใช้การสนับสนุน ให้ใช้การตั้งค่า config_supportPreRebootSecurityLogs ใน frameworks/base/core/res/res/values/config.xml