我已经用 Java 编写了应用程序,这些应用程序通过获取环境变量中设置的数据库的用户名和密码来连接到数据库。因此,数据库用户名和密码以明文形式存储在服务器上的文件中。
这是创建连接字符串的代码:
if (dataBase.equals("oracle"))
{
url = "jdbc:oracle:thin:@";
url = url + getParameter("Database IP", "setup.ini"); // ip
url = url + ":" + getParameter("Database Port", "setup.ini"); //port
String envVarValue = System.getenv("DBNAME");
// Environment variable has value DBNAME =
String a[] = envVarValue.split("@");
url = url + ":" + getParameter("SID", "setup.ini");
String b[] = a[0].split("/");
userName = b[0]; //User name
password = b[1]; //Password
}
现在我希望我的应用程序能够由 Unix 用户连接到数据库,该用户将在服务器上运行此应用程序,而无需在代码中获取数据库用户的密码。
请告诉我这是否可行,如果可以,怎么办?