Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
suliangchun
dbeaver
提交
76aa7564
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,发现更多精彩内容 >>
提交
76aa7564
编写于
1月 19, 2018
作者:
S
serge-rider
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
#1115 Check for cert encryption before password check
上级
86beec0f
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
31 addition
and
5 deletion
+31
-5
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/registry/DataSourceDescriptor.java
.../src/org/jkiss/dbeaver/registry/DataSourceDescriptor.java
+6
-4
plugins/org.jkiss.dbeaver.model/src/org/jkiss/dbeaver/model/impl/net/SSHTunnelImpl.java
...l/src/org/jkiss/dbeaver/model/impl/net/SSHTunnelImpl.java
+25
-1
未找到文件。
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/registry/DataSourceDescriptor.java
浏览文件 @
76aa7564
...
...
@@ -693,10 +693,12 @@ public class DataSourceDescriptor
try
{
if
(!
tunnelConfiguration
.
isSavePassword
())
{
DBWTunnel
.
AuthCredentials
rc
=
tunnel
.
getRequiredCredentials
(
tunnelConfiguration
);
if
(!
DataSourceHandler
.
askForPassword
(
this
,
tunnelConfiguration
,
rc
==
DBWTunnel
.
AuthCredentials
.
PASSWORD
))
{
DataSourceHandler
.
updateDataSourceObject
(
this
);
tunnel
=
null
;
return
false
;
if
(
rc
!=
DBWTunnel
.
AuthCredentials
.
NONE
)
{
if
(!
DataSourceHandler
.
askForPassword
(
this
,
tunnelConfiguration
,
rc
==
DBWTunnel
.
AuthCredentials
.
PASSWORD
))
{
DataSourceHandler
.
updateDataSourceObject
(
this
);
tunnel
=
null
;
return
false
;
}
}
}
...
...
plugins/org.jkiss.dbeaver.model/src/org/jkiss/dbeaver/model/impl/net/SSHTunnelImpl.java
浏览文件 @
76aa7564
...
...
@@ -34,6 +34,7 @@ import org.jkiss.utils.IOUtils;
import
java.io.File
;
import
java.io.IOException
;
import
java.lang.reflect.InvocationTargetException
;
import
java.util.List
;
import
java.util.Map
;
/**
...
...
@@ -227,7 +228,30 @@ public class SSHTunnelImpl implements DBWTunnel {
if
(
sshAuthType
!=
null
)
{
authType
=
SSHConstants
.
AuthType
.
valueOf
(
sshAuthType
);
}
return
authType
==
SSHConstants
.
AuthType
.
PUBLIC_KEY
?
AuthCredentials
.
PASSWORD
:
AuthCredentials
.
CREDENTIALS
;
if
(
authType
==
SSHConstants
.
AuthType
.
PUBLIC_KEY
)
{
// Check whether this key is encrypted
String
privKeyPath
=
configuration
.
getProperties
().
get
(
SSHConstants
.
PROP_KEY_PATH
);
if
(
privKeyPath
!=
null
)
{
// Determine whether public key is encrypted
try
{
JSch
testSch
=
new
JSch
();
testSch
.
addIdentity
(
privKeyPath
);
IdentityRepository
ir
=
testSch
.
getIdentityRepository
();
List
<
Identity
>
identities
=
ir
.
getIdentities
();
for
(
Identity
identity
:
identities
)
{
if
(
identity
.
isEncrypted
())
{
return
AuthCredentials
.
PASSWORD
;
}
}
}
catch
(
JSchException
e
)
{
// Something went wrong
log
.
debug
(
"Can't check private key encryption: "
+
e
.
getMessage
());
}
}
return
AuthCredentials
.
NONE
;
}
return
AuthCredentials
.
CREDENTIALS
;
}
@Override
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录