简而言之,如何根据应用程序名称或 JAR 名称限制对连接池 X 的访问?一个简单的用例可能会有所帮助...
一个商业网络应用程序(称为 WEB_APP_A)使用池 Y 来执行基本的查询 SQL。此网络应用程序的一些用户还可以访问数据库中的一些敏感数据。此代码由 JAR 文件(称为 HR_JAR)提供,可以在需要的地方放入该文件。此 JAR 使用池 X 进行所有连接。
我们不希望 WEB_APP_A 的开发人员使用池 X。我们只希望 HR_JAR 使用池 X。这是为了防止 WEB_APP_A 的开发人员意外或故意滥用 X 提供的访问池。
一些考虑:
- 这是遗留代码,所以 HR_JAR 将继续存在
- 我们在 Weblogic 9.2 上运行
- 我们不能在源代码中保存密码
- 我们已经研究了 JDBC 资源的 weblogic 用户级 authn/authz 但这引出了一个问题;我们如何保护我们用来成为每个应用程序/jar 用户的用户信用?
想法?想法?我可以详细说明我尝试过的方法,但我想要新的想法。