ความปลอดภัยมือถือ - ระบบปฏิบัติการ Android
อย่างที่เราทราบกันดีว่าซอฟต์แวร์ได้รับการพัฒนาโดย Google สำหรับอุปกรณ์เคลื่อนที่ที่มีความสามารถในการประมวลผลสำหรับสมาร์ทโฟนและแท็บเล็ต เคอร์เนลของมันขึ้นอยู่กับ Linux แอปพลิเคชันที่ติดตั้งทำงานในแซนด์บ็อกซ์ อย่างไรก็ตามผู้ผลิตหลายรายได้เปิดตัวโปรแกรมป้องกันไวรัสสำหรับระบบปฏิบัติการเช่น Kasperky, MCAfee และ AVG Technologies แม้ว่าแอปพลิเคชันป้องกันไวรัสจะทำงานภายใต้แซนด์บ็อกซ์ แต่ก็มีข้อ จำกัด ในการสแกนสภาพแวดล้อม
คุณสมบัติบางอย่างของระบบปฏิบัติการ Android มีดังนี้ -
- เครื่องเสมือน Dalvik เหมาะสำหรับอุปกรณ์มือถือ
- ฐานข้อมูล SQLite สำหรับข้อมูลที่มีโครงสร้าง
- เบราว์เซอร์ในตัวที่ใช้เอ็นจิ้น WebKit
- รองรับรูปแบบสื่อต่างๆเช่นเสียงรูปภาพวิดีโอ
- สภาพแวดล้อมการพัฒนาที่หลากหลายเช่นอีมูเลเตอร์ (Bluestack) เครื่องมือดีบั๊ก
สถาปัตยกรรมระบบปฏิบัติการ Android
ภาพต่อไปนี้แสดงสถาปัตยกรรมโดยรวมของ Android OS -
The first layer is Application, รวมถึงแอปพลิเคชันเช่น SMS ปฏิทินและแอปพลิเคชันของบุคคลที่สามอื่น ๆ
The second layer is Application Framework, ซึ่งรวมถึง -
ดูระบบซึ่งมีไว้สำหรับนักพัฒนาในการสร้างกล่องเส้นกริด ฯลฯ
ผู้ให้บริการเนื้อหาอนุญาตให้แอปพลิเคชันเข้าถึงและใช้ข้อมูลจากแอปพลิเคชันของบุคคลที่สาม
ตัวจัดการกิจกรรมควบคุมวงจรชีวิตของแอปพลิเคชัน
ผู้จัดการทรัพยากรจัดสรรทรัพยากรให้กับแอปพลิเคชัน
ตัวจัดการการแจ้งเตือนช่วยแสดงการแจ้งเตือนของแอปพลิเคชัน
The third layer is libraries,ซึ่งเป็นส่วนที่สำคัญที่สุด ใช้ฟังก์ชันของแอปพลิเคชันตัวอย่างเช่นเพื่อจัดเก็บวันที่ในฐานข้อมูล เป็น SQLite ที่ใช้ฟังก์ชันนี้
The fourth layer is the Linux Kernel. มีไดรเวอร์ทั้งหมดของส่วนประกอบฮาร์ดแวร์เช่นกล้องไร้สายที่เก็บข้อมูล ฯลฯ
API การดูแลอุปกรณ์ Android
Device Administration API ที่เปิดตัวใน Android 2.2 มีคุณสมบัติการดูแลระบบอุปกรณ์ในระดับระบบ API เหล่านี้ช่วยให้นักพัฒนาสามารถสร้างแอปพลิเคชันที่คำนึงถึงความปลอดภัยซึ่งมีประโยชน์ในการตั้งค่าขององค์กรซึ่งผู้เชี่ยวชาญด้านไอทีต้องการการควบคุมอุปกรณ์ของพนักงานที่หลากหลาย
แอปพลิเคชันผู้ดูแลอุปกรณ์เขียนโดยใช้ Device Administration API แอปพลิเคชันผู้ดูแลระบบอุปกรณ์เหล่านี้บังคับใช้นโยบายที่ต้องการเมื่อผู้ใช้ติดตั้งแอปพลิเคชันเหล่านี้บนอุปกรณ์ของตน แอปพลิเคชันในตัวสามารถใช้ประโยชน์จาก API ใหม่เพื่อปรับปรุงการรองรับการแลกเปลี่ยน
นี่คือตัวอย่างบางส่วนของประเภทแอปพลิเคชันที่อาจใช้ Device Administration API -
- ไคลเอนต์อีเมล
- แอปพลิเคชันความปลอดภัยที่ทำการล้างข้อมูลจากระยะไกล
- บริการจัดการอุปกรณ์และแอปพลิเคชัน
ตัวอย่างที่ใช้ในบทช่วยสอนนี้เป็นไปตามตัวอย่าง Device Administration API ซึ่งรวมอยู่ในตัวอย่าง SDK (มีให้ผ่าน Android SDK Manager) และอยู่ในระบบของคุณในชื่อ
<sdk_root>/ApiDemos/app/src/main/java/com/example/android/apis/app/ DeviceAdminSample.java.
แอปพลิเคชันตัวอย่าง
แอปพลิเคชันตัวอย่างนี้นำเสนอการสาธิตคุณลักษณะของผู้ดูแลระบบอุปกรณ์ นำเสนอผู้ใช้ด้วยอินเทอร์เฟซผู้ใช้ที่ช่วยให้พวกเขาเปิดใช้แอปพลิเคชันผู้ดูแลอุปกรณ์
เมื่อผู้ใช้เปิดใช้งานแอปพลิเคชันแล้วพวกเขาสามารถใช้ปุ่มในอินเทอร์เฟซผู้ใช้เพื่อทำสิ่งต่อไปนี้ -
ตั้งค่าคุณภาพรหัสผ่าน
ระบุข้อกำหนดสำหรับรหัสผ่านของผู้ใช้เช่นความยาวขั้นต่ำจำนวนอักขระตัวเลขขั้นต่ำที่ต้องมีเป็นต้น
ตั้งรหัสผ่าน หากรหัสผ่านไม่เป็นไปตามนโยบายที่ระบุระบบจะส่งคืนข้อผิดพลาด
ตั้งค่าจำนวนครั้งในการพยายามใช้รหัสผ่านที่ล้มเหลวก่อนที่อุปกรณ์จะถูกล้าง (นั่นคือคืนสู่การตั้งค่าจากโรงงาน)
กำหนดระยะเวลาที่รหัสผ่านจะหมดอายุ
ตั้งค่าความยาวประวัติรหัสผ่าน (ความยาวหมายถึงจำนวนรหัสผ่านเก่าที่เก็บไว้ในประวัติ) ซึ่งจะป้องกันไม่ให้ผู้ใช้นำรหัสผ่านสุดท้ายที่เคยใช้ก่อนหน้านี้กลับมาใช้ซ้ำ
ระบุว่าพื้นที่จัดเก็บควรเข้ารหัสหากอุปกรณ์รองรับ
กำหนดระยะเวลาที่ไม่ใช้งานสูงสุดที่สามารถผ่านไปได้ก่อนที่อุปกรณ์จะล็อก
ทำการล็อกอุปกรณ์ทันที
ล้างข้อมูลอุปกรณ์ (นั่นคือคืนค่าการตั้งค่าจากโรงงาน)
ปิดการใช้งานกล้อง