2011-11-17 9 views
13

मैं लिख रहा हूं 1) एक ऐप जो खाता प्रबंधक में उपयोगकर्ता नाम और पासवर्ड संग्रहीत करता है, और 2) एक अलग पृष्ठभूमि सेवा ऐप जो मेरे सर्वर पर लॉगिन करने के लिए उन प्रमाणपत्रों तक पहुंचता है, आदि। इसके साथ खेलना, मुझे लगता है कि मैं हूं अन्य ऐप (ऐप 1) का उपयोग करके खाता प्रबंधक में जोड़े गए खातों के प्रकार तक पहुंचने के लिए सेवा (एप 2) से AccountManager.getPassword (खाता) को कॉल करने में सक्षम।एंड्रॉइड खाता प्रबंधक पासवर्ड अन्य ऐप्स द्वारा पढ़ने से क्या बचाता है?

इसके कारण, मुझे आश्चर्य है कि एक मनमानी दुर्भावनापूर्ण ऐप को 1 से रोकता है) जिसमें मैनिफेस्ट के क्षेत्र में खाता प्रबंधन पहुंच है, और उसके बाद 2) किसी विशेष प्रकार के सभी खातों के माध्यम से पुनरावृत्ति से और उन पर mAccountManger.getPassword (खाता) को कॉल करना। मुझे पता है कि स्थापना के दौरान, एक संवाद एक ऐप का उपयोग करने के लिए सभी अनुमतियों के साथ पॉप अप करता है, लेकिन मुझे नहीं लगता कि हम ऐप को अस्वीकार करने के लिए औसत उपयोगकर्ता पर भरोसा कर सकते हैं क्योंकि यह संदिग्ध अनुमतियों का अनुरोध करता है।

क्या खाता प्रकार पर GetPassword को कॉल करने से रोकने का कोई तरीका है? क्या खाता प्रबंधक में उन ऐप्स से खातों की सुरक्षा करने के तरीके हैं जिन्होंने स्वयं को बहुत से खाता अनुमतियां दी हैं?

उत्तर

9

खाता डेटा सुरक्षा अनुरोध करने की प्रक्रिया के लिनक्स उपयोगकर्ता आईडी (यूआईडी) पर आधारित है। (मार्गदर्शिका में Security and Permissions देखें।) प्रत्येक खाता एक खाता प्रमाणीकरणकर्ता (जिसमें एक यूआईडी है) से जुड़ा हुआ है, और getPassword (या कई अन्य विधियों) को कॉल करने वाली प्रक्रिया प्रमाणीकरणकर्ता के समान यूआईडी होनी चाहिए।

संबंधित मुद्दे