Tag: security

在Spring安全性中拒绝具有相同角色的多个用户的访问权限

我遇到过这种情况:我的应用程序有几个角色(管理员,主持人,用户)。 主持人和用户可以编辑一些表格。 所有的权利都可以。 但是当我作为用户(角色用户)登录并更改URL中的id时,我可以简单地获取并编辑另一个用户(角色用户)的表单。 如何拒绝访问并阻止此类操作? PS。 弹簧和弹簧的安全版本是3.1.2 更新 – 添加了弹簧安全上下文

带有JDBC的Applet – java.security.AccessControlException:访问被拒绝

//JDBC using Applet /* */ import javax.swing.*; //JApplet,JLabel,JButton import java.applet.*; //Applet import java.awt.*; //Layout import java.awt.event.*; //Events import java.sql.*; //JDBC public class JDBC1 extends Applet implements Runnable,ActionListener { JFrame frame ; JPanel panel1; JLabel lblNo,lblName,lblBdate ; JTextField txtNo,txtName,txtBdate; JButton btn; Statement st1; Connection cn; ResultSet rs; public JDBC1() { try { panel1 = new JPanel […]

使用java和hibernate进行数据“安全性”

我目前正在处理的系统需要一些基于角色的安全性,这在Java EE堆栈中得到了很好的照顾。 该系统旨在成为业务领域专家在其上编写代码的框架。 但是,还需要数据security 。 也就是说,最终用户可以看到哪些信息。 这实际上意味着降低数据库中行(甚至列)的可见性。 我们正在使用Hibernate来实现持久性。 但是,我们使用自己的注释,以便不向业务领域专家公开我们的持久性选择。 对于基于行的安全性,这意味着我们可以在实体级别添加注释,例如@Secured ,这会导致将额外的列添加到基础表以约束我们的选择? 对于基于列的安全性,我们或许可以让@Secured协助生成查询,或者使用方面来过滤返回的信息? 我很想知道这对hibernate的缓存机制有何影响? 我相信很多人会有同样的问题,我想知道你是怎么接近这个的? 非常感激…

Java EE 6应用程序客户端登录

