【发布时间】:2019-09-03 11:02:29
【问题描述】:
我正在尝试在 redshift 中创建多个用户(例如使用密码“xyz”创建用户“abc”)。同样,当用户创建 redshift 时,我将这些用户名和密码存储在本地 MySQL 数据库中,但密码以加密格式存储。我目前的做法是:
Map<String, String> uNamePassForDB = new HashMap<>();
Map<String, String> uNamePassForRedshift = new HashMap<>();
listOfUsers.stream().forEach(u -> {
String pass = //some random password generator;
String encryptedPassword = //encrpts the password (i.e. pass)
uNamePassForDB.put(u, encryptedPassword);
uNamePassForRedshift.put(u, pass);
}
uNamePassForRedshift.entrySet().stream().forEach(e -> {
// creating redshift connection and executing create user command
}
uNamePassForRedshift.entrySet().stream().forEach(e -> {
// storing the encrypted password in my local MySQL Database
}
目前,在 redshift 中成功创建所有用户后,我存储“用户名|密码”。在Redshift上成功创建后存储用户名|密码是否可行?这种方法对我有用。但是我该如何改进这种方法呢?如何简化这种方法?
【问题讨论】:
标签: java dictionary collections java-8 java-stream