Logo th.androidermagazine.com
Logo th.androidermagazine.com

การอนุญาตแอป Android - วิธีทำให้ google ถูกต้อง ...

สารบัญ:

Anonim

เมื่อไม่นานมานี้มีข่าวมากมายเกี่ยวกับความปลอดภัยหรือการตัดสินทั้งที่จริง ๆ แล้วที่ Apple ที่อนุญาตให้แอปพลิเคชั่น iOS ยืมข้อมูลผู้ติดต่อของคุณและส่งไปยังส่วนที่ไม่รู้จักโดยไม่ได้รับอนุญาตจากคุณ Apple ได้แก้ไขปัญหานี้ให้กับสมาชิกของรัฐสภาคองเกรสแห่งสหรัฐอเมริกาและจะดำเนินการตามขั้นตอนเพื่อให้การควบคุมที่เข้มงวดยิ่งขึ้นในการอัปเดต iOS ในอนาคต นั่นเป็นข่าวดีและเราดีใจที่ได้เห็นมันเกิดขึ้น

แต่ Android ล่ะ ระหว่างที่ทุกสิ่งมุ่งเน้นไปที่แอพที่ทำสิ่งต่าง ๆ โดยไม่ได้รับอนุญาตจากผู้ใช้อย่างชัดเจนคุณจะเห็นคนที่อ้างถึงรูปแบบสิทธิ์ของ Android เราจะทำลายทุกอย่างให้คุณ มันไม่สมบูรณ์แบบ แต่ใช้งานได้ดี - และมันก็ยังดีกว่าไม่มีระบบการอนุญาตเลย

มาแนะนำคุณเกี่ยวกับการอนุญาตบน Android และวิธีการที่คุณจะต้องมีส่วนร่วม

จากการออกแบบแอปพลิเคชัน Android ไม่ได้รับอนุญาตให้ดำเนินการใด ๆ ที่จะ "ส่งผลเสียต่อแอปพลิเคชันอื่น ๆ ระบบปฏิบัติการหรือผู้ใช้" เพื่อให้แอปสามารถเข้าถึงสิ่งต่าง ๆ เช่นข้อมูลผู้ติดต่อส่วนตัวข้อมูลของแอปพลิเคชันอื่นการเข้าถึงเครือข่ายหรือแม้กระทั่งบางอย่างที่เป็นการเขียนข้อมูลของตัวเองไปยังที่จัดเก็บอุปกรณ์แอปต้องประกาศว่าจะมีสิทธิ์ในการทำเช่นนั้น คุณต้องยอมรับการอนุญาตนั้นก่อนจึงจะสามารถติดตั้งแอปได้ เมื่อคุณติดตั้งแอพคุณจะเห็นรายการสิทธิ์ที่แอปพลิเคชันประกาศ

และโปรดทราบว่าเราบอกว่าแอปพลิเคชันเป็นการ "ประกาศ" การอนุญาตและไม่จำเป็นต้อง "ขอ" การอนุญาต ซีแมนทิกส์เราคิด แต่ไม่มีกล่องที่บอกว่า "เฮ้เจอรี่! ฉันเป็นแอพและฉันชอบที่จะให้คุณดูข้อมูลการติดต่อของคุณตกลงไหม" แอป Android จะตรงกว่านั้นโดยบอกว่า "Yo, Jerry ฉันเป็นแอปนี่คือรายการของสิ่งที่ฉันสามารถทำได้เพียงแค่รู้ sos คุณรู้เอาหรือปล่อยมันไว้"

แอพ Android จะประกาศสิทธิ์ที่พวกเขาสามารถเข้าถึงได้และกล่องแซนด์ใดที่พวกเขาสามารถเล่นได้และคุณสามารถเลือกที่จะยอมรับและติดตั้งแอพได้หรือไม่ ทำให้รู้สึก?

สิทธิ์ - ล่วงหน้าและเป็นส่วนตัวใน Android Market

นี่คือลักษณะที่คุณติดตั้งพูดเส้นทาง คุณได้รับรายการแมโครของสิทธิ์ที่ Path กำลังประกาศ แตะหนึ่งรายการและอธิบายการอนุญาตนั้นโดยละเอียดมากกว่าเล็กน้อย

