提交 904a0ff2 编写于 作者: S ShadelessFox

#9922 Don't save last used task credentials


Former-commit-id: ef4da6d4
上级 8dc54297
......@@ -63,6 +63,8 @@ abstract class MySQLWizardPageSettings<WIZARD extends AbstractNativeToolWizard>
authDialog.setUserName(wizard.getSettings().getToolUserName());
authDialog.setUserPassword(wizard.getSettings().getToolUserPassword());
authDialog.setSavePassword(true);
authDialog.setSavePasswordText(MySQLUIMessages.tools_db_export_wizard_page_settings_auth_save_password_checkbox);
authDialog.setSavePasswordToolTipText(MySQLUIMessages.tools_db_export_wizard_page_settings_auth_save_password_checkbox_tip);
if (authDialog.open() == IDialogConstants.OK_ID) {
wizard.getSettings().setToolUserName(authDialog.getUserName());
wizard.getSettings().setToolUserPassword(authDialog.getUserPassword());
......
......@@ -146,4 +146,6 @@ public class MySQLUIMessages extends NLS {
public static String tools_db_export_wizard_page_settings_security_checkbox_override_host_credentials;
public static String tools_db_export_wizard_page_settings_security_checkbox_override_host_credentials_tip;
public static String tools_db_export_wizard_page_settings_auth_title;
public static String tools_db_export_wizard_page_settings_auth_save_password_checkbox;
public static String tools_db_export_wizard_page_settings_auth_save_password_checkbox_tip;
}
......@@ -114,3 +114,5 @@ tools_db_export_wizard_page_settings_security_button_reset=Reset to default
tools_db_export_wizard_page_settings_security_checkbox_override_host_credentials=Override host credentials
tools_db_export_wizard_page_settings_security_checkbox_override_host_credentials_tip=If checked, host credentials (on this machine, if any) will be overridden with credentials set in connection configuration.
tools_db_export_wizard_page_settings_auth_title=Authentication
tools_db_export_wizard_page_settings_auth_save_password_checkbox=Save password for task
tools_db_export_wizard_page_settings_auth_save_password_checkbox_tip=When exported, the password will be saved to the task.
......@@ -104,9 +104,11 @@ tools_script_execute_wizard_page_settings_set_script_execution_settings=\u041D\u
tools_script_execute_wizard_page_settings_checkbox_disable_foreign_key_checks = \u041E\u0442\u043A\u043B\u044E\u0447\u0438\u0442\u044C \u043F\u0440\u043E\u0432\u0435\u0440\u043A\u0443 \u0432\u043D\u0435\u0448\u043D\u0438\u0439 \u043A\u043B\u044E\u0447\u0435\u0439
tools_script_execute_wizard_page_settings_checkbox_disable_foreign_key_checks_tooltip = \u041E\u0442\u043A\u043B\u044E\u0447\u0430\u0435\u0442 \u043F\u0440\u043E\u0432\u0435\u0440\u043A\u0443 \u0432\u043D\u0435\u0448\u043D\u0438\u0439 \u043A\u043B\u044E\u0447\u0435\u0439 \u043D\u0430 \u0432\u0440\u0435\u043C\u044F \u0432\u044B\u043F\u043E\u043B\u043D\u0435\u043D\u0438\u044F \u0438\u043C\u043F\u043E\u0440\u0442\u0430
tools_db_export_wizard_page_settings_security_group=\u0411\u0435\u0437\u043E\u043F\u0430\u0441\u043D\u043E\u0441\u0442\u044C
tools_db_export_wizard_page_settings_security_label_info=\u0423\u043A\u0430\u0437\u0430\u0442\u044C \u0434\u0440\u0443\u0433\u0438\u0435 \u0443\u0447\u0451\u0442\u043D\u044B\u0435 \u0434\u0430\u043D\u043D\u044B\u0435 \u0432\u043C\u0435\u0441\u0442\u043E \u0443\u0441\u0442\u0430\u043D\u043E\u0432\u043B\u0435\u043D\u043D\u044B\u0445 ({0}).\n\u0421\u0442\u043E\u0440\u043E\u043D\u043D\u0438\u0435 \u0438\u043D\u0441\u0442\u0440\u0443\u043C\u0435\u043D\u0442\u044B \u043F\u043E \u0442\u0438\u043F\u0443 ''mysqldump'' \u043C\u043E\u0433\u0443\u0442 \u0442\u0440\u0435\u0431\u043E\u0432\u0430\u0442\u044C \u0438\u043D\u043E\u0439 \u043D\u0430\u0431\u043E\u0440 \u043F\u0440\u0430\u0432.
tools_db_export_wizard_page_settings_security_label_info=\u0423\u043A\u0430\u0437\u0430\u0442\u044C \u0434\u0440\u0443\u0433\u0438\u0435 \u0443\u0447\u0451\u0442\u043D\u044B\u0435 \u0434\u0430\u043D\u043D\u044B\u0435 \u0432\u043C\u0435\u0441\u0442\u043E \u0443\u0441\u0442\u0430\u043D\u043E\u0432\u043B\u0435\u043D\u043D\u044B\u0445 ({0}).\n\u0421\u0442\u043E\u0440\u043E\u043D\u043D\u0438\u0435 \u0438\u043D\u0441\u0442\u0440\u0443\u043C\u0435\u043D\u0442\u044B \u0432\u0440\u043E\u0434\u0435 ''mysqldump'' \u043C\u043E\u0433\u0443\u0442 \u0442\u0440\u0435\u0431\u043E\u0432\u0430\u0442\u044C \u0438\u043D\u043E\u0439 \u043D\u0430\u0431\u043E\u0440 \u043F\u0440\u0430\u0432.
tools_db_export_wizard_page_settings_security_button_auth=\u0410\u0432\u0442\u043E\u0440\u0438\u0437\u043E\u0432\u0430\u0442\u044C\u0441\u044F
tools_db_export_wizard_page_settings_security_button_reset=\u0421\u0431\u0440\u043E\u0441\u0438\u0442\u044C \u043F\u043E \u0443\u043C\u043E\u043B\u0447\u0430\u043D\u0438\u044E
tools_db_export_wizard_page_settings_security_checkbox_override_host_credentials=\u041F\u0435\u0440\u0435\u043E\u043F\u0440\u0435\u0434\u0435\u043B\u0438\u0442\u044C \u0443\u0447\u0451\u0442\u043D\u044B\u0435 \u0434\u0430\u043D\u043D\u044B\u0435 \u0441\u0438\u0441\u0442\u0435\u043C\u044B
tools_db_export_wizard_page_settings_security_checkbox_override_host_credentials_tip=\u0415\u0441\u043B\u0438 \u043E\u0442\u043C\u0435\u0447\u0435\u043D\u043E, \u0442\u043E \u043B\u043E\u043A\u0430\u043B\u044C\u043D\u044B\u0435 \u0443\u0447\u0451\u0442\u043D\u044B\u0435 \u0434\u0430\u043D\u043D\u044B\u0435 \u0431\u0443\u0434\u0443\u0442 \u043F\u0435\u0440\u0435\u043E\u043F\u0440\u0435\u0434\u0435\u043B\u0435\u043D\u044B \u0443\u0447\u0451\u0442\u043D\u044B\u043C\u0438 \u0434\u0430\u043D\u043D\u044B\u043C\u0438 \u0438\u0437 \u043A\u043E\u043D\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u043F\u043E\u0434\u043A\u043B\u044E\u0447\u0435\u043D\u0438\u044F.
tools_db_export_wizard_page_settings_auth_title=\u0410\u0432\u0442\u043E\u0440\u0438\u0437\u0430\u0446\u0438\u044F
tools_db_export_wizard_page_settings_auth_save_password_checkbox=\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C \u043F\u0430\u0440\u043E\u043B\u044C \u0434\u043B\u044F \u0437\u0430\u0434\u0430\u0447\u0438
tools_db_export_wizard_page_settings_auth_save_password_checkbox_tip=\u041F\u0430\u0440\u043E\u043B\u044C \u043F\u0440\u0438 \u044D\u043A\u0441\u043F\u043E\u0440\u0442\u0435 \u0431\u0443\u0434\u0435\u0442 \u0441\u043E\u0445\u0440\u0430\u043D\u0435\u043D \u0434\u043B\u044F \u0434\u0430\u043D\u043D\u043E\u0439 \u0437\u0430\u0434\u0430\u0447\u0438.
......@@ -48,6 +48,8 @@ public class PostgreMessages extends NLS {
public static String wizard_backup_page_setting_group_security;
public static String wizard_backup_page_setting_group_security_label_info;
public static String wizard_backup_page_setting_group_security_btn_authentication;
public static String wizard_backup_page_setting_authentication_save_password;
public static String wizard_backup_page_setting_authentication_save_password_tip;
public static String wizard_backup_page_setting_group_security_btn_reset_default;
/* wizard restore*/
......
......@@ -30,6 +30,8 @@ wizard_backup_page_setting_group_security = Security
wizard_backup_page_setting_group_security_label_info = Override user credentials ("{0}") for objects "{1}".\nExternal tools like 'psql and pg_dump' may require different set of permissions.
wizard_backup_page_setting_group_security_btn_authentication = Authentication
wizard_backup_page_setting_group_security_btn_reset_default = Reset to default
wizard_backup_page_setting_authentication_save_password = Save password for task
wizard_backup_page_setting_authentication_save_password_tip = When exported, the password will be saved to the task.
# wizard restore #
wizard_restore_title=Restore
......
......@@ -93,7 +93,9 @@ wizard_backup_page_setting_group_output = \u0412\u044B\u0432\u043E\u0434
wizard_backup_page_setting_group_security = \u0411\u0435\u0437\u043E\u043F\u0430\u0441\u043D\u043E\u0441\u0442\u044C
wizard_backup_page_setting_group_security_btn_authentication = \u0410\u0443\u0442\u0435\u043D\u0442\u0438\u0444\u0438\u043A\u0430\u0446\u0438\u044F
wizard_backup_page_setting_group_security_btn_reset_default = \u0412\u0435\u0440\u043D\u0443\u0442\u044C \u043A \u0441\u0442\u0430\u043D\u0434\u0430\u0440\u0442\u043D\u043E\u043C\u0443
wizard_backup_page_setting_group_security_label_info = \u041F\u0435\u0440\u0435\u0437\u0430\u043F\u0438\u0441\u0430\u0442\u044C \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0432\u0442\u0435\u043B\u044C\u0441\u043A\u0438\u0435 \u0434\u0430\u043D\u043D\u044B\u0435 ("{0}") \u0434\u043B\u044F \u043E\u0431\u044A\u0435\u043A\u0442\u0430 "{1}".\r\n\u0412\u043D\u0435\u0448\u043D\u044F\u044F \u043F\u0440\u043E\u0433\u0440\u0430\u043C\u043C\u0430 \u0432\u0440\u043E\u0434\u0435 'psql' \u0438\u043B\u0438 'pg_dump' \u043C\u043E\u0436\u0435\u0442 \u0442\u0440\u0435\u0431\u043E\u0432\u0430\u0442\u044C \u0434\u0440\u0443\u0433\u043E\u0439 \u0440\u0430\u0441\u0441\u0442\u0430\u043D\u043E\u0432\u043A\u0438 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043D\u0438\u0439.
wizard_backup_page_setting_authentication_save_password = \u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C \u043F\u0430\u0440\u043E\u043B\u044C \u0434\u043B\u044F \u0437\u0430\u0434\u0430\u0447\u0438
wizard_backup_page_setting_authentication_save_password_tip = \u041F\u0430\u0440\u043E\u043B\u044C \u043F\u0440\u0438 \u044D\u043A\u0441\u043F\u043E\u0440\u0442\u0435 \u0431\u0443\u0434\u0435\u0442 \u0441\u043E\u0445\u0440\u0430\u043D\u0435\u043D \u0434\u043B\u044F \u0434\u0430\u043D\u043D\u043E\u0439 \u0437\u0430\u0434\u0430\u0447\u0438.
wizard_backup_page_setting_group_security_label_info = \u041F\u0435\u0440\u0435\u0437\u0430\u043F\u0438\u0441\u0430\u0442\u044C \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C\u0441\u043A\u0438\u0435 \u0434\u0430\u043D\u043D\u044B\u0435 ("{0}") \u0434\u043B\u044F \u043E\u0431\u044A\u0435\u043A\u0442\u0430 "{1}".\r\n\u0412\u043D\u0435\u0448\u043D\u044F\u044F \u043F\u0440\u043E\u0433\u0440\u0430\u043C\u043C\u0430 \u0432\u0440\u043E\u0434\u0435 'psql' \u0438\u043B\u0438 'pg_dump' \u043C\u043E\u0436\u0435\u0442 \u0442\u0440\u0435\u0431\u043E\u0432\u0430\u0442\u044C \u0434\u0440\u0443\u0433\u043E\u0439 \u0440\u0430\u0441\u0441\u0442\u0430\u043D\u043E\u0432\u043A\u0438 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043D\u0438\u0439.
wizard_backup_page_setting_group_setting = \u041D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0438
wizard_backup_page_setting_label_compression = \u0421\u0436\u0430\u0442\u0438\u0435
wizard_backup_page_setting_label_encoding = \u041A\u043E\u0434\u0438\u0440\u043E\u0432\u043A\u0430
......
......@@ -84,6 +84,8 @@ public abstract class PostgreToolWizardPageSettings<WIZARD extends AbstractNativ
authDialog.setUserName(wizard.getSettings().getToolUserName());
authDialog.setUserPassword(wizard.getSettings().getToolUserPassword());
authDialog.setSavePassword(savePassword);
authDialog.setSavePasswordText(PostgreMessages.wizard_backup_page_setting_authentication_save_password);
authDialog.setSavePasswordToolTipText(PostgreMessages.wizard_backup_page_setting_authentication_save_password_tip);
if (authDialog.open() == IDialogConstants.OK_ID) {
wizard.getSettings().setToolUserName(authDialog.getUserName());
wizard.getSettings().setToolUserPassword(authDialog.getUserPassword());
......
......@@ -37,6 +37,7 @@ import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Map;
public abstract class AbstractNativeToolSettings<BASE_OBJECT extends DBSObject> implements DBTTaskSettings<BASE_OBJECT> {
......@@ -196,17 +197,19 @@ public abstract class AbstractNativeToolSettings<BASE_OBJECT extends DBSObject>
extraCommandArgs = preferenceStore.getString(PROP_NAME_EXTRA_ARGS);
clientHomeName = preferenceStore.getString("clientHomeName");
toolUserName = preferenceStore.getString("tool.user");
toolUserPassword = preferenceStore.getString("tool.password");
try {
final SecuredPasswordEncrypter encrypter = new SecuredPasswordEncrypter();
if (!CommonUtils.isEmpty(toolUserName)) toolUserName = encrypter.decrypt(toolUserName);
if (!CommonUtils.isEmpty(toolUserPassword)) toolUserPassword = encrypter.decrypt(toolUserPassword);
} catch (Exception e) {
throw new DBException("Error decrypting user credentials", e);
}
if (preferenceStore instanceof DBPPreferenceMap) {
toolUserName = preferenceStore.getString("tool.user");
toolUserPassword = preferenceStore.getString("tool.password");
try {
final SecuredPasswordEncrypter encrypter = new SecuredPasswordEncrypter();
if (!CommonUtils.isEmpty(toolUserName)) toolUserName = encrypter.decrypt(toolUserName);
if (!CommonUtils.isEmpty(toolUserPassword)) toolUserPassword = encrypter.decrypt(toolUserPassword);
} catch (Exception e) {
throw new DBException("Error decrypting user credentials", e);
}
}
}
public void saveSettings(DBRRunnableContext runnableContext, DBPPreferenceStore preferenceStore) {
......@@ -217,35 +220,36 @@ public abstract class AbstractNativeToolSettings<BASE_OBJECT extends DBSObject>
if (preferenceStore instanceof DBPPreferenceMap) {
// Save input objects to task properties
Map<String, Object> propertyMap = ((DBPPreferenceMap) preferenceStore).getPropertyMap();
List<String> objectList = new ArrayList<>();
for (BASE_OBJECT object : databaseObjects) {
objectList.add(DBUtils.getObjectFullId(object));
}
propertyMap.put("databaseObjects", objectList);
try {
final SecuredPasswordEncrypter encrypter = new SecuredPasswordEncrypter();
((DBPPreferenceMap) preferenceStore).getPropertyMap().put("databaseObjects", objectList);
if (!CommonUtils.isEmpty(toolUserName)) {
propertyMap.put("tool.user", encrypter.encrypt(toolUserName));
} else {
propertyMap.put("tool.user", "");
}
if (!CommonUtils.isEmpty(toolUserPassword)) {
propertyMap.put("tool.password", encrypter.encrypt(toolUserPassword));
} else {
propertyMap.put("tool.password", "");
}
} catch (Exception e) {
log.debug(e);
}
}
preferenceStore.setValue(PROP_NAME_EXTRA_ARGS, extraCommandArgs);
if (clientHomeName != null) {
preferenceStore.setValue("clientHomeName", clientHomeName);
}
try {
final SecuredPasswordEncrypter encrypter = new SecuredPasswordEncrypter();
if (!CommonUtils.isEmpty(toolUserName)) {
preferenceStore.setValue("tool.user", encrypter.encrypt(toolUserName));
} else {
preferenceStore.setToDefault("tool.user");
}
if (!CommonUtils.isEmpty(toolUserPassword)) {
preferenceStore.setValue("tool.password", encrypter.encrypt(toolUserPassword));
} else {
preferenceStore.setToDefault("tool.password");
}
} catch (Exception e) {
log.debug(e);
}
}
}
......@@ -37,6 +37,8 @@ public class BaseAuthDialog extends BaseDialog
private boolean passwordOnly;
private boolean showSavePassword;
private DBPAuthInfo authInfo = new DBPAuthInfo();
private String savePasswordText;
private String savePasswordToolTipText;
private Text usernameText;
private Text passwordText;
......@@ -83,6 +85,22 @@ public class BaseAuthDialog extends BaseDialog
this.authInfo.setSavePassword(savePassword);
}
public String getSavePasswordText() {
return savePasswordText;
}
public void setSavePasswordText(String text) {
this.savePasswordText = text;
}
public String getSavePasswordToolTipText() {
return savePasswordToolTipText;
}
public void setSavePasswordToolTipText(String text) {
this.savePasswordToolTipText = text;
}
@Override
protected Composite createDialogArea(Composite parent)
{
......@@ -135,7 +153,8 @@ public class BaseAuthDialog extends BaseDialog
{
savePasswordCheck = new Button(addrGroup, SWT.CHECK);
savePasswordCheck.setEnabled(showSavePassword);
savePasswordCheck.setText(UIConnectionMessages.dialog_connection_auth_checkbox_save_password);
savePasswordCheck.setText(CommonUtils.toString(savePasswordText, UIConnectionMessages.dialog_connection_auth_checkbox_save_password));
savePasswordCheck.setToolTipText(savePasswordToolTipText);
gd = new GridData(GridData.HORIZONTAL_ALIGN_BEGINNING);
savePasswordCheck.setLayoutData(gd);
savePasswordCheck.setSelection(authInfo.isSavePassword());
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册