2016-11-04 5 views
-1

プロセスオブジェクトを介してアクセスするシステムプロパティを制限する方法を教えてください。プロセスオブジェクトを通じて次のコードを実行すると、セキュリティ例外をスローすることはできますか?JavaのProcessオブジェクトのセキュリティを設定する

System.getProperty("user.home"); 

プロセスオブジェクトに有価証券を設定する方法について教えてください。 ProcessBuilderをクラス文書で

、環境の方法で書かれている:

システム環境変数への変更を許可しないか、または 特定の変数名または値を禁止することができます。

したがって、特定の変数値を禁止する方法を教えてください。

更新日: 私はJava Webアプリケーションを使用しており、クライアントサイドにコード化するプラットフォームを提供しているとします。次に、Java Webアプリケーションとクライアント側アプリケーションのJavaセキュリティを個別に設定する方法(アプリケーションの脆弱性に対してこれらのコマンドを使用するようにクライアント側を制限する必要がありますが、

答えて

0

独自のセキュリティマネージャを作成し、いくつかのプロパティコード内

public class MySecurityManager extends SecurityManager { 

@Override 
public void checkPropertyAccess(String key) throws SecurityException { 
     if (key != null && key.equals("some.forbidden_value") { 
      throw new SecurityException("some message"); 
     } 
     super.checkPropertyAccess(key); 
    } 
} 

そして、他のどこかのアクセスを確認するには、セキュリティマネージャを添付:感謝の

System.setSecurityManager(new MySecurityManager()); 
+0

たくさん。ちょうど私のように働いています。しかし、あなたの答えを詳しく教えてください。 @StephaneM – smondal345

+0

このセキュリティをProcessクラスオブジェクトに追加できますか? – smondal345

+0

私は分かりません。子プロセスにポリシーを実装する場合は、プログラムではなくポリシーファイルを使用することをお勧めします。参照してください:http://docs.oracle.com/javase/7/docs/technotes/guides/security/permissions.html – StephaneM

関連する問題