นี่คือลักษณะที่ปรากฏถ้าคุณติดตั้งแอปพลิเคชันใด ๆ จาก Android Market คุณจะต้องเลื่อนดูรายการเพื่อดูทั้งหมด วิธีเล็ก ๆ น้อย ๆ คือเส้นทางที่ได้รับเส้นทาง (และอื่น ๆ) ในทุกปัญหาบน iOS ในรูปแบบของ Android คุณสามารถเห็นได้อย่างชัดเจนว่าเส้นทางประกาศการอนุญาตสำหรับ "ข้อมูลส่วนบุคคลของคุณ - อ่านข้อมูลการติดต่อ" แตะที่สิทธิ์นั้นและคุณจะได้รับรายละเอียดเพิ่มเติม:

"อนุญาตให้แอปพลิเคชันอ่านข้อมูลรายชื่อติดต่อ (ที่อยู่) ทั้งหมดที่เก็บไว้ในโทรศัพท์ของคุณแอปพลิเคชันที่เป็นอันตรายสามารถใช้สิ่งนี้เพื่อส่งข้อมูลของคุณไปยังผู้อื่นได้"

ดังนั้น Path บอกคุณว่ามันสามารถเข้าถึงข้อมูลผู้ติดต่อของคุณได้ มันไม่จำเป็นต้องบอกคุณว่ามันจะทำอะไรกับมัน (ถ้าเราไม่ได้นำมันมาคุณอยากจะรู้จริง ๆ ?) แต่มันบอกคุณว่ามันสามารถอ่านได้

แอพนอก Android Market

แต่ถ้าคุณลองไซด์แอปล่ะ หรือใช้ Amazon Appstore? แอปพลิเคชันยังคงควรประกาศสิทธิ์ที่พวกเขาใช้และคุณจะเห็นรายการสิทธิ์เมื่อคุณติดตั้งแอพ (โปรดจำไว้ว่า Amazon Appstore sideloads แอพดังนั้นสิ่งที่คุณเห็นจะเหมือนกับในกรณีที่คุณติดตั้งแอพจากอีเมลหรือดาวน์โหลด)

นี่คือลักษณะของ Gmail ที่มีหน้าตาคล้ายกัน ความแตกต่างที่แท้จริงเพียงอย่างเดียวระหว่างการไซด์โหลดและการติดตั้งจาก Android Market ตราบเท่าที่การอนุญาตดำเนินต่อไปคือเมื่อคุณไซด์โหลดคุณจะไม่ได้รับรายละเอียดการอนุญาตโดยละเอียดมากขึ้น

ทำไมทั้งหมดนี้ แอปพลิเคชัน Android เป็น "sandboxed" - พวกเขาเล่นในพื้นที่ของตัวเองและมีไฟล์ข้อมูลของตัวเองภายใน sandbox นั้น พวกเขาสามารถแชร์การเล่นในแซนด์บ็อกซ์ของคนอื่นหลังจากขออนุญาตอย่างชัดเจนเท่านั้นและทำได้ผ่านหน้าจอที่คุณเห็นด้านบน เมื่อคุณยอมรับการอนุญาตเหล่านั้นและติดตั้งแอปคุณจะให้สิทธิ์แอพนั้นในการเล่นในแซนด์บ็อกซ์ที่แอพบอกว่าต้องการเล่น

ในด้านนักพัฒนา … และวิธีที่ผู้บริโภคจะต้องทำส่วนของพวกเขา

เบื้องหลังนักพัฒนาแอปประกาศสิทธิ์เหล่านี้ในไฟล์ AndroidManifest.xml ซึ่งเป็นส่วนที่จำเป็นของซอร์สโค้ดสำหรับแอป Android การประกาศเหล่านี้เป็นแบบคงที่และทุกรายการจะถูกนำเสนอต่อผู้ใช้ตามที่เราได้เห็นด้านบน Android ไม่มีวิธีในการให้อนุญาตแบบไดนามิกในขณะใช้งานเนื่องจากตามผู้พัฒนาระบบปฏิบัติการ Android "จะทำให้ประสบการณ์การใช้งานของผู้ใช้ยุ่งยากกับความปลอดภัย" บังคับให้แอปบอกสิ่งที่ต้องการทำล่วงหน้าและไม่สามารถเปลี่ยนแปลงได้ - นั่นคือรูปแบบความปลอดภัยขั้นสูงสุด

ด้านพลิก? นอกจากนี้ยังเป็นวิธีที่ง่ายที่สุดสำหรับผู้ใช้ที่จะไม่สนใจ

