2012-09-26 143 views
2

我已經看到可以使用System.clearProperty("propertyName")來清空(或清除)系統屬性。但是,我無法找到類似的安全機制。將Java安全屬性設置爲空

如何執行相當於Security.clearProperty("propertyName")

顯然,使用Security.setProperty("propertyName", null)不起作用的原因是它不適用於System.setProperty("propertyName", null)

我想這樣做,因爲有可選的安全屬性,當所需的屬性發生更改時可能無法更新。我希望可選屬性在對所需屬性進行更改時重置爲默認值。

回答

0

道歉已經重新打量這個我相信

System.clearProperty 

不會爲安全性工作。我不確定如何以編程方式執行此操作,但是您可以創建一個新的安全策略文件,並在其中包含所需的設置並使用該文件:

Djava.security.manager -Djava.security.policy=/path/to/new/policy_file 
+0

感謝您的回覆。我看到我在帖子中犯的錯誤並更新了它。 AFAIK,-D選項在JVM啓動。我需要在程序執行期間修改這個值。如果我錯了,請糾正我。我開始考慮即時修改政策,並將繼續這樣做。 – Todd

+0

花了一段時間的政策後,由於其他實施限制,似乎並不適合我。 – Todd