問題タブ [securitymanager]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - SecurityManager のチェックをグローバルに保存し、最終的に保存することは許容されますか?
セキュリティマネージャのチェックをグローバルに保存し、最終的に保存することは許容されますか?
次のコード行があるとします。
これをライブラリに配置して、JVM の存続期間全体にわたって結果を再利用することは許容されるでしょうか?
なんで?またはなぜですか?
【更新】 Java EE - JSP仕様のリファレンス実装にも同様のコードが存在します。それを使用するアプリ サーバー/サーブレット コンテナーは、SecurityManager の動的構成をサポートしません。
java - Java SecurityManager @Override public void checkPermission(Permission perm)
私は SWING アプリケーションを構築しており、カスタム SecurityManager も作成する必要があります。このようにSecurityManagerを拡張する空のクラスを書くと
つまり、GUI が正しくレンダリングされ、I/O などのすべての権限が取り消されます。ただし、checkPermission メソッドをカスタマイズする必要があり、オーバーライドするたびに何も機能しなくなります...なぜこのようなものでも機能しないのでしょうか??
更新:問題を示す非常に基本的な例はこれです
「checkPermission」メソッドを削除すると、アプリケーションは正しく機能しますが、これについては本当に理解できません。
java - Java セキュリティ マネージャを有効にすると、UDP ソケット数が制限されます
カスタム セキュリティ ポリシーを備えた Java アプリがあり、100 個の udp ソケットを開こうとしたときに例外が発生しました。
テストアプリ:
セキュリティ マネージャなしで起動すると、100 ソケットすべてが作成されます。
しかし、この行を VM 引数に追加すると
デフォルトのセキュリティ ポリシーでも失敗します。
セキュリティマネージャの使用中にソケット制限を変更するにはどうすればよいですか?
UPD: Windows 8.1 x64、Windows 7 x64、および Windows XP SP3 x32、Windows 7 x32 で再現されました。すべてのシステムで、JDK 1.6.45 x32 が使用されました。
UPD2: Windows XP SP3 x32 では JDK7 でも再現されますが、JDK 1.6.27 ではこれを再現できません。
UPD3: JDK クラスのデバッグでこれが見つかりました:
オープン JDK 実装では、デフォルトのソケット制限は 1024 です http://www.docjar.com/html/api/sun/net/ResourceManager.java.html
java - 最終ユーザーが特定のセキュリティ制約の下で JEE 環境でスクリプトを実行できるようにするにはどうすればよいですか?
私の JEE アプリは tomee の下で実行され、ユーザーが独自のスクリプトを記述して Web GUI から実行できるようにしますが、たとえば System.exit(1) などの特定の操作を制限したいと思います。
この問題に関連するディスカッションは beanshell2 フォーラムにあります - これをチェックしてください - http://code.google.com/p/beanshell2/issues/detail?id=15
JVM 内で動作するスクリプト可能な言語であれば問題ありませんが、このレベルの制御が必要です。私の最初の試みは beanshell を使用することでしたが、上記の説明からわかるように、これはオプションではないようです。
エンドユーザーは技術者なので、難解な言語は避けたいのですが、スクリプトを書くためだけに未知のプログラミング言語を学ぶように頼むことはできません:-) [または、見つからない場合はできるかもしれませんこれに役立つ任意のオプション]
どうすればそれを手に入れることができますか?グルーヴィー?他の JVM ベースのスクリプト言語はありますか?