[英]I need to prevent the use of reflection to get a private Properties field from a superclass. How can I use the Java security manager to do this
我有一個不尋常的超級班。
它使用反射實例化子類,並在main方法中調用子類方法
即,字符串處理器= System.getProperty(PROCESSOR_CLASS); 子=(ClassName)class.forName(processor).newInstance();
sub.init(props);
我正在為超類編寫包裝器(子),該包裝也將是抽象的,並且將被大量子類用作基類。
我的問題是道具包含敏感信息。 我需要防止從子類擴展來的子類使用反射來訪問道具。
誰能給我一個使用Java安全管理器或其他方法執行此操作的示例嗎? 非常感謝您的幫助
默認情況下,JVM沒有可用的SecurityManager。 可以通過將以下選項傳遞給jvm來安裝安全管理器
-Djava.security.manager
或在代碼中設置一個
System.setSecurityManager(new SecurityManager());
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.