2017-05-23 49 views
1

JavaFXでSystem.setProperty()メソッドを使用するには管理者権限が必要ですか?私はdocumentationを読んで本当に困惑している:JVMは、プロパティを設定するために私を禁止JavaFX System.setProperty管理者権限

@exception SecurityException if a security manager exists and its 
    *    <code>checkPermission</code> method doesn't allow 
    *    setting of the specified property. 

どのような状況下では?

私のアプリケーションがと同梱されている場合 JavaFXアプリは違いますか?おかげさまで

+0

あなたを混乱させるドキュメントへのリンクはありますか? –

+0

@Mr_and_Mrs_Dが編集されました。セキュリティマネージャが存在し、そのcheckPermissionメソッドが指定されたプロパティの設定を許可しない場合、 –

+0

に感謝します。 checkPermissonメソッドを許可しなかった場合は、これを使用できます。 ここであなたは混乱しますか? checkPermissionを使用していますか? – nuriselcuk

答えて

1

セキュリティマネージャは、「管理者アクセス権」を持つことによって定義されたオペレーティングシステムのアクセス許可とは関係ありません。

セキュリティマネージャはhereと記載されています。具体的には注:

セキュリティマネージャは、アプリケーションのセキュリティポリシーを定義するオブジェクトです。このポリシーは、安全でないか機密性の高いアクションを指定します。セキュリティポリシーで許可されていないアクションでは、SecurityExceptionがスローされます。

通常、ウェブアプレットはブラウザやJava Web Startのプラグインが提供するセキュリティマネージャで実行されます。他の種類のアプリケーションは、通常、アプリケーション自体に定義されていない限り、セキュリティマネージャなしで実行されます。セキュリティマネージャが存在しない場合、アプリケーションにはセキュリティポリシーはなく、制限なしに動作します。

したがって、Web Startの下で実行されるアプリケーションには、JNLPファイルによって構成されたアクションを許可するセキュリティーマネージャーがあります(署名されたアプリケーションに対して昇格されたアクションのみが許可されます)。

これを変更する場合を除き、「通常の」デスクトップアプリケーションとして実行されるスタンドアロンアプリケーションにはセキュリティマネージャはなく、その動作は制限されません。セキュリティマネージャが存在しない場合は特に、その後、マニュアルに従って、あなたは引用:

@exception SecurityException if a security manager exists and its 
    *    <code>checkPermission</code> method doesn't allow 
    *    setting of the specified property. 

なしSecurityExceptionがスローされます。

関連する問題