我是Java EE的新手,刚开始使用我想创建的应用程序时遇到了很多麻烦。 我想要的是连接到EJB项目的Swing应用程序客户端。 我正在使用Glassfish v3.1.1。 到目前为止我所拥有的是两个无状态bean,其中一个是使用@DeclareRoles和Glassfish中的JDBC领域保护的,以及客户端的开头。 运行客户端时,您可以选择用户名,键入密码,然后登录。 如果您使用正确的密码,一切正常(客户端控制台吐出一些“安全”信息)。 但是,如果您输入的密码不正确,则会被永久锁定。 InitialContext.lookup不会再次调用CallbackHandler来检查新密码,它会继续使用不正确的凭据。 有人可以告诉我如何正确地做到这一点? 我是否在这种情况下使用了正确的方法 – 网上有大量的信息,但基本上我尝试做的是0个例子? 一切似乎只适用于J2EE或Servlets! 这是一些相关的代码。 与GlassFish ejb-jar.xml中: Admin Admin Employee Employee LoginBean ejb/machineryhub/LoginService EmployeeBean ejb/machineryhub/EmployeeService username_password machineryhub true 我是否需要将块添加到我创建的每个安全bean中? 应用client.xml的: MachineryHub LoginBean Session machineryhub.service.LoginService EmployeeBean Session machineryhub.service.EmployeeService machineryhub.LoginCallbackHandler machineryhub.LoginCallbackHandler: public class LoginCallbackHandler implements CallbackHandler { @Override public void handle(Callback[] clbcks) throws IOException, UnsupportedCallbackException { […]

Domino Agent使用/ jvm / lib / ext中的第三方jar来解决Java安全问题

我遇到了Java安全问题。 我有一个代理使用pdfbox-1.7.1.jar来解密我知道密码的PDF。 jar已被放在服务器和我的客户端的/ jvm / lib / ext中,我得到了堆栈跟踪的这个小美: java.lang.SecurityException at java.lang.SecurityManager.checkPermission(SecurityManager.java:582) at COM.ibm.JEmpower.applet.AppletSecurity.checkSecurityPermission(AppletSecurity.java:1332) at COM.ibm.JEmpower.applet.AppletSecurity.checkPermission(AppletSecurity.java:1613) at COM.ibm.JEmpower.applet.AppletSecurity.checkPermission(AppletSecurity.java:1464) at java.lang.SecurityManager.checkSecurityAccess(SecurityManager.java:1725) at java.security.Security.insertProviderAt(Security.java:190) at java.security.Security.addProvider(Security.java:210) at org.apache.pdfbox.pdmodel.encryption.SecurityHandlersManager.getInstance(SecurityHandlersManager.java:146) at org.apache.pdfbox.pdmodel.PDDocument.openProtection(PDDocument.java:1365) at org.apache.pdfbox.pdmodel.PDDocument.decrypt(PDDocument.java:798) at com.magerman.hremail.prep1docc.PDFDecryptor.decrypt(Unknown Source) at com.magerman.hremail.prep1docc.MetaAttachment.decrypt(Unknown Source) at com.magerman.hremail.prep1docc.MetaDocContainingAttachments.removePasswordOfPDFAttachments(Unknown Source) at com.magerman.hremail.prep1docc.EPDFPreparerFactory.generateAttachmentsTriggerDocs(Unknown Source) at com.magerman.hremail.prep1docc.EPDFPreparerFactory.run(Unknown Source) at com.magerman.hremail.prep1docc.BaseClass.NotesMain(Unknown Source) at lotus.domino.AgentBase.runNotes(Unknown Source) at lotus.domino.NotesThread.run(Unknown Source) 客户端和服务器都使用8.5.3。 代理安全级别设置为3.将jar放入代理本身并没有帮助。 […]

使用char 生成MD5哈希

如何转换使用此方法获得的char []密码: char[] password = passwordInputField.getPassword(); 到MD5哈希? 通常我会使用下面的方法,但getBytes只与字符串兼容: MessageDigest md = MessageDigest.getInstance(“MD5”); md.update(password.getBytes()); String hashedPass = new BigInteger(1, md.digest()).toString(16);

带有Spring Security的AngularJS Web应用程序

我正在开发一个AngularJS应用程序中的Spring Security。 我对这两种技术都比较陌生,我找到了几个非常有用的网站,其中包含如何实现AngularJS和Spring Security的教程和示例。 我目前的问题在于限制某些用户的URL路径。 这听起来像是一个简单的问题,但我已经淹没了自己的文档,试图弄清楚以前必须解决的问题。 在AngularJS中,导航到不同的URL时URL中有一个哈希标记,这似乎导致Spring出现问题。 没有抛出错误,但资源不受限制。 我的代码如下: web.xml中 contextConfigLocation /WEB-INF/paperwebapp-servlet.xml org.springframework.web.context.ContextLoaderListener webapp org.springframework.web.servlet.DispatcherServlet contextConfigLocation * 1 webapp / characterEncodingFilter org.springframework.web.filter.CharacterEncodingFilter encoding UTF-8 forceEncoding true characterEncodingFilter /* springSecurityFilterChain org.springframework.web.filter.DelegatingFilterProxy springSecurityFilterChain /* APP-servlet.xml中 弹簧security.xml文件 部署应用程序后,我可以访问URL(localhost:8080 / app),并按照预期向我发送登录页面。 一旦我通过身份validation,我也会按预期进入启动画面(/#/ splash)。 但是,如果我使用“用户”凭据登录,我应该被限制在/ inventory路径中。 无论我尝试什么(/#/库存,/库存,#/库存等)我都无法限制资源。 我已经在直接从应用程序目录访问HTML页面的应用程序上测试了这个配置,它似乎工作正常,因此我确信它与AngularJS控制器路由请求和使用该哈希标记有关。 我在研究这个问题时发现的另一个兴趣点是,因为我们使用来自多个源的模板来编译每个页面,所以我们不能使用$ locationProvider来设置HTML5模式而不会破坏应用程序。 如果有人对此问题有任何见解,我们将不胜感激。 我确信这已经到了某个地方,但对于我的生活,我找不到任何东西。 谢谢!

如何在Play Framework 2(Java)中有选择地禁用CSRF检查

在Play Framework中,我们可以应用全局CSRF检查 @SuppressWarnings({ “rawtypes”, “unchecked” }) @Override public Class[] filters() { Class[] filters = { CSRFFilter.class }; return filters; } 在大多数情况下都没问题。 但我想设置指向我们网站的Facebook Canvas页面。 事情是Facebook发送POST请求到我们的网站,它被CSRF检查阻止。 它总是返回“无效的CSRF令牌” 因此,我想在某些操作中有选择地禁用CSRF检查,例如www.ourwebsite.com/canvas 这可行吗?

Java 7u4 webstart安全性exception:类与信任级别不匹配

我们开始注意到,使用Java 7(特别是更新4),我们的所有用户都开始使用我们的Webstart应用程序看到这一点: [14:42:58,422] AWT-EventQueue-0(DEBUG) java.lang.SecurityException: class “CLASSNAME” does not match trust level of other classes in the same package [14:42:58,422] AWT-EventQueue-0(DEBUG) at com.sun.deploy.security.CPCallbackHandler$ChildElement.checkResource(Unknown Source) [14:42:58,422] AWT-EventQueue-0(DEBUG) at com.sun.deploy.security.DeployURLClassPath$JarLoader.checkResource(Unknown Source) [14:42:58,422] AWT-EventQueue-0(DEBUG) at com.sun.deploy.security.DeployURLClassPath$JarLoader.getResource(Unknown Source) [14:42:58,422] AWT-EventQueue-0(DEBUG) at com.sun.deploy.security.DeployURLClassPath.getResource(Unknown Source) [14:42:58,422] AWT-EventQueue-0(DEBUG) at java.net.URLClassLoader$1.run(Unknown Source) [14:42:58,422] AWT-EventQueue-0(DEBUG) at java.net.URLClassLoader$1.run(Unknown Source) [14:42:58,422] AWT-EventQueue-0(DEBUG) at java.security.AccessController.doPrivileged(Native Method) [14:42:58,422] […]

为什么IntelliJ想要接受传入的网络连接?

➠IntelliJ中的哪些function充当接受传入连接的服务器? 首次运行IntelliJ 2017.1.1时,我收到一个对话框,询问传入网络连接的权限。 您是否希望应用程序“java”接受传入的网络连接? 单击“拒绝”可能会限制应用程序的行为。 可以在“安全和隐私”首选项的“防火墙”面板中更改此设置。 [否认允许] 单击Maven选项卡时,在New Project向导中全新安装IntelliJ 2017.2 Ultimate Edition时出现的对话框示例。 为什么IntelliJ会导致此提示? 运行NetBeans时我没有遇到这样的事件。 拒绝或接受的影响究竟是什么? 我担心让Java进程接受外部网络连接,因为这样做会带来严重的安全风险。 可能与以下内容有关: 问题: 如何将IntelliJ IDEA随机开放端口仅绑定到localhost? 问题IDEA-175889:IDE在某些配置中打开通配符接口上的随机端口 这个问题不是关于消息的来源。 源是Apple macOS 应用级防火墙 。 您可以允许或阻止应用程序侦听传入的网络连接。 允许这是一个安全风险 。 IntelliJ要求添加到允许侦听传入消息的应用程序列表中。 我的问题是,“为什么IntelliJ需要接受传入的网络连接?”。 系统偏好设置>安全和隐私>防火墙”>