2009-06-18 18 views

उत्तर

2

1,4 गतिशील से ProtectionDomain रों Policy प्रतिनिधि कर सकते हैं। कोड से अनुमतियों को गतिशील रूप से हटाने से कोई समझ नहीं आती है। AccessController.doPrivileged के दो तर्क रूप भी उपयोगी हो सकते हैं।

+1

हम एक OSGi आधारित ढांचा है, जो लंबे समय से चल रहा है हो सकता है और जितना संभव हो उतना पुनरारंभ करने से बचना चाहिए विकसित कर रहे हैं। ढांचा SAAS है, लेकिन ग्राहक सिस्टम में अपने बंडल (प्लगइन्स) को तैनात करने में सक्षम है। तो, हमारे लिए रनटाइम पर अनुमतियों को संशोधित करना अच्छा होगा। –

2

जावाडोक का कहना है कि फाइल-आधारित नीति के लिए Policy.refresh() हैं फ़ाइल फिर से पढ़ें। इस प्रकार, नीति फ़ाइल को संपादित करके रनटाइम पर सिस्टम-व्यापी नीति को संशोधित करना और फिर Policy.refresh()

+2

आपको पता चलेगा कि अनुमतियों को पहले से ही पॉलिसी से बाहर किया गया है और क्लासेस और क्लासलोडर्स के प्रोटेक्शन डोमेन्स में कॉपी किया गया है। –

+2

यह मेरे लिए ठीक काम कर रहा था, जब '' System.setProperty ("java.security.policy", policyURL) '', तो ताज़ा '' Policy.policy.refresh() '' के माध्यम से नीति की स्थापना और बाद में सुरक्षा प्रबंधक स्थापित करने 'System.setSecurityManager (नया सुरक्षा प्रबंधक());' '। – BenR

2

Policy.setPolicy() विधि का उपयोग करके कस्टम नीति कार्यान्वयन सेट करना संभव है। उदाहरण के लिए JAAS in Action पुस्तक देखें।

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