เรารู้ทุกอย่างเกี่ยวกับสิ่งที่เกิดขึ้นกับ Path บน iOS เช่นเดียวกับแอพ iOS อื่น ๆ มันใช้ผู้ติดต่อโดยไม่ได้รับอนุญาต ไม่ใช่เพื่อจุดประสงค์สามานย์ แต่กระนั้นโดยไม่ได้รับอนุญาตล่วงหน้าและไม่ต้องขอในภายหลัง Path สำหรับ Android ส่งข้อมูลทุกประเภทไปยังเซิร์ฟเวอร์เช่นเดียวกับที่ทำบน iOS แต่อย่างที่เราแสดงให้เห็นในโพสต์นี้ใน Android Path ต้องประกาศการอนุญาตก่อน หรืออย่างแม่นยำยิ่งขึ้นมันประกาศการอนุญาตและคุณยอมรับหรือปฏิเสธมัน

ปัญหาคือเมื่อคุณติดตั้งแอพส่วนใหญ่คุณจะผ่านสายการอนุญาต คุณไม่ควร แต่เราทุกคนทำ ความจริงที่ว่าสิทธิ์ไม่ได้เขียนในภาษาธรรมดาเป็นส่วนหนึ่งของปัญหา แต่แม้ว่าพวกเขาจะเป็นพวกเราส่วนใหญ่จะคลิกที่ผ่านมาอยู่แล้ว นั่นแหล่ะที่เป็นอย่างไรในทุกแพลตฟอร์ม ในทางตรงกันข้ามมีคนที่คลั่งไคล้สิทธิ์เนื่องจากพวกเขาไม่เข้าใจพวกเขา อีกครั้งภาษาที่ใช้งานง่ายจะช่วยได้มากขึ้น

ทางเลือกหนึ่งในการทำเช่นนี้คือให้แอปพลิเคชันขอสิทธิ์ขณะใช้งานเมื่อต้องการทำสิ่งที่ไม่สามารถทำได้ตามปกติ เราได้อ่านแล้วว่าทีม Android คิดว่าสิ่งนี้ไม่สะดวกและไม่ปลอดภัยดังนั้นจึงไม่น่าจะเกิดขึ้น

อีกทางเลือกหนึ่งคืออนุญาตการอนุญาตที่เลือกเหมือนกับที่ RIM ทำกับ BlackBerry คุณจบลงด้วยแอปพลิเคชั่นที่ทำงานเพียงครึ่งเดียวเพราะคุณปฏิเสธสิทธิ์เช่นเดียวกับ BlackBerry ไม่มีวิธีที่เข้าใจผิดได้จริงนอกจากอ่านทุกอย่างเมื่อคุณติดตั้งแอพนั้นและพยายามที่จะเข้าใจในสิ่งที่มันขอให้ทำและทำไมมันถึงถาม

นั่นคือสิ่งที่เราทุกคนเข้ามาเราบางคนเข้าใจถึงการอนุญาตของแอปพลิเคชั่นมากกว่าคนอื่น ๆ และเมื่อแอพทำสิ่งที่ไม่ควรทำคุณควรได้ยินเสียงโวยวาย อ่านการอนุญาต อ่านความคิดเห็นของตลาด อ่าน Android Central เมื่อมีอะไรผิดพลาดคุณจะได้ยินเกี่ยวกับมัน

และสิ่งสุดท้าย …

หมายเหตุพิเศษต้องไปที่นี่เกี่ยวกับช่องโหว่ด้านความปลอดภัย โปรแกรมคอมพิวเตอร์ทุกโปรแกรม - และนั่นหมายถึงระบบปฏิบัติการมือถือทุกระบบเช่นกัน - หนุนเต็มของมัน เมื่อพบช่องโหว่ที่อนุญาตให้แอปพลิเคชันข้ามรุ่นความปลอดภัย Google จะแก้ไขได้อย่างรวดเร็ว สิ่งนี้เกิดขึ้นและมันจะเกิดขึ้นเสมอ ความรวดเร็วในการอัพเดทนี้จะเปิดตัวกับคุณขึ้นอยู่กับคนที่ทำโทรศัพท์ของคุณ พวกเขาสมควรได้รับเครดิตเมื่อพวกเขาทำอย่างถูกวิธีและดูถูกเมื่อพวกเขาใช้เวลานานเกินไปและทำผิด นั่นไม่ใช่สิ่งที่จะหายไปเมื่อเร็ว ๆ นี้และเราอยู่ที่นั่นกับคุณเพื่อเรียกร้องให้ OEM ที่ไม่ให้สิ่งต่าง ๆ ปลอดภัยอย่างที่ควรจะเป็น

หากคุณต้องการดำน้ำลึกลงไปในสิทธิ์ Android ให้ตรวจสอบหน้านักพัฒนาซอฟต์แวร์ของ Google