Java反射框架和安全性 [英] Java reflection framework and security

查看:172
本文介绍了Java反射框架和安全性的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

假设我的应用程序的外部库中有一个单例类。但我仍然可以
使用反射创建该特定类的实例。像这样

Assume I have a singleton class in an external lib to my application. But still I can create instances of that particular class using reflection. Like this

    Class clas = Class.forName(Private.class.getName());

    for(Constructor c : clas.getDeclaredConstructors()){
        c.setAccessible(true);
        Private p = (Private) c.newInstance();
        System.out.println(p);
    }

我该如何限制? 。

谢谢
J

推荐答案

通过使用 SecurityManager 并控制 ReflectPermission(suppressAccessChecks)示例) 。

By using a SecurityManager and controlling controlling ReflectPermission("suppressAccessChecks") (example).

安全管理器会影响性能,但很少在服务器端使用。

The security manager impacts performances though, and it is rarely used on the server side.

这篇关于Java反射框架和安全性的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