জাভা অ্যাপ্লেট: অ্যাক্সেস কন্ট্রোলঅনুসরণ আবার

এখনও আবার সাইন আপ করা অ্যাপলেটগুলির বিশেষ সুবিধাগুলির সাথে ইস্যু করুন।

আমি স্থানীয় ড্রাইভ থেকে ফাইল মুছে ফেলার জন্য স্ব-স্বয়ংসম্পূর্ণ অ্যাপলেট চাই, কিন্তু আমি ব্যতিক্রমটি পাই:

java.security.AccessControlException: access denied
  (java.io.FilePermission /Users/me/tmp.txt delete)

এখানে আমি মুছে ফেলা আহ্বান:

    public void deleteFile( String path )
    {
        AccessController.doPrivileged( new Deleter( path ));
    }

এবং এই শ্রেণী ফাইলটি মুছে ফেলেছে:

class Deleter implements PrivilegedAction {
    public Deleter( String path ) {
        m_path = path;
    }

    public Object run()
    {
        File file = new File( m_path );
        file.delete();
        return null;
    }

    private String m_path;
};

এইচটিএমএল কোড হল:



 

এ মীমাংসিত:

আমি নীতি যোগ করতে প্রয়োজন (OS X অধীনে):

cat >> ~/.java.policy

grant {
  permission java.io.FilePermission "<>", "delete";   
};
0
যোগ সম্পাদিত
মতামত: 1
আমি বুঝতে পারছি না কেন এটি একটি স্বতন্ত্র অ্যাপলেটের জন্য একটি সমস্যা
যোগ লেখক Jakub M., উৎস
ত্রুটি ... কোনও পলিসি ফাইল, এটি কি বিকল্প সাইন ইন করার জন্য নয়? (দৃশ্যত না :)
যোগ লেখক Jakub M., উৎস
@ ইজেপি: হ্যাঁ, বিশ্বাস, সব গ্রহণ, ইত্যাদি।
যোগ লেখক Jakub M., উৎস
আপনি আপনার স্বাক্ষরিত সনদ বিশ্বাস করার জন্য আপনার ব্রাউজার বলতে যখন আপনি জিজ্ঞাসা ছিল?
যোগ লেখক EJP, উৎস
আপনি কেন এই একটি নিরাপত্তা সমস্যা বুঝতে পারি?
যোগ লেখক Jivings, উৎস
ফাইন, আপনার পলিসি ফাইলের মধ্যে কি?
যোগ লেখক Jivings, উৎস

1 উত্তর

অনুমতি প্রদান করার জন্য, অ্যাপলেটগুলি একটি নীতি ফাইলের প্রয়োজন। এই ব্যবহারকারী সিস্টেমের জন্য তারা কি করতে পারে তা সংজ্ঞায়িত করে। আপনি এখানে আরও তথ্য পেতে পারেন।

0
যোগ