問題タブ [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 - スレッドごとのJavaセキュリティマネージャ
制限されたサンドボックスで特定のスレッドクラスを実行したいのですが、アプリケーションの残りの部分は制限なしで実行できます。
特定のスレッドクラスに対してのみセキュリティマネージャをアタッチすることは可能ですか?
-
編集:Peterのヒントを使用して、カスタムセキュリティマネージャー内に次の変数を作成しました。
チャットボットは、制限付きで実行したい特定のクラスのスレッドです。したがって、initialValueではすべてのChatBotスレッドに値'true'を指定し、childValueではChatBotスレッドによって生成されたすべての子に値'true'を指定します。
不思議なことに、これは機能しません。childValue内にブレークポイントを設定しましたが、実行がそこに到達しないことがわかったため、子スレッドは「false」の値を取得します。
私は何が間違っているのですか?
java - SecurityManagerの驚き
非常に制限の厳しいセキュリティマネージャーを作成したかったので、SecurityManagerを拡張し、すべてのカスタムcheckXXXメソッドをオーバーライドしました。
しかし、その後、セキュリティマネージャが役に立たないことがわかりました。なぜなら、誰でも次のことができるからです。
だから私は追加する必要があります:
これ以上の驚きはありますか?SecurityManagerを気密にするために他にやらなければならないことはありますか?
java - JBoss 5.1 Community Edition SecurityManager .policy ファイルの例はありますか?
「jboss security manager」をグーグルで検索するとhttp://docs.jboss.org/jbossweb/2.1.x/security-manager-howto.htmlが表示されますが、これは時代遅れです。
java - JBoss 5.1 Community Edition の Grails 1.3.2 アプリで java.security.AllPermission が失敗する
私が理解していることから、SecurityManagerポリシーファイルには
すべての権限をグローバルに付与する必要があります。ただし、JBoss 5.1 Community Edition および JRE 6u24 で Grails 1.3.2 アプリを実行すると、起動に成功した後にページにアクセスすると次のスタック トレースが表示されます (セキュリティ マネージャーをオンにしなくても問題なく動作します)。または誰かが他の洞察を持っていますか?:
*スタックトレースの途中から約 150,000 文字を切り取らなければなりませんでした。ある種の無限ループが最終的な PerGen 例外につながったようです。
アップデート
Grails のバグ レポートを提出しました: http://jira.grails.org/browse/GRAILS-7845
java - Javaセキュリティマネージャは、誰がアクセスを要求するかを調べます
私は独自のセキュリティマネージャーを作成しましたが、問題は、プログラム内の他のユーザーからコードを実行し、悪用されていないことを確認する必要があることです。
だから私の質問は:checkXXXXX()-メソッドでアクセスを要求するセキュリティマネージャのメソッドでどのように見つけることができるかです。
ありがとう
java - カスタム SecurityManager 内の ClassCircularityError
SecurityManager を作成していて、単体テストの実行中に ClassCircularityError 例外を取得しています。スタック トレースを調べると、SM.checkPermission メソッド内で参照されているクラスについて不平を言っていることがわかります。SM.checkP のすべてのクラスがロードされることを保証するために、正式にシステム SM として設定する前に、だまされて一度呼び出します。ただし、これでは問題は解決しません。JVM が再びクラスをロードしようとしている理由がまったくわかりません。
spring - Spring Security をメインの Security Manager として強制する方法は?
spring security を使用しているときに Java SecurityManager を有効にする方法はありますか? Swing スタンドアロン アプリケーションがあり、Spring jdbcDaoImpl を使用して、MySql データベース (デフォルトの Spring セキュリティ スキーマ) を使用して認証および承認します。
しかし、 System.setSecurityManager(...) の設定で何が起こるかのように、すべてのタスクを強制的に保護する方法を知りたいです
java - Java リフレクション許可エラー
URLClassLoader を介してクラスをロードしようとしています (まあ、通常のクラス ローダーでは動作しません) が、権限を持たないようにしたいと考えています。
したがって、起動時にキーを生成する独自のセキュリティマネージャーを作成しました。これは、(メインスレッドで) 1 回だけ要求できます。セキュリティ マネージャには 2 つのリストがあります。applicationThread にはすべての権利が付与され、temporaryList には 1 つの権利が一度だけ付与されます (これはリフレクションに関するものです)。
説明するのが非常に難しいので、すべてをアップロードすることにしました:以下のリンクを見てください。
わかりました、戻ってきます: スレッドに時間がかかりすぎないかどうかをチェックする WatchDog スレッドを作成しました。
URLClassLoader から 2 つのクラスのインスタンス化を開始すると、エラーが発生することなく正確に 30 個のメソッドを呼び出しますが、31 回目の呼び出しで、次のアクセス許可をチェックしようとしますが、これは 30 回目の呼び出しの後で発生します。
そこで何が起こっているか知っている人はいますか?
編集:例を削除する時間がありました。 http://myxcode.at/securitymanager.zip SecurityManager が同期を要求されていないことがわかりました。この小さなコードを実行して、赤い線を見てください。
赤い線が最初の行にある場合は、プログラムをもう一度実行すると、少し制御されていないように見えることがわかります。
多かれ少なかれ問題は、セキュリティマネージャーを同期する必要があることです。エラー(バグ?)に直面できない人のための私の出力は 次のとおりですhttp://pastebin.com/E9yLRLif
edit2: 多分それはコンソールについてですか? 多分コンソールが遅すぎる?
java - SecurityManagerを使用した場合のパフォーマンスの低下は何ですか?
SecurityManagerを使用する場合、パフォーマンスが低下しますか?
私は以下が必要です:
これは私のプログラムに大きな影響を与えますか?
たとえば、プログラムは多くのファイルを開きます。また、SecurityManagerを有効にしてそこにログインすると、これらのメソッドが頻繁に呼び出される可能性があります。本当にたくさん。これらの2つの方法からのロギングでは、通常のロギングが失われるほどです。したがって、SecurityManagerを配置するということは、多くの呼び出しが行われることを意味しているようです。デフォルトのSecurityManagerよりも遅くなりますか?(デフォルトで何かありますか?)
これはどのように作動しますか?プログラムのどの部分で権限がチェックされ、どのくらいの頻度でチェックされますか?私は2つのcheckPermission(...)メソッドに関心があります。