我正在使用spring安全@PreAuthorise来检查谁和谁不能访问我的服务层中的方法。它工作得很好。通常我的服务方式是用Spring安全@PreAuthorize(“hasAnyRole('....')”)
@PreAuthorize("hasAnyRole('MY_USER_ROLE')")
我的问题是我有一个由多个jar文件组成的war文件。这些jar文件中的每一个都负责一段业务逻辑。我现在想让一个jar文件中的某个服务访问另一个jar文件中的另一个服务。这由于权限而被拒绝。如果我注释掉权限,那么一切正常。
无论如何,我可以在拨打此服务前通过春季进行身份验证吗? (也许用一个虚拟用户?)或者关闭相同应用程序内的罐子的安全性?还是我的设计错了?
其他人都有这种问题?我应该用什么样的设计呢?
嗨!我认为你的潜在问题是一个设计问题。正如你所说的那样,被其他服务调用的服务似乎应该被分成两部分,一部分具有权限,另一部分具有特征或行为,后者被服务访问的_private_仅限层。它可能无法实现,因为你的jar分离,但我认为它会更整洁。 – coya