java.security.AccessControlException error when attempting to start Confluence
プラットフォームについて: Data Center のみ。 - This article only applies to Atlassian apps on the Data Center プラットフォーム。
この KB は Data Center バージョンの製品用に作成されています。Data Center 固有ではない機能の Data Center KB は、製品のサーバー バージョンでも動作する可能性はありますが、テストは行われていません。 Server* 製品のサポートは 2024 年 2 月 15 日に終了しました。Server 製品を実行している場合は、 アトラシアン Server サポート終了 のお知らせにアクセスして、移行オプションを確認してください。
*Fisheye および Crucible は除く
問題
Confluence を実行しようとすると、次のエラーが表示されることがあります。
java.security.AccessControlException: access denied (java.lang.RuntimePermission accessDeclaredMembers)
at java.security.AccessControlContext.checkPermission(AccessControlContext.java(Compiled Code))
at java.security.AccessController.checkPermission(AccessController.java(Compiled Code))
at java.lang.SecurityManager.checkPermission(SecurityManager.java(Compiled Code))原因
Confluence は多くの Java ライブラリに依存しています。これらのライブラリの一部は、Java セキュリティポリシーにより制約を受ける場合がある Java 言語のフィーチャーを利用します。
通常、これは問題にはなりません。ほとんどのアプリケーションサーバーの既定のセキュリティ設定で、Confluence は問題なく稼働します。しかし、一部の共有ホスティングまたはエンタープライズ環境では、セキュリティ設定のために Confluence の機能を実行できないような場合があります。
ソリューション
Confluence を実行するために必要な権限は以下のサンプルポリシー ファイルに詳述されています。この情報をシステム管理者に与えて、Confluence アプリケーションと共に権限を配置できるようにする必要がある場合もあります。
grant codeBase "file:${catalina.home}/webapps/confluence/-" {
permission java.security.AllPermission;
};
grant {
permission java.lang.RuntimePermission "accessDeclaredMembers";
permission java.lang.reflect.ReflectPermission "suppressAccessChecks";
permission java.lang.RuntimePermission "defineCGLIBClassInJavaPackage";
};
この内容はお役に立ちましたか?