Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
suliangchun
dbeaver
提交
c8569dc0
D
dbeaver
项目概览
suliangchun
/
dbeaver
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
dbeaver
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
c8569dc0
编写于
11月 26, 2016
作者:
S
Serge Rider
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
#1005 Security preferences
上级
949656bd
变更
9
隐藏空白更改
内联
并排
Showing
9 changed file
with
161 addition
and
28 deletion
+161
-28
plugins/org.jkiss.dbeaver.core.application/plugin.properties
plugins/org.jkiss.dbeaver.core.application/plugin.properties
+1
-0
plugins/org.jkiss.dbeaver.core.application/plugin.xml
plugins/org.jkiss.dbeaver.core.application/plugin.xml
+1
-0
plugins/org.jkiss.dbeaver.core.eclipse/plugin.properties
plugins/org.jkiss.dbeaver.core.eclipse/plugin.properties
+1
-0
plugins/org.jkiss.dbeaver.core.eclipse/plugin.xml
plugins/org.jkiss.dbeaver.core.eclipse/plugin.xml
+1
-0
plugins/org.jkiss.dbeaver.core/plugin.xml
plugins/org.jkiss.dbeaver.core/plugin.xml
+0
-17
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/DBeaverPreferences.java
...beaver.core/src/org/jkiss/dbeaver/DBeaverPreferences.java
+2
-0
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/core/DBeaverPreferencesInitializer.java
...org/jkiss/dbeaver/core/DBeaverPreferencesInitializer.java
+3
-0
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/preferences/PrefPageDatabaseSecurity.java
...kiss/dbeaver/ui/preferences/PrefPageDatabaseSecurity.java
+152
-0
plugins/org.jkiss.dbeaver.ext.oracle/plugin.xml
plugins/org.jkiss.dbeaver.ext.oracle/plugin.xml
+0
-11
未找到文件。
plugins/org.jkiss.dbeaver.core.application/plugin.properties
浏览文件 @
c8569dc0
...
...
@@ -51,3 +51,4 @@ pref.page.name.resultset=Result Sets
pref.page.name.resultset.binaries
=
Binaries
pref.page.name.resultset.presentation
=
Presentation
pref.page.name.meta
=
Metadata
pref.page.name.security
=
Security
plugins/org.jkiss.dbeaver.core.application/plugin.xml
浏览文件 @
c8569dc0
...
...
@@ -222,6 +222,7 @@
</page>
<page
category=
"org.jkiss.dbeaver.preferences.main"
id=
"org.jkiss.dbeaver.preferences.connectionTypes"
class=
"org.jkiss.dbeaver.ui.preferences.PrefPageConnectionTypes"
name=
"%pref.page.name.connectionTypes"
/>
<page
category=
"org.jkiss.dbeaver.preferences.main"
id=
"org.jkiss.dbeaver.preferences.navigator"
class=
"org.jkiss.dbeaver.ui.preferences.PrefPageDatabaseNavigator"
name=
"%pref.page.name.navigator"
/>
<page
category=
"org.jkiss.dbeaver.preferences.main"
id=
"org.jkiss.dbeaver.preferences.security"
class=
"org.jkiss.dbeaver.ui.preferences.PrefPageDatabaseSecurity"
name=
"%pref.page.name.security"
/>
<page
category=
"org.eclipse.ui.preferencePages.Editors"
id=
"org.jkiss.dbeaver.preferences.main.sqleditor"
class=
"org.jkiss.dbeaver.ui.preferences.PrefPageSQLEditor"
name=
"%pref.page.name.sql.editor"
>
<keywordReference
id=
"org.jkiss.dbeaver.core.keyword.pref.editor.sql"
/>
...
...
plugins/org.jkiss.dbeaver.core.eclipse/plugin.properties
浏览文件 @
c8569dc0
...
...
@@ -42,3 +42,4 @@ pref.page.name.resultset=Result Sets
pref.page.name.resultset.binaries
=
Binaries
pref.page.name.resultset.presentation
=
Presentation
pref.page.name.meta
=
Metadata
pref.page.name.security
=
Security
plugins/org.jkiss.dbeaver.core.eclipse/plugin.xml
浏览文件 @
c8569dc0
...
...
@@ -63,6 +63,7 @@
</page>
<page
category=
"org.jkiss.dbeaver.preferences.main"
id=
"org.jkiss.dbeaver.preferences.connectionTypes"
class=
"org.jkiss.dbeaver.ui.preferences.PrefPageConnectionTypes"
name=
"%pref.page.name.connectionTypes"
/>
<page
category=
"org.jkiss.dbeaver.preferences.main"
id=
"org.jkiss.dbeaver.preferences.navigator"
class=
"org.jkiss.dbeaver.ui.preferences.PrefPageDatabaseNavigator"
name=
"%pref.page.name.navigator"
/>
<page
category=
"org.jkiss.dbeaver.preferences.main"
id=
"org.jkiss.dbeaver.preferences.security"
class=
"org.jkiss.dbeaver.ui.preferences.PrefPageDatabaseSecurity"
name=
"%pref.page.name.security"
/>
<page
category=
"org.jkiss.dbeaver.preferences.main"
id=
"org.jkiss.dbeaver.preferences.main.confirmations"
class=
"org.jkiss.dbeaver.ui.preferences.PrefPageConfirmations"
name=
"%pref.page.name.confirmations"
/>
<page
category=
"org.eclipse.ui.preferencePages.Editors"
id=
"org.jkiss.dbeaver.preferences.main.sqleditor"
class=
"org.jkiss.dbeaver.ui.preferences.PrefPageSQLEditor"
name=
"%pref.page.name.sql.editor"
>
...
...
plugins/org.jkiss.dbeaver.core/plugin.xml
浏览文件 @
c8569dc0
...
...
@@ -2101,15 +2101,6 @@
</extension>
<extension
point=
"org.eclipse.ui.propertyPages"
>
<page
id=
"org.jkiss.dbeaver.preferences.main.common"
class=
"org.jkiss.dbeaver.ui.preferences.PrefPageDatabaseGeneral"
name=
"Common Settings"
>
<enabledWhen>
<or>
<instanceof
value=
"org.jkiss.dbeaver.model.navigator.DBNDataSource"
/>
<instanceof
value=
"org.jkiss.dbeaver.ui.controls.resultset.ResultSetViewer"
/>
<adapt
type=
"org.jkiss.dbeaver.model.DBPDataSourceContainer"
/>
</or>
</enabledWhen>
</page>
<page
id=
"org.jkiss.dbeaver.preferences.main.resultset"
class=
"org.jkiss.dbeaver.ui.preferences.PrefPageResultSetMain"
name=
"Result Sets"
>
<enabledWhen>
<or>
...
...
@@ -2211,14 +2202,6 @@
<instanceof
value=
"org.jkiss.dbeaver.model.connection.DBPConnectionType"
/>
</enabledWhen>
</page>
<page
class=
"org.jkiss.dbeaver.ui.preferences.PrefPageDatabaseNavigator"
id=
"org.jkiss.dbeaver.preferences.navigator"
name=
"Navigator"
>
<enabledWhen>
<or>
<instanceof
value=
"org.jkiss.dbeaver.model.navigator.DBNDataSource"
/>
<adapt
type=
"org.jkiss.dbeaver.model.DBPDataSourceContainer"
/>
</or>
</enabledWhen>
</page>
<page
class=
"org.jkiss.dbeaver.ui.preferences.PrefPageProjectSettings"
id=
"org.jkiss.dbeaver.preferences.projectSettings"
name=
"DBeaver Settings"
>
<enabledWhen>
<adapt
type=
"org.eclipse.core.resources.IProject"
>
...
...
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/DBeaverPreferences.java
浏览文件 @
c8569dc0
...
...
@@ -36,6 +36,8 @@ public final class DBeaverPreferences
public
static
final
String
NAVIGATOR_EDITOR_FULL_NAME
=
"navigator.editor.full-name"
;
//$NON-NLS-1$
public
static
final
String
NAVIGATOR_CONNECTION_DOUBLE_CLICK
=
"navigator.connection.doubleClick"
;
//$NON-NLS-1$
public
static
final
String
SECURITY_USE_SECURE_PASSWORDS_STORAGE
=
"security.secure.password.storage"
;
//$NON-NLS-1$
public
static
final
String
KEEP_STATEMENT_OPEN
=
"keep.statement.open"
;
//$NON-NLS-1$
public
static
final
String
SCRIPT_COMMIT_TYPE
=
"script.commit.type"
;
//$NON-NLS-1$
...
...
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/core/DBeaverPreferencesInitializer.java
浏览文件 @
c8569dc0
...
...
@@ -73,6 +73,9 @@ public class DBeaverPreferencesInitializer extends AbstractPreferenceInitializer
PrefUtils
.
setDefaultPreferenceValue
(
store
,
DBeaverPreferences
.
NAVIGATOR_EDITOR_FULL_NAME
,
false
);
PrefUtils
.
setDefaultPreferenceValue
(
store
,
DBeaverPreferences
.
NAVIGATOR_CONNECTION_DOUBLE_CLICK
,
NavigatorViewBase
.
DoubleClickBehavior
.
SQL_EDITOR
.
name
());
// Security
PrefUtils
.
setDefaultPreferenceValue
(
store
,
DBeaverPreferences
.
SECURITY_USE_SECURE_PASSWORDS_STORAGE
,
false
);
// Common
PrefUtils
.
setDefaultPreferenceValue
(
store
,
DBeaverPreferences
.
KEEP_STATEMENT_OPEN
,
false
);
...
...
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/preferences/PrefPageDatabaseSecurity.java
0 → 100644
浏览文件 @
c8569dc0
/*
* DBeaver - Universal Database Manager
* Copyright (C) 2010-2016 Serge Rieder (serge@jkiss.org)
* Copyright (C) 2011-2012 Eugene Fradkin (eugene.fradkin@gmail.com)
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License (version 2)
* as published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
package
org.jkiss.dbeaver.ui.preferences
;
import
org.eclipse.core.runtime.IAdaptable
;
import
org.eclipse.swt.SWT
;
import
org.eclipse.swt.events.SelectionAdapter
;
import
org.eclipse.swt.events.SelectionEvent
;
import
org.eclipse.swt.layout.GridData
;
import
org.eclipse.swt.widgets.*
;
import
org.eclipse.ui.IWorkbench
;
import
org.eclipse.ui.IWorkbenchPreferencePage
;
import
org.eclipse.ui.IWorkbenchPropertyPage
;
import
org.eclipse.ui.dialogs.PreferenceLinkArea
;
import
org.eclipse.ui.preferences.IWorkbenchPreferenceContainer
;
import
org.jkiss.code.Nullable
;
import
org.jkiss.dbeaver.DBeaverPreferences
;
import
org.jkiss.dbeaver.core.DBeaverCore
;
import
org.jkiss.dbeaver.model.DBPPreferenceStore
;
import
org.jkiss.dbeaver.ui.UIUtils
;
import
org.jkiss.dbeaver.utils.PrefUtils
;
/**
* PrefPageDatabaseSecurity
*/
public
class
PrefPageDatabaseSecurity
extends
AbstractPrefPage
implements
IWorkbenchPreferencePage
,
IWorkbenchPropertyPage
{
public
static
final
String
PAGE_ID
=
"org.jkiss.dbeaver.preferences.security"
;
//$NON-NLS-1$
private
Button
useSecurePreferences
;
private
Button
useMasterPassword
;
private
Text
masterPasswordText
;
public
PrefPageDatabaseSecurity
()
{
super
();
setPreferenceStore
(
new
PreferenceStoreDelegate
(
DBeaverCore
.
getGlobalPreferenceStore
()));
}
@Override
public
void
init
(
IWorkbench
workbench
)
{
}
@Override
protected
Control
createContents
(
Composite
parent
)
{
Composite
composite
=
UIUtils
.
createPlaceholder
(
parent
,
1
,
5
);
{
Group
preferencesGroup
=
UIUtils
.
createControlGroup
(
composite
,
"Security"
,
1
,
SWT
.
NONE
,
0
);
useSecurePreferences
=
UIUtils
.
createCheckbox
(
preferencesGroup
,
"Use secure passwords storage"
,
false
);
new
Label
(
preferencesGroup
,
SWT
.
NONE
).
setText
(
"Using secure storage is more safe than just keeping encrypted passwords in datasources configuration.\n"
+
"But it prevents configuration sharing among team of developers.\n"
+
"Also it is not portable because passwords are stored in OS-specific storage."
);
// Link to secure storage config
PreferenceLinkArea
storageLinkArea
=
new
PreferenceLinkArea
(
preferencesGroup
,
SWT
.
NONE
,
"org.eclipse.equinox.security.ui.storage"
,
"See <a>''{0}''</a> for settings related to the encrypted storage system."
,
(
IWorkbenchPreferenceContainer
)
getContainer
(),
null
);
//$NON-NLS-1$
storageLinkArea
.
getControl
().
setLayoutData
(
new
GridData
(
GridData
.
FILL_HORIZONTAL
|
GridData
.
GRAB_HORIZONTAL
));
}
{
Group
masterPasswordGroup
=
UIUtils
.
createControlGroup
(
composite
,
"Master password"
,
2
,
SWT
.
NONE
,
0
);
useMasterPassword
=
UIUtils
.
createCheckbox
(
masterPasswordGroup
,
"Use master password"
,
false
);
GridData
gd
=
new
GridData
();
gd
.
horizontalSpan
=
2
;
useMasterPassword
.
setLayoutData
(
gd
);
masterPasswordText
=
UIUtils
.
createLabelText
(
masterPasswordGroup
,
"Master password"
,
""
,
SWT
.
BORDER
|
SWT
.
PASSWORD
);
final
Label
label
=
new
Label
(
masterPasswordGroup
,
SWT
.
NONE
);
label
.
setText
(
"Master password can be used to prevent usage of DBeaver by unauthorized users.\n"
+
"This password will be asked during DBeaver startup."
);
gd
=
new
GridData
();
gd
.
horizontalSpan
=
2
;
label
.
setLayoutData
(
gd
);
useMasterPassword
.
addSelectionListener
(
new
SelectionAdapter
()
{
@Override
public
void
widgetSelected
(
SelectionEvent
e
)
{
masterPasswordText
.
setEnabled
(
useMasterPassword
.
getSelection
());
}
});
}
performDefaults
();
return
composite
;
}
@Override
protected
void
performDefaults
()
{
DBPPreferenceStore
store
=
DBeaverCore
.
getGlobalPreferenceStore
();
useSecurePreferences
.
setSelection
(
store
.
getBoolean
(
DBeaverPreferences
.
SECURITY_USE_SECURE_PASSWORDS_STORAGE
));
}
@Override
public
boolean
performOk
()
{
DBPPreferenceStore
store
=
DBeaverCore
.
getGlobalPreferenceStore
();
store
.
setValue
(
DBeaverPreferences
.
SECURITY_USE_SECURE_PASSWORDS_STORAGE
,
useSecurePreferences
.
getSelection
());
PrefUtils
.
savePreferenceStore
(
store
);
return
true
;
}
@Override
public
void
applyData
(
Object
data
)
{
super
.
applyData
(
data
);
}
@Nullable
@Override
public
IAdaptable
getElement
()
{
return
null
;
}
@Override
public
void
setElement
(
IAdaptable
element
)
{
}
}
\ No newline at end of file
plugins/org.jkiss.dbeaver.ext.oracle/plugin.xml
浏览文件 @
c8569dc0
...
...
@@ -455,17 +455,6 @@
<initializer
class=
"org.jkiss.dbeaver.ext.oracle.OraclePreferencesInitializer"
/>
</extension>
<extension
point=
"org.eclipse.ui.propertyPages"
>
<page
category=
"org.jkiss.dbeaver.preferences.main.common"
id=
"org.jkiss.dbeaver.preferences.oracle.general"
class=
"org.jkiss.dbeaver.ext.oracle.views.PrefPageOracle"
name=
"Oracle"
>
<enabledWhen>
<or>
<instanceof
value=
"org.jkiss.dbeaver.model.navigator.DBNDataSource"
/>
<adapt
type=
"org.jkiss.dbeaver.model.DBPDataSourceContainer"
/>
</or>
</enabledWhen>
</page>
</extension>
<extension
point=
"org.eclipse.ui.preferencePages"
>
<page
category=
"org.jkiss.dbeaver.preferences.drivers"
id=
"org.jkiss.dbeaver.preferences.oracle.general"
class=
"org.jkiss.dbeaver.ext.oracle.views.PrefPageOracle"
name=
"Oracle"
>
</page>
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录